好长时间没更新了,再不更新粉丝都掉了,其次没有好的题材,不知道更新什么了,今天这篇文章 技术不高,主要是手法的跳跃。
事情的起因如下
去客户现场渗透,有些网络不通,做了限制,管控严格,不能开网络接入自己的电脑,于是就给了堡垒机,堡垒机默认安装了windows server机器,当作渗透测试机器。
进去看了一下,崭新的环境,什么都没有,浏览器还是IE的,复制粘贴不能用,也没翻到上传的地方,心想就随便测测吧,好在测试的网站不多,就两个。
ie浏览器默认不开启javascript,当访问第一个网站时,说没有启用动态脚本,打开一片空白。百度搜索开启了设置,刷新显示登录页面了。
f12 查看源代码,没发现几个js文件,只能挨个看有没有api相关地址,通过层层包含,翻到了一些xxx.jsp文件,有些事get,有些是post,get访问跳转到登录页面,因为没有burp,post就比较难构造了,ie浏览器也不能对数据包进行拦截。
于是想到了.url文件,打开就会跳转到某个链接,那么能否写一个url文件,指定post请求,然后携带请求参数。
于是手机搜索文件格式
[InternetShortcut]
URL=https://www.xxxxx.com
Method=POST
Params=id=&xxx&zzz
双击点击后,接口是空白的,右键查看后,发现是get方法。
由此可见,此方法行不通。
于是在想,vbs好像可以。
Dim objXMLHTTP
Set objXMLHTTP = CreateObject("MSXML2.ServerXMLHTTP")
' 设置请求的 URL
strURL = ""
' 准备要发送的数据
strData = ""
' 发送 POST 请求
objXMLHTTP.Open "POST", strURL, False
objXMLHTTP.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
objXMLHTTP.Send strData
' 获取响应结果
strResponse = objXMLHTTP.responseText
' 输出响应结果
WScript.Echo strResponse
于是成功了
其实powershell也可以
$Url = "https://www.example.com"
$Params = @{
"param1" = "value1"
"param2" = "value2"
"param3" = "value3"
}
$Response = Invoke-WebRequest -Uri $Url -Method POST -Body ($Params | ConvertTo-Json) -ContentType "application/json"
Write-Output $Response.Content
相比之下,powershell更简单。
然后给了测试账号,利用密码对用户名进行测试,发现其他用户名都用的同一个弱口令,除了admin用户登录失败。
后台新增处,存在xss漏洞。
第一个站结束,第二个站是h5页面,直接访问显示绿色的大背景,IE没有手机模式,所以看不到登录口。
老样子,f12,翻js文件,看到了config.js
拼接路径,未授权到手
然后接着查看js内容,发现一个下载接口
http://xxxxxxxxxxxxxxxxx/xxxxxx/Downloadxxxxx?filePath=
小试一下 ../../../../../../../../../etc/passwd 500错误了
删除../ 从根开始,发现弹出了下载窗口,任意文件读取到手
收工,结束。
原文始发于微信公众号(轩公子谈技术):纯手工渗透-看我如何挖掘数据泄露
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论