Web安全学习思维导图,[web入门菜鸡萌新必备]

写在前面,自制了一个web安全学习的思维导图,写的并不是很全面,自己本身其实也是个弟弟,
总结了一些师傅们的资源,希望大家给予一定的建议和提升的空间,另外也给萌新一个思路吧~

WEB思维导图

下面是大纲,可以参考内容

Web安全学习

http协议请求

http协议请求

  • http协议的特点

    • 通信流程

      • 无状态
      • 断开式
    • 内容格式

  • http中的请求方式

    1、OPTIONS
    返回服务器针对特定资源所支持的HTTP请求方法,也可以利用向web服务器发送‘*’的请求来测试服务器的功能性
    2、HEAD
    向服务器索与GET请求相一致的响应,只不过响应体将不会被返回。这一方法可以再不必传输整个响应内容的情况下,就可以获取包含在响应小消息头中的元信息。
    3、GET
    向特定的资源发出请求。它本质就是发送一个请求来取得服务器上的某一资源。资源通过一组HTTP头和呈现数据(如HTML文本,或者图片或者视频等)返回给客户端。GET请求中,永远不会包含呈现数据。
    4、POST
    向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含在请求体中。POST请求可能会导致新的资源的建立和/或已有资源的修改。 Loadrunner中对应POST请求函数:web_submit_data,web_submit_form
    5、PUT
    向指定资源位置上传其最新内容
    6、DELETE
    请求服务器删除Request-URL所标识的资源
    7、TRACE
    回显服务器收到的请求,主要用于测试或诊断
    8、CONNECT
    HTTP/1.1协议中预留给能够将连接改为管道方式的代理服务器。
    注意:
    1)方法名称是区分大小写的,当某个请求所针对的资源不支持对应的请求方法的时候,服务器应当返回状态码405(Mothod Not Allowed);当服务器不认识或者不支持对应的请求方法时,应返回状态码501(Not Implemented)。
    2)HTTP服务器至少应该实现GET和HEAD/POST方法,其他方法都是可选的,此外除上述方法,特定的HTTP服务器支持扩展自定义的方法。

    • 1、OPTIONS
    • 2、HEAD
    • 3、GET
    • 4、POST
    • 5、PUT
    • 6、DELETE
    • 7、TRACE
    • 8、CONNECT
  • POST和GET方式的区别

    • 1、传送方式:get通过地址栏传输,post通过报文传输。

2、传送长度:get参数有长度限制(受限于url长度),而post无限制

3、GET和POST还有一个重大区别,简单的说:
GET产生一个TCP数据包;POST产生两个TCP数据包
对于GET方式的请求,浏览器会把http header和data一并发送出去,服务器响应200(返回数据);
而对于POST,浏览器先发送header,服务器响应100 continue,浏览器再发送data,服务器响应200 ok(返回数据)。
1、get方式的安全性较Post方式要差些,包含机密信息的话,建议用Post数据提交方式;

2、在做数据查询时,建议用Get方式;而在做数据添加、修改或删除时,建议用Post方式;

危险的HTTP头参数

HTTP头

危险头

  • user_agent
  • X-Forwarded-For
  • Referer
  • Cookie

练习题

  • Bugku Cookies欺骗:http://123.206.87.240:8002/web11/index.php
  • X-Forwarded-for练习题:Bugku管理员系统:http://123.206.31.85:1003/
  • 实验吧 Forbidden:http://ctf1.shiyanbar.com/basic/header/

术语了解

Webshell

菜刀

0day

SQL注入

上传漏洞

XSS

CSRF

一句话木马

工具使用

Burpsuite

  • 下载地址:https://www.52pojie.cn/thread-787224-1-1.html
  • 使用教学:https://blog.csdn.net/gitchat/article/details/79168613

sqlmap

  • 下载地址:http://sqlmap.org/
  • 使用教学:https://blog.csdn.net/qq1124794084/article/details/77851094

nmap

  • 下载地址:https://nmap.org/download.html
  • 使用教学:https://www.cnblogs.com/weihua2616/p/6599629.html

w3af

  • 下载地址:http://w3af.org/
  • 使用教学:https://blog.csdn.net/chenyujin1314520/article/details/50352114

御剑

  • 下载地址:https://www.52pojie.cn/forum.php?mod=viewthread&tid=317749
  • 这个用法太简单了。不找教学了

菜刀

  • 下载地址:http://www.zhongguocaidao.com/
  • 使用教学:https://blog.csdn.net/sinat_21184471/article/details/74202665

蚁剑(功能同菜刀)

  • 下载地址:https://github.com/AntSwordProject/antSword
  • 使用方法官网有中文版

PHP+代码审计

PHP教程:https://www.w3cschool.cn/php/

代码审计入门教程:https://www.cnblogs.com/Oran9e/p/7763751.html

代码审计练习在bugku上有一部分,可以找来看看 http://ctf.bugku.com

SQL注入

SQL注入原理:https://www.cnblogs.com/shaoyu19900421/p/5592347.html

数据库学习

  • 推荐mysql,有一定了解即可,mysql教程:https://www.w3cschool.cn/mysql/

SQLMAP的使用

sql注入类型

  • 数字型
  • 字符型
  • 搜索注入
  • 盲注
  • 宽字节

练习方式

  • 1.各大CTF平台均有SQL注入类型题目

  • 2.SQLi-Labs

    • 下载与安装https://www.cnblogs.com/carlos-mm/p/8388351.html
    • writeup:https://www.cnblogs.com/peterpan0707007/p/7620048.html

CSRF跨站请求

要弄明白的问题

  • 1.为什么会造成CSRF
  • 2.GET型与POST型CSRF的区别
  • 3.如何防御使用token防止csrf?

原理:https://blog.csdn.net/stpeace/article/details/53512283

http://www.360doc.com/content/18/0809/07/19049289_776778757.shtml

实践使用可以利用bwapp实现,例子:https://blog.csdn.net/qq1124794084/article/details/79005137

XSS漏洞

前期工作

  • 1.JavaScript

    • 做一定的了解即可。教程:http://www.w3school.com.cn/js/index.asp
  • 2.进制编码

    • 1.htmlURL编码:http://www.w3school.com.cn/tags/html_ref_urlencode.html
    • 2.JavaScript进制/编码转换:https://www.jianshu.com/p/dc0a12f8ba9a
  • 3.同源策略

    • 同源策略和跨域-总结https://www.cnblogs.com/xhz-dalalala/p/5259965.html

XSS基础讲解

  • https://www.jianshu.com/p/4fcb4b411a66

XSS练习平台

  • 1.XSS平台-安全测试:https://www.xsspt.com
  • 2.XSS Challenges:http://xss-quiz.int21h.jp/
  • 3.XSS过关练习:http://test.xss.tv/

常用练习平台及资源

XPath注入

概念

特点

  • 广泛性
  • 危害性大

原理

  • XPath注入攻击主要是通过构建特殊的输入,这些输入往往是XPath语法中的一些组合,这些输入将作为参数传入Web 应用程序,通过执行XPath查询而执行入侵者想要的操作

XEE

XML基础知识

危害

  • 读取任意文件

漏洞利用方法

  • 读取任意文件
  • 执行系统命令
  • 探测内网端口
  • 攻击内网防御

逻辑漏洞

常见逻辑漏洞出现方式

  • 1.订金额任意修改--购物站经常出现
  • 2.验证码回传
  • 3.越权操作,其主要原因是没对ID参数做cookie验证导致。
  • 4.找回密码存在设计缺陷
  • 5.接口无限制枚举

Web安全测试中常见逻辑漏洞解析(实战篇)

SSRF

这篇文章总结的太全了,直接用这个好了https://blog.csdn.net/u010726042/article/details/77806775

PHP命令执行

常用命令执行函数

  • exec()
  • system()
  • popen()
  • passthru()
  • proc_open()
  • pcntl_exec()
  • shell_exec()

利用方式

  • 文件包含代码注入

  • 正则表达代码注入

    • 第一个(pattern)参数注入
    • 第二个人(replacement)参数注入
    • 第三个参数注射
  • 动态代码

    • 动态变量代码执行
    • 动态函数代码执行

PHP文件包含

产生原理

  • 漏洞函数

    • include()
    • include_once()
    • require()
    • require_once()
    • fopen()
    • readfile()
  • 产生原因

    文件包含函数加载的参数没有经过过滤或者严格的定义,可以被用户控制,包含其他恶意文件,导致了执行了非预期的代码。

类型

  • 本地文件包含

    • 无限制本地文件包含

      • 常见敏感目录

        • windows

          • c:\boot.ini // 查看系统版本
          • c:\windows\system32\inetsrv\MetaBase.xml // IIS配置文件
          • c:\windows\repair\sam // 存储Windows系统初次安装的密码
          • c:\ProgramFiles\mysql\my.ini // MySQL配置
          • c:\ProgramFiles\mysql\data\mysql\user.MYD // MySQL root密码
          • c:\windows\php.ini // php 配置信息
        • linux/unix

          • /etc/passwd // 账户信息
          • /etc/shadow // 账户密码文件
          • /usr/local/app/apache2/conf/httpd.conf // Apache2默认配置文件
          • /usr/local/app/apache2/conf/extra/httpd-vhost.conf // 虚拟网站配置
          • /usr/local/app/php5/lib/php.ini // PHP相关配置
          • /etc/httpd/conf/httpd.conf // Apache配置文件
          • /etc/my.conf // mysql 配置文件
    • session文件包含漏洞

      • 利用条件

        session的存储位置可以获取。

      • 利用方式

          1. 通过phpinfo的信息可以获取到session的存储位置。
        • 子主题 2

            1. 通过猜测默认的session存放位置进行尝试。
    • 截断

  • PHP伪协议

    • 目录
    • 利用

文件上传漏洞

1.原理

文件上传漏洞是指由于程序员在对用户文件上传部分的控制不足或者处理缺陷,而导致的用户可以越过其本身权限向服务器上上传可执行的动态脚本文件。这里上传的文件可以是木马,病毒,恶意脚本或者WebShell等。这种攻击方式是最为直接和有效的,“文件上传”本身没有问题,有问题的是文件上传后,服务器怎么处理、解释文件。如果服务器的处理逻辑做的不够安全,则会导致严重的后果。

漏洞类型

  • 1.前端JS漏洞

    • 1.判断方式

      • 校验上传文件的后缀名。加载文件时直接弹出对话框阻止上传,有白名单及黑名单形式
    • 2.绕过方式

      • firebug直接修改js,或通过burp suite改包上传即可
  • 2.文件头字段Content-type校验

    • 1.原理

      • web服务端对上传类型进行判断
    • 2.绕过方法

      • burp suite抓包改包
  • 3.文件内容头校验

    • 1.原理

    • 2.绕过方法

      • 在木马内容基础上再加一些文件信息,例如GIF89a<?php phpinfo();?>
  • 4.后缀名校验

    • 1黑名单校验
  • 配合其他漏洞

    • 配合文件包含漏洞

      • 1前提

        • 校验规则只校验当文件后缀名为asp/php/jsp的文件内容是否为木马。
      • 2.绕过方式

        • (1)先上传一个内容为木马的txt后缀文件,因为后缀名的关系没有检验内容;
        • (2)然后再上传一个.php的文件,内容为<?php Include(“上传的txt文件路径”);?>
    • .配合服务器解析漏洞

      • http://www.cnblogs.com/shellr00t/p/6426856.html
    • 配合操作系统文件命令规则

      • (1)上传不符合windows文件命名规则的文件名
      • test.asp.
      • test.asp(空格)
      • test.php:1.jpg
      • test.php::$DATA
      • shell.php::$DATA…….
      • 会被windows系统自动去掉不符合规则符号后面的内容。
      • (2)linux下后缀名大小写
      • 在linux下,如果上传php不被解析,可以试试上传pHp后缀的文件名。
    • CMS、编辑器漏洞

      • (1)CMS漏洞:比如说JCMS等存在的漏洞,可以针对不同CMS存在的上传漏洞进行绕过。
      • (2)编辑器漏洞:比如FCK,ewebeditor等,可以针对编辑器的漏洞进行绕过。
    • 配合其他规则

      • 0x00截断
      • .htaccesss

XMind: ZEN - Trial Version

  • 34
    点赞
  • 158
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
CTF资料 CTF攻防部署.png CTF题目工具资源.png Web安全 JavaWeb简介.png Maltego使用导图.jpg Nmap.png PHP源码审计.png Python系统审计.jpg WEB2HACK.jpg Web安全.png Web安全技术点.jpg Web服务器入侵防御.jpg Web攻击及防御技术.png XSS利用架构图.jpg XSS攻击点汇总.png nmap.jpg pentest_method.jpg powershell语法.png web渗透.jpg web应用测试.jpg xml安全汇总.png 渗透流程.jpg 进阶渗透.png 社会工程学.jpg 网站入侵图.jpg 渗透测试流程.jpg 网络安全绪论.png 渗透测试实验室.jpg 渗透测试详细版.jpg 黑客入侵行为分析.gif 主流测试工具分类.jpg 系统端口审计琐事.jpg 业务安全 P2P-security.png SEO导图.gif 业务安全.jpg 黑色产业.jpg 黑色产业链示意图.pdf 网游安全运营管理体系.jpg 其它相关 2012sec_event.jpg SEO-Cheatsheet.png amazon云安全体系.jpg 网络安全全景图.jpg 中国黑阔技术金字塔.png 网络安全发展与未来.png 安全开发 LAMPer技能树.jpeg QM--Python.png python_regrex.png vi.jpg vim2.jpg wyscan设计结构.png 网站架构.jpg 常见的测试类型.jpg 扫描与防御技术.png 网络监听与防御技术.png 信息系统整体安全生命周期设计.jpg 工控安全 IoT产品安全评估.png 智能设备.png 工控安全案例.pdf 工控系统安全及应对.jpg 情报分析 diamond_threat_model.png threat_diamond_model.png 情报分析.jpg 习科技能表.jpg 无线安全 WiFi渗透流程.png 无线安全.jpg 移动安全 andrioid-security.png android_windows_恶意病毒发展史.png apk攻防.png iOS应用审计系统.png 移动App漏洞检测平台.png 运维安全 DDoS攻击及对策.jpg Linux检查脚本.jpeg SAE运维体系.jpg SIEM系统的结构图.jpg TCP:IP参考模型的安全协议分层.jpg TCP:IP参考模型的安全服务与安全机制.jpg WPDRRC模型.jpg 业务运维.jpg 信息安全.jpg 安全事件.jpg 运维安全.png 数据库安全.jpg 安全管理制度.jpg 密码安全研究.jpg 安全工作要点v0.2.jpeg 运维职业技术点.jpg 安全加固服务流程.jpg 常见电信诈骗分类.jpg 网络与基础架构图.jpg 层次化网络设计案例.jpg 口令破解与防御技术.png 企业内网准入控制规划.jpg 信息安全分层逻辑模型.jpg 密码找回逻辑漏洞总结.png 微软深度防御安全模型7层安全防御.jpg 互联网企业安全建设思路.png 拒绝服务攻击与防御技术.png 人民银行“三三二一”总体技术框架.jpg 信息系统等级保护实施指南思维导图.jpg 逆向漏洞 MPDRR模型.jpg Windows_Hacker学习路线图.jpg cheat sheet reverse v5.png 计算机病毒.png 安全人员技术要求.jpg 木马攻击与防御技术.png 欺骗攻击与防御技术.png 入门二进制漏洞分析脑图.png 缓冲区溢出攻击与防御技术.png

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值