banner
NEWS LETTER

算法分析&传输加密&数据格式&密文存储&代码混淆&逆向保护

Scroll down

传输数据-编码型&加密型等

数据在传输的时候都需要编码解码,对方服务器在接收数据时,会进行解码再带入

安全测试需要对payload代码进行同样的加密或编码再进行提交。如果不对自己的Payload代码进行同样编码的话,传过去的数据服务器解码后无法识别,测试无效。所以必须保证数据的正确编码格式发送,对方服务器才能正确解码接收。

Base64编码

例子:

解码之前:https://indialms.in/wfp_login.php?r_id=MQ==

解码之后:https://indialms.in/wfp_login.php?r_id=1

MD5加密

例子:
搜狐视频加密:https://tv.sohu.com/v/dXMvMzg1MjM2NzE5LzQyNzUyODUzOC5zaHRtbA==.html
https://tv.sohu.com/v/dXMvMzkzNDE4MzY5LzU3MzI0NzY4NS5zaHRtbA==.html
dXMvMzkzNDE4MzY5LzU3MzI0NzY4NS5zaHRtbA==为Base64加密

登录的数据包:

1
2
username=admin&password=123456
username=admin&password=e10adc3949ba59abbe56e057f20f883e

字典爆破

可以对密码进行破解爆破,替换password=的值即可

需要密码进行算法解密,需要保证password=的值同等加密和数据库的比对上才行

影响:进行漏洞探测的时候,为了不让轻易发现漏洞

传输格式-常规&JSON&XML等

JSON XML常规格式

影响:发送漏洞的时候需要按照对方格式上传,通过回显数据进行分析,分析解码回显的数据情况,判断是对的还是错的

传输常规格式例子:

1
btnPost=%E7%99%BB%E5%BD%95&username=admin and &password=e10adc3949ba59abbe56e057f20f883e&savedate=1

JSON格式例子:

1
2
3
4
5
6
{
"btnPost": "%E7%99%BB%E5%BD%95",
"username": "admin",
"password": "e10adc3949ba59abbe56e057f20f883e and",
"savedate": 1
}

密码存储-Web&系统&三方应用

影响:安全后台渗透测试,没有关键因素包括密匙,偏移量,填充,模式等很难破解

大部分的解密都是碰撞式解密,不是算法的逆向的还原解密

保证了黑客知道了密文也解密不出来,需要知道全部的密匙,偏移量,填充,模式才能解密出来,没有就无法解密

ZZZCMS & Dz3.2 & Dz3.5例子
zzzcms
md5(123456)=密文利用md5加密

Dz3.2
md5(md5(123456).salt)=密文利用两层md5和salt加密

Dz3.5
aes des=密文利用密匙key,偏移量iv,填充,模式加密

Winows & Linux
NTLM是window的加密格式

MSSQL&MYSQL
MYSQL5是MYSQL的加密格式

识别算法编码方法

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

常见加密编码进制等算法解析

MD5,SHA,ASC,进制,时间戳,URL,Base64,Unescape,AES,DES等

常见加密编码形式算法解析

直接加密,带Salt,带密码,带偏移,带位数,带模式,带干扰,自定义组合等

常见解密解码方式(针对)

枚举,自定义逆向算法,可逆向

常见加密解码算法的特性

长度位数,字符规律,代码分析,搜索获取等

代码混淆-源代码加密&逆向保护

影响:影响的是代码审计,无法被别人看到源码,防止被逆向破解(例如添加VIP等功能)

例如:

PHP & JS混淆加密

PHP加密,JSFuck加密

EXE & JAR代码保护

拓展资料:

传输数据编码

Base64 URL HEX ASCII

Base64值是由数字”0-9”和字母”a-f”所组成的字符串,大小写敏感,结尾通常有符号=

URL编码是由数字”0-9”和字母”a-f”所组成的字符串,大小写敏感,通常以%数字字母间隔

HEX编码是计算机中数据的一种表示方法,将数据进行十六进制转换,它由0-9,A-F,组成

ASCII编码是将128个字符进行进制数来表示,常见ASCII码表大小规则:0-9,A-Z,a-z


密码存储加密

MD5 SHA1 NTLM AES DES RC4

MD5值是32或16位位由数字”0-9”和字母”a-f”所组成的字符串

SHA1这种加密的密文特征跟MD5差不多,只不过位数是40

NTLM这种加密是Windows的哈希密码,标准通讯安全协议

AES,DES,RC4这些都是非对称性加密算法,引入密钥,密文特征与Base64类似


代码混淆

JS前端代码加密:JS颜文字 Jother JSFuck

颜文字特征:一堆颜文字构成的JS代码,在F12中可直接解密执行

Jother特征:只用! + ( ) [ ] { }这八个字符就能完成对任意字符串的编码。

JSFuck特征:与Jother很像,只是少了{ }


后端代码混淆

PHP .NET Java

PHP:乱码,头部有信息

.NET:DLL封装代码文件,加保护

Java:JAR&CLASS文件,加保护


特定应用-数据库密文加密

MySQL MSSQL Oracle Redis等


数据显示编码

UTF-8 GBK2312等


部分资源:

在线md5解密破解

在线JSFuck解密

在线CTF编码

在线AES加密解密

在线aaencode

加密编码类型30余种的密文特征分析

CTF中常见密码题解密网站总结

CTF密码学常见加密解密总结


总结


复现:

其他文章
请输入关键词进行搜索