开始前的思考

  1. 我真的喜爱搞平安吗?
  2. 我想通过平安赚钱钱?
  3. 我不晓得做什么就是轻易?
  4. 一辈子做平安吗?

\

这些不想分明会对你当前的倒退很不利,与其自觉的学习web平安,不如先做一个久远的打算。否则在我看来都是浪费时间。

【Web平安学习路线&材料】

首先你得理解Web

Web分为好几层,一图胜千言:

事实是这样的:如果你不理解这些钻研对象是不可能搞好平安钻研的。

这样看来,Web有八层(如果把浏览器也算进去,就九层!每层都有几十种支流组件!!!)这该怎么办?

一法通则万法通,这是横向的层,纵向就是数据流!搞定好数据流:从横向的层,从上到下→从下到上,认真看看这些数据在每个层是怎么个解决的。

\

零根底web平安学习打算

2.1 HTTP协定申请 (TIME: 一周)

对以下下知识点做理解学习 http协定申请  http状态码               post / get 区别       

能够应用Chrome浏览器中F12查看“Network”标签中的HTTP申请响应,来理解HTTP协定申请.

2.2.危险的HTTP头参数 (TIME: 一周)

HTTP申请时需对一些必要的参数做一些理解,这些参数也会造成很重大的平安平安问题如下:

user_agent X-Forwarded-ForRefererclien_ipCookie      

2.3 专业术语 (TIME: 一天)

理解如下专业术语的意思

  • webshell
  • 菜刀
  • 0day
  • SQL注入
  • 上传破绽
  • XSS
  • CSRF
  • 一句话木马

2.4 业余黑客工具应用 (TIME: 10天)

相熟如何浸透测试平安工具,把握这些工具能大大提高你在工作的中的效率。

sqlmap     Burpsuite  nmap      w3af       nessus  Appscan AWVS

2.5 脚本语言+代码审计入门 (TIME: 10天)

举荐php不必学的太灵通,咱们又不是搞开发,理解根本语法和一些危险函数即可如:open exec 等函数会造成什么破绽,理解了php中的危险函数会造成那些破绽可触类旁通套用到别的脚本当中 asp aspx java这些语言的危险函数可能只是写法不一样性能是雷同的,理解这些后就能够来做一些web破绽的代码审计了.

php入门学习  php代码审计   

2.6 Sql注射 (TIME: 3天)

零根底就先用最无效的方法注入举荐注入工具 sqlmap如何应用?

如果你不想只停留在应用工具的层面,那么你须要学习一下数据库,mysql sqlserver 轻易先学一个后期学会 selsct 就行,php尝试本人写一个查询数据库的脚本来理解手工sql注入的原理,这样提高会很快,如果想深刻能够把各种数据库注入都复习一边。对于须要把握的技术点:

1. 数字型注入 2.字符型注入 3.搜寻注入 4.盲注(sleep注入) 5.sqlmap应用 6.宽字节注入mysql入门  Sqlmap     sleep原理    盲注sleep函数执行sql注入攻打

【Web平安学习路线&材料】

2.7 CSRF 跨站点申请 (TIME: 3天)

为什么会造成csrf,GET型与POST型CSRF 的区别, 如何进攻应用 token避免 csrf?

2.8 XSS (TIME: 7天)

要钻研xss首先理解同源策略 ,Javascript 也要好好学习一下 ,以及html实体 html实体的10 或16进制还有javascript 的8进制和16进制编码,

xss     进制编码  同源策略  

2.9 文件上传破绽 (TIME: 7天)

理解下开源编辑器上传都有那些破绽,如何绕过零碎检测上传一句话木马

上传绕过

2.10 php-近程/本地 文件蕴含 (TIME: 10天)

去学习下include() include_once() require() require_once() fopen() readfile()这些php函数是如何产生文件蕴含破绽, 本地蕴含与近程蕴含的区别。

以及利用文件蕴含时的一些技巧如:截断 /伪url/超长字符截断 等 。

2.11 php-命令执行 (TIME: 3天)

PHP代码中常见的代码执行函数有:

eval(), assert(), preg_replace(), call_user_func(), call_user_func_array(),create_function(), array_map()等。

理解这些函数的作用而后些搞清楚如何造成的代码执行破绽。

2.12 ssrf (TIME: 3天)

1\理解ssrf的原理,以及ssrf的危害。

2\ssrf能做什么。

当咱们在进行web浸透的时候是无法访问指标的外部网络的,那么这个时候就用到了ssrf破绽,利用外网存在ssrf的web站点能够获取如下信息。

1.能够对外网、服务器所在内网、本地进行端口扫描,获取一些服务的banner信息;

2.攻打运行在内网或本地的应用程序(比方溢出);

3.对内网web利用进行指纹识别,通过拜访默认文件实现;

4.攻打内外网的web利用,次要是应用get参数就能够实现的攻打(比方struts2,sqli等);

5.利用file协定读取本地文件等。

2.13 逻辑破绽 (TIME: 7天)

常见的逻辑破绽个别都会在如下中央呈现

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

2.14 xee(XML内部实体注入) (TIME: 5天)

当容许xml引入内部实体时,通过结构歹意内容,能够导致文件读取、命令执行、内网探测等危害

2.15 XPath注入 (TIME: 5天)

path注入攻打实质上和SQL注入攻打是相似的,都是输出一些歹意的查问等代码字符串,从而对网站进行攻打

2.16 服务器解析破绽

Iis 解析破绽  nginx 解析破绽 tomcat 后盾上传破绽jboss 上传破绽如果上述破绽原理把握的都差不多那么你就能够去找个工作实际一下了. 

# 加分我的项目-浸透信息收集 (TIME: 15天)#

子域名收集 利用DNS域名传送破绽收集二级域名

Liunx测试命令如下:

Dns服务器 1.1.1.1  测试域名http://wooyun.orgdig @1.1.1.1 http://sechook.org axfrnmap --script dns-zone-transfer --script-args dns-zone-transfer.domain=http://wooyun.org -p 53 -Pn 1.1.1

实例查问苏宁DNS服务器

D:\deep>nslookup默认服务器:  localhostAddress:  10.11.0.1> set type=ns> http://suning.com服务器:  localhostAddress:  10.11.0.1非权威应答:http://suning.com      nameserver = http://lns1.zdnscloud.infohttp://suning.com      nameserver = http://gns2.zdnscloud.net.cnhttp://suning.com      nameserver = lns2.zdnscloud.bizhttp://suning.com      nameserver = http://gns1.zdnscloud.net>

查问苏宁 IP

C:\Users\jack>nslookup http://suning.com服务器:  localhostAddress:  10.11.0.1非权威应答:名称:    http://suning.xdwscache.ourwebcdn.comAddresses: 203.130.60.48   //对应ip         203.130.60.49  //对应ip         203.130.60.50  //对应ipAliases:  http://suning.comhttp://Suning.com.wscdns.com //别名

在线二级域名爆破网站

https://dnsdumpster.com/Netcraft - Search Web by Domain

工具获取二级域名

浸透测试中罕用的在线工具--SecWiki 专题  参考链接subDomainsBrutewydomain theHarvester.py FierceDigknockdnsspiderSubDomainscollectSubBrutedirfuzz

应用格局:

fierce  -dns http://baidu.com -threads 3     subDomainsBrute.py http://suning.com     python theHarvester.py -d http://suning.com -l 500 -b baidu -v 国内百度找的多     python theHarvester.py -d 公司名 -l 500 -b baidu -v      python theHarvester.py -d http://suning.com -l 500 -b google -v国外站google多     python theHarvester.py -d school -l 1000 -b all   all应用所有的搜索引擎进行搜寻

subDomainsBrute应用须要装置依赖反对

报错信息:ImportError: No module named dns.resolver     须要装置的库是 dnspython      pip install dnspython      没有pip的话, 能够用     到https://github.com/rthalley/dnspython.git 下载      cd dnspython      python setup.py install

搜索引擎 Google新教训:

+ 把google可能疏忽的字列如查问范畴 - 把某个字疏忽~ 批准词. 繁多的通配符* 通配符,可代表多个字母"" 准确查问 

代码托管透露信息搜寻

Google:

http://andy-game.googlecode.com/svn-history/Gitbub:   https://github.com/search?utf8=%E2%9C%93&q=%E5%A4%96%E7%BD%91+%E8%B1%86%E7%93%A3&type=Code&ref=searchresults

ip反查域名

http://dns.aizhan.com

二级兄弟域名收集

查问邮件服务器信息指标IP地址范畴收集利用代码托管网站收集指标信息

确定ip 地址范畴

扫描c段获取cdn实在ip地址社会工程学

【Web平安学习路线&材料】

整顿笔记

这个我感觉最重要,这是一个好习惯 能够让咱们从新把学习的技术做一个总结和坚固。在总结的过程造成本人对技术的了解与翻新。从而让书本上的常识变成本人的货色。