Web安全基础

关键字:计算机的互联依赖于网络,服务都是运行在操作系统上
摘要:
    LAMP>>
        linux+apache+mysql+php
        操作系统+Web 容器+数据库服务+中间件    
        metinfo 5.0.4   版本
        CMS        网站内容管理系统
     安全问题>> 系统  /apache /数据库 /php
        整个安全是有安全基线

一、web工作机制

Web安全基础

概述>>
         用户发出请求,服务器根据请求的URL的地址链接,找到对应的网页文件发送给客户(在用户浏览器中有个解释器,把这些文本描述的页面恢复成图文并茂的可视页面)
        .html 静态网页 >>通过页面上的URL地址在网站页面之间跳转>>单向流动
        动态网页>>(中间件服务器)利用flash、PHP、asp、Java等技术在网页中嵌入可运行脚本,用户浏览器在解释页面时,遇到脚本就启动>>双向流动,产生交互
        数据库>>当用户请求页面是,脚本根据用户请求的页面,涉及到动态数据的地方,利用SQL数据库语言,从数据读取自信的数据,生成完整页面,最后送给用户
    Web 工作机制
    静态页面            .html
    动态页面            .php/.asp/.jsp/.aspx....
    数据库                mysql/mssql/orcale/access....
    Web 容器            处理客户端请求    
    工作模式:            请求与响应

二、HTTP协议
    HTTP设计用来将超文本标记语言(HTML)文档从Web服务器传送到Web浏览器
    是一个请求和响应协议:客户机发送请求,服务器对请求给出回应
   特点:
        简单快速,客户向服务器请求是,只需要传送请求方法和路径
        灵活;允许传输任意类型的数据对象,正在传输的类型由Conten-type加以标记
        HTTP协议是无状态协议,无状态是指对于事物处理没有记忆能力

    URL:

        Web安全基础

        输入的地址http://172.18.199.91:8081/test/1.php缺省的LOGIN:psd >>网站的匿名用户(默认用户),权限比较低
          其他字符均会被百分号编码(URL 编码)>>空格%20  #%23
           HTTP协议结构>>客户端请求与服务器回应
         HTTP报文分析>>请求与响应
REQUEST(请求)>>由请求行、请求头、请求正文三个部分组成
        请求行>>里面有 方法、资源路径、协议版本
        F12控制台
        Web安全基础
当刷新页面时会进行请求,请求格式是原始请求信息
        Web安全基础
 请求正文
        Web安全基础
Web安全基础
    请求方法
        GET方法 是访问网站的一般方式
        post  与GET方法类似,请求的参数在请求正文
        HEAD  与GET方法类似,不返回响应正文>>目录扫描的时候
        PUT  向服务器系写文件
        delete  删除服务器文件
         TRACE  回显服务器收到的请求
        options  测试服务器所支持的方法
        一个安全浏览器必须禁用put和delete方法
         Web安全基础
一般服务器不会让测试服务器所支持的方法>>
            通过模拟HTTP请求  用options 测试 服务器所支持的http 方法  利用telnet

RESPONSE(请求响应)
    响应包含三个部分:响应行、响应头、响应正文(服务器返回的资源内容)
        HTTP-Version 表示服务器HTTP协议的版本;
        Sataus-Code 表示服务器返回的响应状态码
        Reason-Phrase 表示状态码的文本描述
        响应行>>有协议版本、状态码
            常见响应码;
                Web安全基础
        响应头>>
            Web安全基础

           常用截取HTTP报文的工具
                    firebug            火狐浏览器的插件 
                    burp suite        神器        kali 自带    
                    Fiddler            
                    Tamper Data        火狐的插件
                    WireShark        抓五层数据都可以

二、Cookie和session机制
      1.Cookie机制
           (1.为什么要用cookie机制
                HTTP协议本身是无状态协议,Http不会记录前一次传输的数据信息
                希望能在客户端和服务器这个交互的会话期间内,服务器能够保持对客户端会话的识别,也就是保持http的状态性 >>没有改变只是弥补了
          (2.怎么做到的
                Web安全基础
            cookie>>类似于超市的会员卡,可能会遇到窃取和欺骗
           (3.规范
                Web安全基础
            cookie 随着http请求一起发送到服务器,这个过程是自动的
            预定义超全局数组变量 $_COOKIE        
            TIPS:    $_GET/$_POST/$_COOKIE    合称    GPC

         2.Session机制
                Web安全基础