1.目的javascript
本问目的是带你们快速入门web安全,不会搞些虚张声势的东西都是个人学习经验. 不会涉及到特别详细的技术,而是指导你去如何系统的学习少走弯路,节约时间。要有自信。不要以为任何人和任何事有多牛逼,不低估本身,不高估别人。认真学习。php
2.经验html
咱们在学习web安全或者任何东西时都须要分阶段专一学习,好比研究XSS那么这段时间大部分精力只研究XSS。XSS一般结合CSRF来达到更好的利用效果,可是不要把太多时间放到csrf上,研究透彻xss后在研究下一个漏洞类型,要有重点的研究东西。
3.多看书和分析文章java
学习代码审计时我认为最有效的方法,先去阅读相关的书籍而后找两篇分析0day的文章,照葫芦画瓢分析文章中同样版本的代码,这对你成长颇有帮助,进步也很是快。
4.整理笔记python
这个我以为最重要,这是一个好习惯 可让咱们从新把学习的技术作一个总结和巩固。在总结的过程造成本身对技术的理解与创新。从而让书本上的知识变成本身的东西。
二,零基础web安全学习计划mysql
2.1 HTTP协议请求 (TIME: 一周)nginx
对如下下知识点作了解学习
http协议请求
http状态码
post / get 区别
可使用Chrome浏览器中F12查看“Network”标签中的HTTP请求响应,来了解HTTP协议请求.
2.2.危险的HTTP头参数 (TIME: 一周)git
HTTP请求时需对一些必要的参数作一些了解,这些参数也会形成很严重的安全安全问题以下:
user_agent
X-Forwarded-For
Referer
clien_ip
Cookie
2.3 专业术语天 (TIME: 一天)github
了解以下专业术语的意思web
webshell
菜刀
0day
SQL注入
上传漏洞
XSS
CSRF
一句话木马
2.4 专业黑客工具使用 (TIME: 10天)
熟悉如何渗透测试安全工具,掌握这些工具能大大提升你在工做的中的效率。
sqlmap 学习地址: http://secbang.com/schoollist/burpsql/kclist.html
Burpsuite 学习地址: http://secbang.com/schoollist/burpuse/kclist.html
nmap 学习地址: http://secbang.com/schoollist/nmap/kclist.html
w3af 学习地址: http://secbang.com/schoollist/sectools/kclist.html
nessus
Appscan
AWVS
4.脚本语言+代码审计入门 (TIME: 10天)
推荐php不用学的太灵通,咱们又不是搞开发,了解基本语法和一些危险函数便可如:open exec 等函数会形成什么漏洞,了解了php中的危险函数会形成那些漏洞可触类旁通套用到别的脚本当中 asp aspx java这些语言的危险函数可能只是写法不同功能是相同的,了解这些后就能够来作一些web漏洞的代码审计了。
php入门学习 学习地址: https://www.w3cschool.cn/php/
php代码审计 学习地址: http://secbang.com/webtype.html
5.Sql注射 (TIME: 3天)
零基础就先用最有效的办法注入推荐注入工具 sqlmap如何使用? 若是你不想只停留在使用工具的层面,那么你须要学习一下数据库,mysql sqlserver 随便先学一个前期学会 selsct 就行,php尝试本身写一个查询数据库的脚原本了解手工sql注入的原理,这样进步会很快,若是想深刻能够把各类数据库注入都温习一边。关于须要掌握的技术点:
为何会形成csrf,GET型与POST型CSRF 的区别, 如何防护使用 token防止 csrf?
csrf 详细学习笔记
7.XSS (TIME: 7天)
要研究xss首先了解同源策略 ,Javascript 也要好好学习一下 ,以及html实体 html实体的10 或16进制还有javascript 的8进制和16进制编码,
xss 学习地址 :在学习 XSS 前应该学习什么?
进制编码 学习地址:http://su.xmd5.org/static/drops/tips-689.html
同源策略 学习地址:Browser Security-同源策略、
8.文件上传漏洞 (TIME: 7天)
了解下开源编辑器上传都有那些漏洞,如何绕过系统检测上传一句话木马
上传绕过学习: https://wenku.baidu.com/view/867ad233dc36a32d7375a417866fb84ae45cc386.html
9 php-远程/本地 文件包含 (TIME: 10天)
去学习下 include() include_once() require() require_once() fopen() readfile() 这些php函数是如何产生文件包含漏洞, 本地包含与远程包含的区别。
以及利用文件包含时的一些技巧如:截断 /伪url/超长字符截断 等 。
10 php-命令执行 (TIME: 3天)
PHP代码中常见的代码执行函数有:
eval(), assert(), preg_replace(), call_user_func(), call_user_func_array(),create_function(), array_map()等。
了解这些函数的做用而后些搞清楚如何形成的代码执行漏洞。
12 ssrf (TIME: 3天)
了解ssrf的原理,以及ssrf的危害。
ssrf能作什么。当咱们在进行web渗透的时候是没法访问目标的内部网络的,那么这个时候就用到了ssrf漏洞,利用外网存在ssrf的web站点能够获取以下信息。
1.能够对外网、服务器所在内网、本地进行端口扫描,获取一些服务的banner信息;
2.攻击运行在内网或本地的应用程序(好比溢出);
3.对内网web应用进行指纹识别,经过访问默认文件实现;
4.攻击内外网的web应用,主要是使用get参数就能够实现的攻击(好比struts2,sqli等);
5.利用file协议读取本地文件等。
13 逻辑漏洞 (TIME: 7天)
常见的逻辑漏洞通常都会在以下地方出现
1.订金额任意修改--购物站常常出现
2.验证码回传
3.越权操做,其主要缘由是没对ID参数作cookie验证致使。
4.找回密码存在设计缺陷
5.接口无限制枚举
http://www.freebuf.com/vuls/112339.html
14 xee(XML外部实体注入) (TIME: 5天)
当容许xml引入外部实体时,经过构造恶意内容,能够致使文件读取、命令执行、内网探测等危害
http://blog.sina.com.cn/s/blog_8194b04f0102wsoe.html
15 XPath注入 (TIME: 5天)
path注入攻击本质上和SQL注入攻击是相似的,都是输入一些恶意的查询等代码字符串,从而对网站进行攻击
http://www.javashuo.com/article/p-hwimcdhm-cx.html
16 服务器解析漏洞
Iis 解析漏洞
nginx 解析漏洞
tomcat 后台上传漏洞
jboss 上传漏洞
若是上述漏洞原理掌握的都差很少那么你就能够去找个工做实践一下了.
子域名搜集 利用DNS域名传送漏洞搜集二级域名
Liunx测试命令以下:
Dns服务器 1.1.1.1 测试域名http://wooyun.org
dig @1.1.1.1 http://sechook.org axfr
nmap --script dns-zone-transfer --script-args dns-zone-transfer.domain=http://wooyun.org -p 53 -Pn 1.1.1
实例查询苏宁DNS服务器
D:\deep>nslookup
默认服务器: localhost
Address: 10.11.0.1
set type=ns
http://suning.com
服务器: localhost
Address: 10.11.0.1
非权威应答:
http://suning.com nameserver = http://lns1.zdnscloud.info
http://suning.com nameserver = http://gns2.zdnscloud.net.cn
http://suning.com nameserver = lns2.zdnscloud.biz
http://suning.com nameserver = http://gns1.zdnscloud.net查询苏宁http://suning.com IP
C:\Users\jack>nslookup http://suning.com
服务器: localhost
Address: 10.11.0.1
非权威应答:
名称: http://suning.xdwscache.ourwebcdn.com
Addresses: 203.130.60.48 //对应ip
203.130.60.49 //对应ip
203.130.60.50 //对应ip
Aliases: http://suning.com
http://Suning.com.wscdns.com //别名
在线二级域名爆破网站
https://dnsdumpster.com/
Netcraft - Search Web by Domain
工具获取二级域名
渗透测试中经常使用的在线工具--SecWiki 专题 参考连接
subDomainsBrute
wydomain
theHarvester.py
Fierce
Dig
knock
dnsspider
SubDomainscollect
SubBrute
dirfuzz
使用格式:
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:
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
邮箱搜集
Metasploit邮箱搜集连接
http://xiao106347.blog.163.com/blog/static/215992078201311300162776/
ip反查域名
http://dns.aizhan.com/58.240.86.229/
二级兄弟域名搜集
查询邮件服务器信息
目标IP地址范围搜集
利用代码托管网站搜集目标信息
肯定ip 地址范围
扫描c段获取cdn真实ip地址社会工程学