之前我们都了解了,访问网页时,客户端与服务端之间的请求与响应数据交互。本篇就浅谈它的应用。

利用HTTP拦截突破前段验证

比方说,我们在某个网页提交某些数据(例如留言、上传、插入xss等),发生错误(例如提示不支持该文件、您提交的内容非法)

如果提交之后,在原网页发生以上错误,而不是网页跳转之后发出提示。那么很可能网站验证方式是前端验证。

什么是前端验证?

就是在客户端发送请求,服务器响应后向客户端传输网页(html)和验证脚本(JavaScript),我们提交内容时候都要经过网站js的验证。

(简单介绍)

而这里的这个js验证就是属于前端验证,也就是客户端验证,它只在客户端作用。

如何突破验证

这里就要用到工具了

推荐工具:burp、fiddler

这些工具有什么用呢,在这里他们的作用就是能拦截和修改http请求,也就是所谓的抓包

工具拦截突破过程原理:

1,开启http拦截

2,在网页内提交js判断规则内允许提交的内容

3,此时提交的请求已经被工具拦截了,网页属于堵塞状态,而且我们提交的内容已经被js判断为允许了。

4,在工具内修改拦截的内容(请求内容)

5,发送数据包(接触拦截.正常流通)

如何绕过验证

同理,在接受响应时拦截包。并删除js验证用的代码

软件的使用

软件有很多个,小编推荐burp suite是一款很强大的渗透工具。但是由于burp的安装要在JAVA环境,且工具界面内容为英语。而fiddler有汉化版,EXE文件现下现用。小编觉得如果是体验本章的逻辑和应用的话,还是fiddler是个很不错的选择。至于软件的使用,由于时间和本人较懒和条件有限的问题,请参考:http://m.cr173.com/w/15341

其实教程网上很多的,甚至不需要看教程,Fd摸一下就明白了

如果真的需要或者不懂的,可以在下方评论,小编会抽空录个视频。QQ2780217151

PS

说了那么多,我觉得还是不够,别以为你们看懂了就是看懂了。这东西要多接触,多动手,多实践。介于本篇是说明原理,有些读者可能没有练手的地方。小编决定,在短期内收集和编写一些早期的网站程序源码(漏洞多的源码),给大家动手实验。

【渗透课程】第三篇-体验http协议的应用的更多相关文章

  1. 【渗透课程】第二篇下-HTTP协议的请求与响应深度剖析

    [渗透课程]第二篇下-HTTP协议的请求与响应深度剖析 HTTP1.1目前支持以下7种请求方法: 常见的MIME类型如下: 第一个数字有五种可能的取值: 目录 什么是请求方法?什么是请求头? HTTP ...

  2. 老猿学5G扫盲贴:推荐三篇介绍HTTP2协议相关的文章

    专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt入门学习 老猿Python博文目录 老猿学5G博文目录 5G中的服务化接口调用都是基于HTTP2协议的,老 ...

  3. 【渗透课程】特别篇-主流网站程序Oday大全以及拿shell思路

    版权和内容说明: 这篇文章不是本站编写,是从网络上摘抄的,但是经过了本站的改写优化,并将内容,格式规范化. 本篇说明:这篇文章结合了前辈们前几年一路挖掘出来的主流程序漏洞以及思路, 小编写在前面是想让 ...

  4. 【渗透课程】第二篇上-http请求协议的简单描述

    HTTP协议剖析 什么是HTTP协议?如何发起请求?我认为这样讲大家能够理解: 浏览器访问网站也是http请求的一个过程.当你打开浏览器,访问一个URL (协议://服务器IP:端口/路径/文件)的时 ...

  5. 【渗透课程】第一篇-Web渗透需要接触的语言

    ---恢复内容开始--- 上一篇我们讲过了,Web渗透的基本原理,在原理中我们也提到了Web应用程序(脚本语言),本章就谈到了Web渗透要涉及的语言. 涉及语言: 1.html:是前段语言的其中一个, ...

  6. 网络编程[第三篇]基于tcp协议实现远程连接

    需要用到subprogress模块来远程控制cmd控制台程序来得到控制台的输出信息 一.服务端 —— 控制输出信息 import socket import subprocess #socket实例化 ...

  7. ASP.NET自定义控件组件开发 第一章 第三篇

    原文:ASP.NET自定义控件组件开发 第一章 第三篇 第三篇:第一章的完结篇 系列文章链接: ASP.NET自定义控件组件开发 第一章 待续 ASP.NET自定义控件组件开发 第一章 第二篇 接着待 ...

  8. Powershell渗透测试系列–进阶篇

    原文来自:https://bbs.ichunqiu.com/thread-41561-1-1.html i春秋作家:anyedt 0×00 引言 经过基础篇的学习我们已经对powershell有了一个 ...

  9. EnjoyingSoft之Mule ESB开发教程第三篇:Mule message structure - Mule message结构

    目录 1. 探索Mule Message结构 2. Mule Message的Payload 3. Mule Message的Property 4. Mule Message的Attachment 5 ...

随机推荐

  1. linux常用的监控命令

    转自:http://www.cnblogs.com/huangxm/p/6278615.html 1.  top 显示所有正在运行而且处于活动状态的实时进程, 而且会定期更新显示结果:它显示了CPU使 ...

  2. Python+Selenium+webdriver环境搭建(windows)以及相关资源下载链接

    今天记录一下测试小菜鸟alter在测试入门的一点关于python+Selenium+webdriver环境搭建的经历以及资源分享.欢迎交流学习,批评指正. 一.Python的下载与安装 1.pytho ...

  3. C#设计模式(0)-认识设计模式

    简介 世界上本没有路,走的人多了也就成了路:世界上本来没有设计模式.用的人多了,也就成了设计模式.所以,我们不是严格按照它的定义去执行,可以根据自己的实际场景.需求去变通.领悟了其中的思想,实现属于自 ...

  4. Python网络数据采集3-数据存到CSV以及MySql

    Python网络数据采集3-数据存到CSV以及MySql 先热热身,下载某个页面的所有图片. import requests from bs4 import BeautifulSoup headers ...

  5. [补档]暑假集训D6总结

    考试 不是爆零,胜似爆零= = 三道题,就拿了20分,根本没法玩好吧= = 本来以为打了道正解,打了道暴力,加上个特判分,应该不会死的太惨,然而--为啥我只有特判分啊- - 真的是惨. 讲完题觉得题是 ...

  6. 34. leetcode 447. Number of Boomerangs

    Given n points in the plane that are all pairwise distinct, a "boomerang" is a tuple of po ...

  7. Dubbo负载均衡策略

    在集群负载均衡时,Dubbo提供了多种均衡策略,缺省为random随机调用. 可以自行扩展负载均衡策略,参见:负载均衡扩展Random LoadBalance 随机,按权重设置随机概率. 在一个截面上 ...

  8. python--DenyHttp项目(1)--调用cmd控制台命令os.system()

    os.system() 参数传递cmd命令,命令执行成功返回0,失败返回1 在网上查看使用ping命令,能否Ping通 大神们有 用正则的,有用Popen() os.system()直接用返回值,简单 ...

  9. Activity中finish()和onDestroy()的区别

    finish()方法用于结束一个Activity的生命周期,而onDestory()方法则是Activity的一个生命周期方法,其作用是在一个Activity对象被销毁之前,Android系统会调用该 ...

  10. java运算符优先级与流程控制

    1. Java 的方法Method (函数 Function), 功能, 动作 1) 方法就是函数: y=f(x)=3x+6; 2) 方法的语法   (修饰词)(返回值类型)(方法名)(参数列表){  ...