基础入门1
第一天
各种专业术语讲解:11阳光的博客 (cnblogs.com)
棱角社区(用于寻找各种口令):[~]#棱角 ::Edge.Forum* (ywhack.com)
反弹shell生成器:反弹shell生成器 (ywhack.com)
web安全入门篇:【3】web安全入门篇-渗透测试中常用的命令-CSDN博客
第二天
网站搭建前置知识:
域名,子域名,DNS,HTTP/HTTPS,证书等
WEB应用环境架构类
理解不同WEB应用组成角色功能架构
开发语言:网站是由开发语言开发的
常见的有asp,php,aspx,jsp,java,python,ruby,go,html,javascript 等
程序源码:由开发语言写出来的代码
可以根据开发语言分类;应用类型分类;开源 CMS 分类;开发框架分类等
中间件容器:支撑网站运行的东西
常见的有:IIS,Apache,Nginx,Tomcat,Weblogic,Jboos,glasshfish等
数据库:用来存储数据
类型有Access,Mysql,Mssql,Oracle,db2,Sybase,Redis,MongoDB 等
服务器操作系统:安装在大型计算机上的操作系统
常见的有Windows系列,Linux系列,Mac系列
第三方软件(可有可无):自己装的软件
如phpmyadmin,vs-ftpd,VNC,ELK,Openssh 等
如果第三方软件出现安全问题,那么它会成为进攻点
WEB应用安全漏洞分类
SQL 注入,文件安全,RCE 执行,XSS 跨站,CSRF/SSRF/CRLF, 反序列化,逻辑越权,未授权访问,XXE/XML,弱口令安全等
SQL注入(SQL Injection):
SQL注入是一种安全漏洞,发生在应用程序未正确验证、过滤或转义用户输入的情况下。攻击者可以通过在输入中注入恶意的SQL代码来执行任意的数据库操作,甚至获取敏感数据。
文件安全:
文件安全问题通常涉及应用程序对上传文件的处理。如果应用程序未正确验证和处理上传文件,攻击者可以上传恶意文件,导致文件包含漏洞或远程代码执行(RCE)漏洞。
RCE执行(Remote Code Execution):
RCE漏洞是指攻击者能够远程执行恶意代码的漏洞。这种漏洞通常出现在应用程序对用户输入的处理过程中,如果应用程序未正确验证和过滤用户输入,攻击者可以注入恶意代码,并在服务器上执行任意命令。
XSS跨站脚本攻击(Cross-Site Scripting):
XSS漏洞发生在应用程序对用户输入的输出处理过程中。如果应用程序未正确转义或过滤用户输入,攻击者可以注入恶意脚本代码,使其在其他用户的浏览器上执行。
CSRF/SSRF/CRLF:
这些是不同类型的攻击,但它们都涉及应用程序未正确验证和处理外部请求的情况。CSRF攻击利用用户已经通过身份验证的会话执行未经授权的操作,SSRF攻击利用应用程序的服务器发起未经授权的请求,而CRLF攻击利用应用程序未正确处理换行符导致的漏洞。
反序列化漏洞(Deserialization):
反序列化漏洞发生在应用程序对反序列化操作的处理过程中。如果应用程序未正确验证和过滤反序列化的数据,攻击者可以注入恶意数据,导致执行任意代码。
逻辑越权(Insecure Direct Object References):
逻辑越权漏洞涉及应用程序未正确验证用户对资源的访问权限。攻击者可以通过修改请求参数或直接请求未经授权的资源来绕过访问控制。
未授权访问(Unauthorized Access):
未授权访问漏洞发生在应用程序未正确验证用户身份或权限的情况下,允许攻击者访问受限资源或执行受限操作。
XXE(XML External Entity)/XML注入:
XXE漏洞发生在应用程序对XML解析的处理过程中,如果应用程序未正确禁用外部实体解析,攻击者可以利用恶意的XML实体注入攻击,读取敏感文件或执行远程请求。
弱口令安全:
弱口令安全问题涉及到应用程序用户账户的密码强度不足,容易受到猜测、暴力破解或字典攻击。
这些安全问题在应用程序中的产生地点通常是源代码和应用程序的配置。开发人员应该在编写源代码时采取相应的安全措施来预防这些漏洞的出现,并进行适当的配置和安全性审查以增加整体的安全性。
WEB请求返回过程数据包参考
WEB请求处理流程:https://www.jianshu.com/p/558455228c43
HTTP协议数据包简单总结:https://www.cnblogs.com/cherrycui/p/10815465.html
请求数据包,请求方法,请求体,响应包,响应头,状态码,代理服务器等 Request,Response,User-Agent,Cookie,Server,Content-Length 等
常见的HTTP状态码包括以下几种:
- 1xx 信息性状态码(Informational): 这些状态码表示请求已被接收,服务器正在处理请求。
- 100 Continue:服务器已经接收到请求的初始部分,客户端应该继续发送剩余的请求。
- 101 Switching Protocols:服务器已经理解请求,客户端应切换到新的协议。
- 2xx 成功状态码(Success): 这些状态码表示请求已成功被服务器接收、理解和处理。
- 200 OK:请求成功,服务器返回所请求的数据。
- 201 Created:请求成功,服务器创建了新的资源。
- 204 No Content:请求成功,但服务器没有返回任何内容。
- 3xx 重定向状态码(Redirection): 这些状态码表示需要客户端采取进一步的操作来完成请求。
- 301 Moved Permanently:请求的资源已永久移动到新位置。
- 302 Found:请求的资源暂时移动到新位置。
- 304 Not Modified:客户端可以使用缓存的版本,无需再次请求服务器。
- 4xx 客户端错误状态码(Client Errors): 这些状态码表示客户端发送的请求有错误或无法完成。
- 400 Bad Request:请求无效,服务器无法理解请求的语法。
- 401 Unauthorized:请求要求身份验证,客户端需要提供有效的身份凭证。
- 403:(禁止) 服务器拒绝请求。
- 404 Not Found:请求的资源不存在。
- 5xx 服务器错误状态码(Server Errors): 这些状态码表示服务器在处理请求时发生了错误。
- 500 Internal Server Error:服务器遇到了意外的错误。
- 503 Service Unavailable:服务器暂时无法处理请求,通常是由于过载或维护导致。
代理的作用:
没设置代理:
浏览器-服务器
设置了代理:
浏览器-代理-服务器
如:代理127.0.0.1 8888端口
Burpsuite 监听127.0.0.1 8888
burp拦截后选择性的进行丢弃或放行
第三天
目的:学会不同对象采用不同抓包封包抓取技术分析
常见的抓包封包工具:
BurpSuite:
是用于攻击 web 应用程序的集成平台,包含了许多工具。Burp Suite 为这些工具设计了许多接口,以加快攻击应用程序的过程。所有工具都共享一个请求,并能处理对应的 HTTP 消息、持久性、认证、代理、日志、警报。
Fiddler:
是一个 http 协议调试代理工具,它能够记录并检查所有你的电脑和互联网之间的 http 通讯,设置断 点,查看所有的“进出”Fiddler 的数据(指 cookie,html,js,css 等文件)。 Fiddler 要比其他的网络调试 器要更加简单,因为它不仅仅暴露 http 通讯还提供了一个用户友好的格式。
Charles:
是一个 HTTP 代理服务器,HTTP 监视器,反转代理服务器,当浏览器连接 Charles 的代理访问互联网时, Charles 可以监控浏览器发送和接收的所有数据。它允许一个开发者查看所有连接互联网的 HTTP 通 信,这些包括 request, response 和 HTTP headers (包含 cookies 与 caching 信息)。
WPE&封包分析:
是强大的网络封包编辑器,wpe 可以截取网络上的信息,修改封包数据,是外挂制作的常用工具。一般在安全测试中可用来调试数据通讯地址。
Wireshark:
是一个网络封包分析软件。网络封包分析软件的功能是截取网络封包,并尽可能显示出 最为详细的网络封包资料。Wireshark 使用 WinPCAP 作为接口,直接与网卡进行数据报文交换。
TCPDump:
是可以将网络中传送的数据包完全截获下来提供分析。它支持针对网络层、协议、主机、 网络或端口的过滤,并提供 and、or、not 等逻辑语句来帮助你去掉无用的信息。
科来网络分析系统:
是一款由科来软件全自主研发,并拥有全部知识产品的网络分析产品。该系统具有行业领先的专家分析技术,通过捕获并分析网络中传输的底层数据包,对网络故障、网络安全以及网络性能进行全面分析,从而快速排查网络中出现或潜在的故障、安全及性能问题。
在这里我们主要介绍前三种的工具(只针对WEB协议),即BurpSuite、Fiddler、Charles
BurpSuite(首推):
模拟器下载安全证书:夜神模拟器安装Burp Suite证书-CSDN博客
优点:
带有安全测试、能逐步抓包(精准获取)
缺点:
可能会遗失某些数据包,但能在HTTP history中查询到
Fiddler:
Fillder安装配置教程:Fiddler的安装和使用教程(详细)-CSDN博客
模拟器下载安全证书:模拟器上下载Fiddler证书_全黏胶是全棉吗_测试领头羊的博客-CSDN博客
优点:
展示有条理,抓包数据一目了然
缺点:
- 仅限Windows:Fiddler只能在Windows操作系统上运行,不支持其他操作系统。
- 功能相对较少:相比于Burp Suite和Charles,Fiddler的功能相对较少,主要侧重于抓包和调试。
Charles:
Charles安装配置教程:Charles的安装和使用教程(包含使用Charles进行抓包)_charles安装-CSDN博客
优点:
支持各种操作系统,展示有条理,抓包数据一目了然
缺点:
筛选有效内容方面略显逊色
对于非WEB协议,我们可以使用WireShark和科来网络分析系统
WireShark:
对新手较不友好
安装、使用教程:Wireshark的下载安装及简单使用教程_wireshark下载-CSDN博客
科来网络分析系统:
推荐新手使用,不只是抓http/s协议,yyds
安装、使用教程:运维工具之科来网络分析系统安装和使用_科来网络分析系统怎么用_恒悦sunsite的博客-CSDN博客
1、为什么要抓包?
-抓包应用的资产信息进行安全测试
2、抓包对象有那些?
-小程序,APP,桌面应用等
3、抓包协议区别工具?
-有部分应用不走 HTTP/S,需要用到全局协议抓包
4、封包和抓包不同之处?
-零散与整体的区别,封包能精确到每个操作的数据包(简而言之,封包是捕获数据包,抓包是查看数据包的内容)
先把模拟器证书配置完再继续day4
已经在逍遥模拟器上装了BP Charles Fillder的CA证书并且测试安装成功