• Kali Linux Web渗透测试手册(第二版)


    翻译来自掣雷小组

    成员信息:

    thr0cyte,Gr33k,花花,MrTools,R1ght0us,7089bAt

    这个公众号,一定要关注哦,慢慢会跟上面老哥们一起分享很多干货哦~~

    记红色的部分为今日更新内容。

    第三章、使用代理、爬行器和爬虫

    3.0、介绍

    3.1、使用DirBuster寻找敏感文件和目录

    3.2、使用ZAP寻找敏感文件和目录

    3.3、使用Burp Suite查看和修改请求

    3.4、使用Burp套件的Intruder模块来查找文件和文件夹

    3.5、使用ZAP代理查看和修改请求

    3.6、使用ZAP爬虫

    3.7、使用Burp套件爬虫一个网站

    3.8、使用Burp套件的中继器重复请求

    3.9、使用WebScarab

    3.10、从爬行结果中识别相关文件和目录


    前言:

    这节和下节,都是关于Burp Suite的,非常强大的一个工具,我贴个连接,一个我感觉还比较全的Burp Suite使用手册,大家自行下载吧。

    https://legacy.gitbook.com/book/t0data/burpsuite/details

    3.3、使用Burp Suite查看和修改请求

    Burp Suite套件不仅是一个简单的web代理,它还是一个功能齐全的web应用程序测试工具包。它有proxy(代理),request repeater(请求中继其),fuzzer(模糊测试),request automation(自动化请求),string encoderand decoder(字符串编解码),vulnerability scanners(漏洞扫描,在专业版).plugins to etend its functionality(插件扩展),和其他非常有用的功能。 

    在这个小节中,我们将使用Burp Suite的代理功能来拦截浏览器的请求,并修改其内容。

    环境准备

    从应用程序菜单中启动Burp Suite,应用程序 | 03 – Web Application Analy | Burp Suite,或者在终端输入命令burp来启动。启动后还要设置浏览器走8080的代理端口。

     

    实战演练

    现在让我们使用这种拦截/修改技术来绕过基本的保护机制。执行以下步骤:

    1.  浏览OWASP板块,并练习 Upload 2
    (http://192.168.56.11/owaspbricks/upload-2).

    2.  请求拦截功能在Burp Suite中默认启用,如果没有拦截,转到Burp Suite | proxy | Intercept on ,点击下按钮,拦截打开:

    3.  这里我们有一个文件上传表单,应该只能上传图片。我们来试着上传一个。点击浏览并选择任何图像文件(PNG,JPG,或BMP):

    4.  点击Open后,再点Upload,验证文件上传:

    5.  现在我们看看如果我们上传不同类型的文件会发生什么,比如说,一个HTML文件:

    6.  看起来,正如练习描述中提到的,服务器会验证上传的文件类型。为了绕过这个限制,我们在BurpSuite中启用请求拦截。

    7.  使用浏览器对HTML文件再一次提交。

    8.  Burp将捕获到这个请求:

    在这里,我们可以看到一个POST请求。每个部分的分隔符是一长串破折号(-)和一个长数字。在第一部分中,我们看到了要上载的文件信息和内容类型。

    9.  因为服务器只接收图像,我们可以改变content-type,欺骗服务器这是一个图片:

    10. 接下来,如果要继续拦截请求,可以单击Foeward提交请求,如果不这样做,可以禁用拦截。

    11. 可以发现上传成功了。如果我们滚动鼠标指针到“here”这里,会看到一个文件链接:

    原理剖析

    在这个小节中,我们使用BurpSuite作为代理捕捉请求来改变Content-Type报头,从而绕过了客户端应用程序的验证机制。 

    Content-Type是客户机(尤其是POST和PUT请求中)设置的标准HTTP头文件,用于向服务器指示它接收的数据类型。很多时候,开发者通过判断content-type过滤危险文件。正如我们刚才看到的,在防止用户向服务器上传恶意文件方面,这种保护措施是远远不够的。

    拦截和修改请求包是web应用渗透测试的一个非常重要的方面,它不仅可以绕过一些客户端验证(就像我们在本示例中所作的那样),还可以研究发送了哪些信息,并且尝试理解应用程序的内部工作方式。为了便于理解,我们还可能需要添加、删除或替换一些值。

    另请参阅

    对于渗透测试人员来说,理解HTTP协议的工作方式非常重要。如果想更好的理解HTTP协议,请参阅:

      • https://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol

      • https://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html

  • 相关阅读:
    shell编程基础进阶
    Ansible自动化配置详解
    sersync实时同步实战
    NFS网络文件系统详解
    CentOS7下rsync服务的基本详解和使用
    CentOS7版本基础使用
    网络基础-交换机、路由器、OSI7层模型
    linux-sed命令
    Cause: java. lang.InstantiationException: tk.mybatis.mapper.provider.base.BaseInsertProvider
    Spring Boot MyBatis注解:@MapperScan和@Mapper
  • 原文地址:https://www.cnblogs.com/7089fy/p/10061490.html
Copyright © 2020-2023  润新知