湖南省最新疫情最新政策神馬seo服務
算法加密
漏洞分析、漏洞勘測、漏洞探針、挖漏洞時要用到的技術(shù)知識
- 存儲密碼加密-應用對象
- 傳輸加密編碼-發(fā)送回顯
- 數(shù)據(jù)傳輸格式-統(tǒng)一格式
- 代碼特性混淆-開發(fā)語言
傳輸數(shù)據(jù) – 加密型&編碼型
安全測試時,通常會進行數(shù)據(jù)的修改增加提交測試
數(shù)據(jù)在傳輸?shù)臅r候進行編碼,對方服務器可能會在接收數(shù)據(jù)時進行解碼再帶入。
這種情況我們應對自己的payload進行同樣的加密或者編碼進行提交,不然傳入的數(shù)據(jù)服務器不認識
當我們要對登錄網(wǎng)站密碼進行爆破時
字典文件:
賬號一般是明文傳輸,不需要更改,替換username=值即可
密碼需要進行密碼算法,需要保證和password=值同等加密,否則無法識別
例如:網(wǎng)站登錄,APP
影響:漏洞探針
傳輸格式 – 常規(guī)&JSON&XML等
在進行測試時,不僅要使用相同的加密/編碼,還要保證相同的格式,數(shù)據(jù)格式不一致也不行
例子:
影響:發(fā)送影響漏洞探針,回顯影響數(shù)據(jù)分析
密碼存儲 – Web&系統(tǒng)&第三方應用
md5加密
zzzcms
md5加鹽,md5(md5(123456).salt)=密文
dz3.5
ASE-128、DES
由密鑰,偏移量,加密模式,填充量等決定,不知道密鑰和偏移量就解不出來,而密鑰和偏移量一般不會寫在數(shù)據(jù)庫中,而是寫在源碼中。要解密就需要拿到解密所需的密鑰,偏移量等。
NTLM
windows密碼一般用該加密
Linux查看/etc/shadow
來看密碼
現(xiàn)在大部分解密都是碰撞式解密,不是算法的逆向還原解密,而是直接進行匹配對比
數(shù)據(jù)庫密碼:
MySQL:mysql數(shù)據(jù)庫中user表
復雜密文沒有規(guī)律,看不出來,只能在源碼中找,看負責加密的代碼塊是什么形式的。
識別算法編碼方法
- 看密文位數(shù)(有些算法的編碼位數(shù)固定的)
- 看密文特征(數(shù)字,字母,大小寫,符號等)
- 看密文存在的地方(Web,數(shù)據(jù)庫,操作系統(tǒng)等應用)
影響
安全后滲透測試
代碼混淆 - 源代碼加密&逆向保護
看不到代碼,無法做代碼審計發(fā)現(xiàn)漏洞了
加密平臺
jsfuck,將js代碼加密
virbox,防逆向
影響:代碼審計
補充:
1.常見加密編碼進制等算法解析
MD5,SHA,ASC,進制,時間戳,URL,BASE64,Unescape,AES,DES等
2.常見加密編碼形式算法解析
直接加密,帶salt,帶密碼,帶偏移,帶位數(shù),帶模式,帶干擾,自定義組合等
3.常見解密解碼方式(針對)
枚舉,自定義逆向算法,可逆向
4.常見加密解碼算法的特性
長度位數(shù),字符規(guī)律,代碼分析,搜索獲取等
傳輸數(shù)據(jù)編碼:
BASE64 URL HEX ASCII
BASE64值是由數(shù)字"0-9"和字母"a-f"所組成的字符串,大小寫敏感,結(jié)尾通常有符號=
URL編碼是由數(shù)字"0-9"和字母"a-f"所組成的字符串,大小寫敏感,通常以%數(shù)字字母間隔
HEX編碼是計算機中數(shù)據(jù)的一種表示方法,將數(shù)據(jù)進行十六進制轉(zhuǎn)換,它由0-9,A-F,組成
ASCII編碼是將128個字符進行進制數(shù)來表示,常見ASCII碼表大小規(guī)則:09<AZ<a~z
-傳輸數(shù)據(jù)加密:同密碼存儲加密
-傳輸數(shù)據(jù)格式:常規(guī)字符串 JSON XML等
密碼存儲加密:
MD5 SHA1 NTLM AES DES RC4
MD5值是32或16位位由數(shù)字"0-9"和字母"a-f"所組成的字符串
SHA1這種加密的密文特征跟MD5差不多,只不過位數(shù)是40
NTLM這種加密是Windows的哈希密碼,標準通訊安全協(xié)議
AES,DES,RC4這些都是非對稱性加密算法,引入密鑰,密文特征與Base64類似
代碼混淆:
JS前端代碼加密:
JS顏文字 jother JSFUCK
顏文字特征:一堆顏文字構(gòu)成的js代碼,在F12中可直接解密執(zhí)行
jother特征:只用! + ( ) [ ] { }這八個字符就能完成對任意字符串的編碼。也可在F12中解密執(zhí)行
JSFUCK特征:與jother很像,只是少了{ }
后端代碼混淆:
PHP .NET JAVA
PHP:亂碼,頭部有信息
.NET:DLL封裝代碼文件,加保護
JAVA:JAR&CLASS文件,,加保護
舉例:加密平臺 Zend ILSpy IDEA
應用場景:版權(quán)代碼加密,開發(fā)特性,CTF比賽等
特定應用-數(shù)據(jù)庫密文加密:
MYSQL MSSQL Oracle Redis等
數(shù)據(jù)顯示編碼:
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
質(zhì)量文章:
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中常見密碼題解密網(wǎng)站總結(jié)
https://blog.csdn.net/qq_41638851/article/details/100526839
3.CTF密碼學常見加密解密總結(jié)
https://blog.csdn.net/qq_40837276/article/details/83080460