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

利用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. 【渗透课程】特别篇-主流网站程序Oday大全以及拿shell思路

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

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

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

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

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

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

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

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

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

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

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

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

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

  9. ASP.NET自定义控件组件开发 第一章 第三篇 第一章的完结篇

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

随机推荐

  1. 关于SAX

    某天,看到一些资料. 发现输入文件是一个使用SAX技术存储的文件格式.  于是在网上找了不少资料 ; 感慨计算机的世界真的是太有趣了. 在此做个简单的介绍. 时间序列数据挖掘是利用数据挖掘技术对一组与 ...

  2. linux之flock函数锁文件

    头文件  #include<sys/file.h> 定义函数  int flock(int fd,int operation); 函数说明  flock()会依参数operation所指定 ...

  3. ASCII,GB2312,GBK,Unicode,Utf-8

    1.ASCII:American Stardand Code for Information Interchange,是当时美国制定出来的一套编码系统,使用7位或8位二进制来表示西文字符,0-31以及 ...

  4. java之集合框架使用细节及常用方法

    集合类的由来:   对象用于封装特有数据,对象多了需要存储,如果对象的个数不确定.  就使用集合容器进行存储. 集合特点: 1,用于存储对象的容器. 2,集合的长度是可变的. 3,集合中不可以存储基本 ...

  5. sqlserver存储过程及mybatis调用——待续

    创建带输入参数存储过程 use yanantestgoif exists (select * from sys.objects where name='yanan')drop procedure ya ...

  6. python消息队列Queue

    实例1:消息队列Queue,不要将文件命名为"queue.py",否则会报异常"ImportError: cannot import name 'Queue'" ...

  7. [Functional Programming + React] Provide a reasonable default value for mapStateToProps in case initial state is undefined

    For example we have a component, it needs to call 'react-redux' connect function. import { compose, ...

  8. ORA 00972 错误处理

    Oracle 11G SQL 写好的脚本执行后报错:ORA 00972 标识符过长 可能的原因一: select 语句中的字段别名太长,中文字符别名最长为10个汉字,简化别名名称,问题得到解决. 可能 ...

  9. 查看Windows端口及端口关闭方法(转)

    摘自:http://www.hackbase.com/tech/2011-05-17/63766.html 查看Windows端口及端口关闭方法 一.查看已开放的端口: 1.借助系统自带MS-DOS命 ...

  10. jQuery UI 实例 – 切换(Toggle)

    toggle()函数用于为每个匹配元素的click事件绑定轮流的处理函数. toggle()是一个特殊的事件函数,用于为匹配元素的click事件绑定多个事件处理函数.每次触发click事件时,togg ...