安全学习DAY08_算法加密

算法加密

请添加图片描述

漏洞分析、漏洞勘测、漏洞探针、挖漏洞时要用到的技术知识

  1. 存储密码加密-应用对象
  2. 传输加密编码-发送回显
  3. 数据传输格式-统一格式
  4. 代码特性混淆-开发语言

传输数据 – 加密型&编码型

安全测试时,通常会进行数据的修改增加提交测试

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

这种情况我们应对自己的payload进行同样的加密或者编码进行提交,不然传入的数据服务器不认识

当我们要对登录网站密码进行爆破时

字典文件:

账号一般是明文传输,不需要更改,替换username=值即可

密码需要进行密码算法,需要保证和password=值同等加密,否则无法识别

例如:网站登录,APP

影响:漏洞探针

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

在进行测试时,不仅要使用相同的加密/编码,还要保证相同的格式,数据格式不一致也不行

例子:

影响:发送影响漏洞探针,回显影响数据分析

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

md5加密

zzzcms

md5加盐,md5(md5(123456).salt)=密文

dz3.5

ASE-128、DES

由密钥,偏移量,加密模式,填充量等决定,不知道密钥和偏移量就解不出来,而密钥和偏移量一般不会写在数据库中,而是写在源码中。要解密就需要拿到解密所需的密钥,偏移量等。

NTLM

windows密码一般用该加密

Linux查看/etc/shadow来看密码

现在大部分解密都是碰撞式解密,不是算法的逆向还原解密,而是直接进行匹配对比

数据库密码:

MySQL:mysql数据库中user表

复杂密文没有规律,看不出来,只能在源码中找,看负责加密的代码块是什么形式的。

识别算法编码方法

  1. 看密文位数(有些算法的编码位数固定的)
  2. 看密文特征(数字,字母,大小写,符号等)
  3. 看密文存在的地方(Web,数据库,操作系统等应用)

影响

安全后渗透测试

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

看不到代码,无法做代码审计发现漏洞了

加密平台

jsfuck,将js代码加密

virbox,防逆向

影响:代码审计

补充:

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

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

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

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

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

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

4.常见加密解码算法的特性

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

传输数据编码:

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

-传输数据加密:同密码存储加密

-传输数据格式:常规字符串 JSON XML等

密码存储加密:

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特征:只用! + ( ) [ ] { }这八个字符就能完成对任意字符串的编码。也可在F12中解密执行

JSFUCK特征:与jother很像,只是少了{ }

后端代码混淆:

PHP .NET JAVA

PHP:乱码,头部有信息

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

JAVA:JAR&CLASS文件,,加保护

举例:加密平台 Zend ILSpy IDEA

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

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

MYSQL MSSQL Oracle Redis等

数据显示编码:

UTF-8 GBK2312等

部分资源:

https://www.cmd5.com

http://tmxk.org/jother

http://www.jsfuck.com

http://www.hiencode.com

http://tool.chacuo.net/cryptaes

https://utf-8.jp/public/aaencode.html

https://github.com/guyoung/CaptfEncoder

质量文章:

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

https://mp.weixin.qq.com/s?__biz=MzAwNDcxMjI2MA==&mid=2247484455&idx=1&sn=e1b4324ddcf7d6123be30d9a5613e17b&chksm=9b26f60cac517f1a920cf3b73b3212a645aeef78882c47957b9f3c2135cb7ce051c73fe77bb2&mpshare=1&scene=23&srcid=1111auAYWmr1N0NAs9Wp2hGz&sharer_sharetime=1605145141579&sharer_shareid=5051b3eddbbe2cb698aedf9452370026#rd

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

https://blog.csdn.net/qq_41638851/article/details/100526839

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

https://blog.csdn.net/qq_40837276/article/details/83080460

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值