抓包/封包/代理

抓包分两类,一类是web协议抓包,一种是TCP、UDP等的协议抓包。
web协议抓包比较常用,比如修改数据包数据什么的。

基础抓包

➢WEB应用站点操作数据抓包 - 浏览器审查查看元素网络监听

抓包功能不一定要依靠抓包软件,浏览器自身也携带了可以抓包的工具。
各个浏览器:F12打开,点击Network/网络 -> 叫法不同,功能相同。可以抓Web协议的数据包。

各个软件抓包-代理抓包

➢APP&小程序&PC抓包HTTP/S数据 -> Charles&Fiddler&Burpsuite
➢程序进程&网络接口&其他协议抓包 -> WireShark&科来网络分析系统
➢通讯类应用封包分析发送接收 -> WPE四件套封包&科来网络分析系统
WPE算外挂类抓包,抓散装动作数据包,能使得动作复位。

详细的查这篇本地文章:SEC学习2023版-0011 > 重点在包转发那边,转发到BP进行测试。

环境配置:

1、安卓模拟器安装搭建
逍遥,雷电,夜神等自行百度下载安装

2、工具相关证书安装指南(SEC学习2023版-0011上就有。)
Charles
https://blog.csdn.net/weixin_45459427/article/details/108393878
Fidder
https://blog.csdn.net/weixin_45043349/article/details/120088449
BurpSuite
https://blog.csdn.net/qq_36658099/article/details/81487491

3、封包抓取调试见课程操作

1、为什么要抓包? -抓包应用的资产信息进行安全测试
2、抓包对象有那些? -小程序,APP,桌面应用等
3、抓包协议区别工具? -有部分应用不走HTTP/S,需要用到全局协议抓包
4、封包和抓包不同之处? -零散整体的区别,封包能精确到每个操作的数据包

知识点:

1、抓包技术应用意义 :将看不见的目标提出来
2、抓包技术应用对象 :exe,安卓,Web
3、抓包技术应用协议 :web协议和非web协议
4、抓包技术应用支持 :BP,茶杯,科莱等
5、封包技术应用意义 :实时数据包抓取,动作散装数据包
总结点:学会不同对象采用不同抓包封包抓取技术分析

基于网络接口抓包-网络接口
基于程序进程抓包-程序进程
基于数据协议抓包-HTTP/S&TCP&UDP
基于应用对象抓包-APP&小程序&PC_UI
基于系统使用抓包-模拟器&WIN&LINUX
基于应用对象封包-WPE动作数据包重放通讯

加密解密

知识点

1、存储密码加密-Web&数据库&系统
2、传输数据编码-各类组合传输参数值
3、代码特性加密-JS&PHP&NET&JAVA
4、数据显示编码-字符串数据显示编码

本课意义

1.了解加密编码进制在安全测试中的存在
2.掌握常见的加密解密编码解码进制互转的操作
3.了解常见的加密解密编码解密进制互转的影响
旨在解决类似疑问,提供思路:
你是否碰到不知道的加密方式?
你是否碰到无法找到的解密平台?
你是否碰到不知道如何解密的字符串?
你是否准备参加CTF比赛补充此类知识点?

详细点:

密码存储加密:
MD5 SHA1 NTLM AES DES RC4
MD5值是32或16位位由数字”0-9”和字母”a-f”所组成的字符串
SHA1这种加密的密文特征跟MD5差不多,只不过位数是40
NTLM这种加密是Windows的哈希密码,标准通讯安全协议
AES,DES,RC4这些都是非对称性加密算法,引入密钥,密文特征与Base64类似
应用场景:各类应用密文,自定义算法,代码分析,CTF安全比赛等

加密解密部分

加密的类型

数据库/网站加密-md5加密

说明:

md5不可逆
尝试加密明文去碰撞密文,对得上则证明对应的明文是对的。
对应的有一些简单的md5碰撞解密

解密:碰撞,枚举

分析密文的特征,密文多少位。
密码明文足够复杂,足以使得当下的计算机解不出来。
md5密文有分为没加盐和有加盐两类。

应用场景:MYSQL MSSQL等

md5(md5('password').'salt')
md5解密不出来,或者搞错了加密算法加密的盐
=> 搞清楚当前网站是什么,运用的加密算法有哪些,对应的爆过什么漏洞等等。
=> 比如用到哪些CMS,对应的CMS出现过哪些对应的漏洞。

系统加密

破解操作系统密码

mimikatz: 破解密码加密形式,其中的加密算法NTLM可以Windows7后的加密密文,破解出密码。Windows7 前会使用LM加密算法。

对称加密与非对称加密

加密算法,以及想要解密密文,对应的参数特别多,少一个都解不出来。
AES解密加密,CTF有考到,有单独的项目考而不是过渡掺杂到web题目当中。
加密模式,填充,数据块,密码,偏移量…… -> 特征与base64相似,尾部位“=”

传输数据编码

类型: BASE64 URL HEX ASCII

BASE64值是由数字”0-9”和字母”a-f”所组成的字符串,大小写敏感,结尾通常有符号=
URL编码是由数字”0-9”和字母”a-f”所组成的字符串,大小写敏感,通常以%数字字母间隔
HEX编码是计算机中数据的一种表示方法,将数据进行十六进制转换,它由0-9,A-F,组成
ASCII编码是将128个字符进行进制数来表示,常见ASCII码表大小规则:09<AZ<a~z(目前很少用到)

举例:

个人博客-URL解码
国外WEB-BASE64解码
搜狐视频-BASE64解码

应用场景:

参数传递(如注入影响),后期WAF绕过干扰写法应用,视频地址还原等

JS前端代码加密:

JS颜文字 jother JSFUCK
颜文字特征:一堆颜文字构成的js代码,在F12中可直接解密执行
jother特征:只用! + ( ) [ ] { }这八个字符就能完成对任意字符串的编码。也可在F12中解密执行
JSFUCK特征:与jother很像,只是少了{ }

加密目的:保护技术保护版权等。代码审计加密代码的解密,或者自己加版权码,加密绕过waf。

后端代码加密:

类型:PHP .NET JAVA

PHP:乱码,头部有信息
.NET:DLL封装代码文件
JAVA:JAR&CLASS文件

举例:Zend ILSpy IDEA
应用场景:版权代码加密,开发特性,CTF比赛等

数据显示编码:

UTF-8 GBK2312等

识别算法编码类型

1、看密文位数
2、看密文的特征(数字,字母,大小写,符号等)
3、看当前密文存在的地方(Web,数据库,操作系统等应用)

加密密文的来源途径:代码数据库等地方翻出来=》网上获得密文对应途径的解题思路。

补充点:

1.常见加密编码进制等算法解析
MD5,SHA,ASC,进制,时间戳,URL,BASE64,Unescape,AES,DES等
2.常见加密编码形式算法解析
直接加密,带salt,带密码,带偏移,带位数,带模式,带干扰,自定义组合等
3.常见解密解码方式(针对)
枚举,自定义逆向算法,可逆向
4.常见加密解码算法的特性
长度位数,字符规律,代码分析,搜索获取等

学习,必须学会总结+分析。