1. TCP/IP协议栈
1.1 IPv4 && IPv6
- IP地址是电子设备在互联网上的唯一标识,用于在互联网中计算机互相访问。
- IPv4地址长度为32位二进制数,IPv6地址使用8组4位16进制数表示,128位二进制数。
1.2 公网与内网
- 公网与内网:互联网无法访问到内网,内网ip可以访问互联网。
10/172.16/192.168开头的都是内网ip。
1.3 HTTP
2. BurpSuite
2.1 使用
- 一般情况下,关闭intercept(intercept is off)。在HTTP hoistory中抓包。
2.2 HTTP报文分析
cookie可能存在的漏洞:cookie伪造和窃取,xss,csrf;
GET和POST的区别?
- GET在请求行的URI中传递参数,POST在请求体中传递。
为什么在请求体中传递参数?因为url长度有限,请求体没要求;且POST请求体类型不限,可以是图片视频等,GET有限制;- 传输的数据类型不同。
- POST的协议中要有type和length。
- HTTP请求消息
哪些地方可能存在漏洞?
- 请求行:第二个位置可能会有漏洞,右键send to repeater修改,在Repeater中点击send,尝试是否存在漏洞。第一个位置(GET)和第三个位置没有漏洞(HTTP/1.1);
eg: GET /s?ie=utf-8&csq=1&pstg=20&mod=2&isbd=1&cqid=9dd59f9c0002eeae&istc=641&ver=0AsbGQpZQbTaje7d6v3Fm39Z0LB6WiCVDIi&chk=64bf7899&isid=d6967ed700030d21&ie=utf8&f=8&rsv_bp=1&rsv_idx=1&tn=88093251_109_hao_pg&wd=100&fenlei=256&oq=1%2526lt%253B2&rsv_pq=d6967ed700030d21&rsv_t=7c6en1oWkMLm%2FJtP%2BwLVL5OpXY9LP%2BSQmrHsI3oji%2BCpxFHkridZvugIfeTKrOPG2WOvHzHSK4EYsg&rqlang=cn&rsv_enter=1&rsv_dl=tb&rsv_btype=t&inputT=1261&rsv_sug3=7&rsv_sug1=4&rsv_sug7=100&rsv_sug2=0&rsv_sug4=1261&bs=132&f4s=1&_ck=893.0.-1.-1.-1.-1.-1&isnop=1&rsv_stat=-2&rsv_bp=1 HTTP/1.1
- 请求头:Host,Accept-Encoding,Connection不存在漏洞;Cookie,User-Agent可能存在漏洞;
- 请求体:绝大部分HTTP请求中(GET)请求体都是空的;
- HTTP响应消息
主要看响应体。(1)修改请求,查看响应体中的变化确定有没有漏洞。(2)直接看响应体,看有没有敏感信息。
怎么修改响应体?开启intercept is on,右键Do intercept,点击Forward,修改响应体;
3. 漏洞挖掘
-
目前SQL注入、文件上传、文件包含漏洞少,现在网站大多不用php写,而用GOLANG不存在文件包含漏洞,没必要挖。
-
现在关注:xss漏洞,RCE(代码命令执行 )漏洞,CSRF(浏览器可防御),SSRF(少见),逻辑漏洞(最多最好挖);
-
SRC导航:https://www.anquanke.com/src;https://src.sjtu.edu.cn/(site:edu.cn);
-
常见漏洞:越权漏洞(平行越权,垂直越权);
- 看敏感信息
- 405是客户端错误,需要改成POST请求方式,右键change request method;
- 传入student_id,并修改content_type为json;
- 看有没有遍历的地方;
- 尝试遍历;