Http协议基础

Web技术发展【http://www.cnblogs.com/ProgrammerGE/articles/1824657.html

静态WEB【网页】

动态WEB

  • 属于一种应用程序
  • 基于数据库
  • 每个人看到的内容不同
  • 根据用户输入,返回不同结果

WEB攻击类型有数百种

WEB攻击面

1、Network

2、OS

3、WEB Server

4、APP Server

5、Web Application

6、Database

7、Browser

HTTP协议基础【http://www.cnblogs.com/ksxs/articles/772140.html

明文协议,无机密安全机制

无内建的机密性安全机制

嗅探或代理截断可查看全部明文信息

https只能提高传输层安全【依然可以做中间人攻击】

中间人攻击(伪造证书)【http://www.cnblogs.com/LittleHann/p/3735602.html

无状态

每一次客户端和服务器段的通信都是独立的过程

WEB应用需要跟踪客户端会话(多步通信)

不适用cookie的应用,客户端每次请求都要重新身份验证【http://www.cnblogs.com/fish-li/archive/2011/07/03/2096903.html

##cookie等同与session ID

Session用于在用户身份验证后跟踪用户行为轨迹【session会定时失效】

·提高用户体验,但增加了攻击向量

Cycle

请求/响应:

重要的header

Set-Cookie:服务器发给客户端的SessionID (存在被窃取的风险,可冒充别人身份)

Content-Length:响应body部分的字节长度【用于模糊测试】

Location:重定向用户到另一个页面,可识别身份认证后允许访问的页面

Cookie:客户端发回给服务器证明用户状态的信息(头:值成对出现)

Referrer:发起新请求之前用户位于哪个页面,服务器基于此头的安全限制很容易被修改绕过

Host:基于host头进行安全限制很容易被修改绕过

状态码

服务器端响应的状态码白鸥时响应的结果类型(5大类50多个具体状态码)

查看状态码:http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html

100s:服务器响应的信息,通常表示服务器还有后续处理,很少出现

200s:请求被服务器成功接受并处理后返回的响应结果

300s:重定向,通常在身份认证成功后重定向到一个安全页面(301/302)

400s:表示客户端请求错误

1、401:需要身份验证

2、403:拒绝访问

3、404:目标未发现

500s:服务器内部错误(503:服务不可用)

小白学习安全测试(一)——Http协议基础的更多相关文章

  1. HTTP学习记录:一、协议基础

    学习资源主要为:@小坦克HTTP相关博客 1.HTTP简介: HTTP协议是Hyper Text Transfer Portocol(超文本传输协议)的缩写,它是一种通信协议,允许将超文本(即:htm ...

  2. 小白学习安全测试(四)——扫描工具-Vega

    WEB扫描工具-Vega 纯图形化界面,Java编写的开源web扫描器.两种工作模式:扫描模式和代理模式[主流扫描功能].用于爬站.处理表单,注入测试等.支持SSL:http://vega/ca.cr ...

  3. 小白学习安全测试(三)——扫描工具-Nikto使用

    扫描工具-Nikto #基于WEB的扫描工具,基本都支持两种扫描模式.代理截断模式,主动扫描模式 手动扫描:作为用户操作发现页面存在的问题,但可能会存在遗漏 自动扫描:基于字典,提高速度,但存在误报和 ...

  4. 小白学习安全测试(二)——httrack的安装和使用

    httrack是一款免费的网站镜像程序,简单理解就是可以在网站结构(网页及一些主要信息文件),下载到本地,可离线浏览,我是按照搭建成功后的console直译过来的 下面说下安装: 我都是在Linux环 ...

  5. Linux学习(1)- TCP/IP网络协议基础

    Linux学习(1)- TCP/IP网络协议基础 一.TCP/IP 简介 学习内容 TCP/IP(Transmission Control Protocol/Internet Protocol)是传输 ...

  6. 小白日记27:kali渗透测试之Web渗透-Http协议基础,WEB

    Http协议基础 Web技术发展[http://www.cnblogs.com/ProgrammerGE/articles/1824657.html] 静态WEB[网页] 动态WEB 属于一种应用程序 ...

  7. 电脑小白学习软件开发-C#语言基础之循环重点讲解,习题

    写代码也要读书,爱全栈,更爱生活.每日更新原创IT编程技术及日常实用视频. 我们的目标是:玩得转服务器Web开发,搞得懂移动端,电脑客户端更是不在话下. 本教程是基础教程,适合任何有志于学习软件开发的 ...

  8. 协议基础:SMTP:使用Telnet学习SMTP协议

    协议基础:SMTP:使用Telnet学习SMTP协议 2018-07-30 20:05:50 liumiaocn 阅读数 7479更多 分类专栏: 工具 Unix/Linux   版权声明:本文为博主 ...

  9. 零基础如何迅速学习HTML5?新手小白学习web前端H5自白!

    很多的人在毕业之后才发现原来学的专业不是自己想做的工作,或者专业对口的工作待遇让人觉得并不满意,于是很多人选择培训机构学新的一门技能转换行业.IT行业的web前端H5受到很多学员的青睐.那么学习web ...

随机推荐

  1. CF 1070J Streets and Avenues in Berhattan

    DP的数组f其实开得不够大,应该开200000,但是它在cf上就是过了... 题意是把一堆字母分别分配到行和列. 分析一下,答案实际上只和n行中和m列中每种字母分配的个数有关.而且答案只和" ...

  2. LCT动态树入门

    LCT,link-cut-tree,一种基于splay的高级数据结构,常用于维护动态森林问题,但ta只能维护子树信息,无法修改子树信息. 首先,如果你不会splay,来这里看看吧. 接下来步入正题. ...

  3. 【CXF】- 拦截器 Interceptor

    CXF拦截器 拦截动态操作请求和响应数据 拦截器分类 位置:服务器端拦截器,客户端拦截器 消息方向:入拦截器 出拦截器 定义者:系统拦截器 自定义拦截器:LoggingInInteceptor ①:创 ...

  4. 【BZOJ4870】组合数问题(动态规划,矩阵快速幂)

    [BZOJ4870]组合数问题(动态规划,矩阵快速幂) 题面 BZOJ 洛谷 题解 显然直接算是没法做的.但是要求的东西的和就是从\(nk\)个物品中选出模\(k\)意义下恰好\(r\)个物品的方案数 ...

  5. zabbix使用percona插件监控mysql

    1.添加percona仓库. # yum install -y http://www.percona.com/downloads/percona-release/redhat/0.1-4/percon ...

  6. POJ 2235 Frogger / UVA 534 Frogger /ZOJ 1942 Frogger(图论,最短路径)

    POJ 2235 Frogger / UVA 534 Frogger /ZOJ 1942 Frogger(图论,最短路径) Description Freddy Frog is sitting on ...

  7. c++并发编程之互斥锁(mutex)的使用方法

    1. 多个线程访问同一资源时,为了保证数据的一致性,最简单的方式就是使用 mutex(互斥锁). 引用 cppreference 的介绍: The mutex class is a synchroni ...

  8. linux c 编程 ------ 常见函数

    fork():创建一个进程 exec():停止当前进程中程序的执行,让当前进程执行另一个程序 access():查看是否有操作文件的权限,可以用来判断一个文件是否存在 pipe():无名管道,用在父子 ...

  9. webGL和three.js的关系

    如今浏览器的功能越来越强大,而且这些功能可能通过JavaScript直接调用.你可以用HTML5标签轻松地添加音频和视频,而且可以在HTML5画布上创建各种交互组件.现在这个功能集合里又有了一个新成员 ...

  10. input同名

    form表单传值,当,input的 name相同时候,可以同时传值. 当你提交时,你获取的同name数据会被后加载的那个input替代.容易造成数据混乱,但是,可以在某些特殊情况使用.比如,selec ...