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. ejabberd与XMPP

    ejabberd支持XMPP协议. worktile用ejabberd来做了实时消息推送: https://worktile.com/tech/basic/worktile-real-time-not ...

  2. golang yaml配置文件解析

    yaml文件语法 此模块内容转自:http://www.ruanyifeng.com/blog/2016/07/yaml.html 大小写敏感 使用缩进表示层级关系 缩进时不允许使用Tab键,只允许使 ...

  3. HDU 1698 Just a Hook (线段树区间更新入门题)

    Just a Hook Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total ...

  4. Spring Shell参考文档

    Spring Shell的核心组件是它的插件模型(plugin model).内置命令(built-in commands)和转换器( converters). 1.1 Plugin Model(插件 ...

  5. Rust 阴阳谜题,及纯基于代码的分析与化简

    Rust 阴阳谜题,及纯基于代码的分析与化简 雾雨魔法店专栏 https://zhuanlan.zhihu.com/marisa 来源 https://zhuanlan.zhihu.com/p/522 ...

  6. SpringBoot整合Mybatis之Annotation

    首先需要下载前面一篇文章的代码,在前一章代码上进行修改. SpringBoot整合Mybatis(注解方式) 复制前一个项目,修改配置文件,mybatis的相关配置为: mybatis: type-a ...

  7. LIS (DP)_代码

    #include <stdio.h> #include <string.h> #include <stdlib.h> int max(int a, int b); ...

  8. Zabbix应用七:Zabbix发送短信报警

    Zabbix利用Python脚本调用短信API发送报警信息 一.先贴出python脚本: #!/usr/bin/python # _*_ coding:utf8 _*_ import sys impo ...

  9. Flink流处理操作符

    一.工程创建与准备 使用maven进行工程创建,且采用提供的flink-quickstart模版,便利很多.

  10. Spark记录-Scala语法基础

    参考:http://docs.scala-lang.org/cheatsheets/index.html.http://docs.scala-lang.org/.http://www.scala-la ...