Web11-备份是个好习惯

提示词:备份

查看源代码,好像是经过MD5加密的,但是MD5加密出来时32位,这里是64位,应该是两段加密叠加的,并且是一样的

d41d8cd98f00b204e9800998ecf8427e

d41d8cd98f00b204e9800998ecf8427e

扫描了一下网站目录,有一个flag.php,但是是空白的

bash 复制代码
python dirsearch.py -u http://117.72.52.127:18232/

题目提示备份,想到备份文件:/index.php.bak(备份文件)

访问备份网站连接,下载备份文件

记事本打开备份文件,是一段PHP代码,

bash 复制代码
核心验证逻辑:
1.md5($key1)==md5($key2):要求MD5值弱相等(允许哈希碰撞)
2.$key1!==$key2:要求变量内容不相同

即需要两个不同的key,但是两个key的MD5值相同

(1)方法一:MD5无法处理数组,当参数为数组是会返回NULL(key不同,MD5值不存在都为NULL)

bash 复制代码
http://117.72.52.127:18232/?kekeyy1[]=aaa&kekeyy2[]=bb

(2)方法二:PHP弱比较结合哈希碰撞

即使用PHP弱比较==漏洞(key不同,MD5值存在且都为0)

如果两个字符经过md5加密后的值是0exxxxx形式,在科学计数法中会被认为是0*10的几次方的,结果是0。

bash 复制代码
http://117.72.52.127:18232/?kekeyy1=QLTHNDT&kekeyy2=QNKCDZO

可以积累一些常见的PHP弱类型比较进行哈希碰撞

数字类型:

bash 复制代码
s878926199a
0e545993274517709034328855841020

s155964671a
0e342768416822451524974117254469

s214587387a
0e848240448830537924465865611904

s214587387a
0e848240448830537924465865611904

s878926199a
0e545993274517709034328855841020

s1091221200a
0e940624217856561557816327384675

s1885207154a
0e509367213418206700842008763514

s1502113478a
0e861580163291561247404381396064

s1885207154a
0e509367213418206700842008763514

s1836677006a
0e481036490867661113260034900752

s155964671a
0e342768416822451524974117254469

s1184209335a
0e072485820392773389523109082030

s1665632922a
0e731198061491163073197128363787

s1502113478a
0e861580163291561247404381396064

s1836677006a
0e481036490867661113260034900752

s1091221200a
0e940624217856561557816327384675

s155964671a
0e342768416822451524974117254469

s1502113478a
0e861580163291561247404381396064

s155964671a
0e342768416822451524974117254469

s1665632922a
0e731198061491163073197128363787

s155964671a
0e342768416822451524974117254469

s1091221200a
0e940624217856561557816327384675

s1836677006a
0e481036490867661113260034900752

s1885207154a
0e509367213418206700842008763514

s532378020a
0e220463095855511507588041205815

s878926199a
0e545993274517709034328855841020

s1091221200a
0e940624217856561557816327384675

s214587387a
0e848240448830537924465865611904

s1502113478a
0e861580163291561247404381396064

s1091221200a
0e940624217856561557816327384675

s1665632922a
0e731198061491163073197128363787

s1885207154a
0e509367213418206700842008763514

s1836677006a
0e481036490867661113260034900752

s1665632922a
0e731198061491163073197128363787

s878926199a
0e545993274517709034328855841020

字符类型:

bash 复制代码
QLTHNDT
0e405967825401955372549139051580
 
QNKCDZO
0e830400451993494058024219903391
 
EEIZDOI
0e782601363539291779881938479162
 
TUFEPMC
0e839407194569345277863905212547
 
UTIPEZQ
0e382098788231234954670291303879
 
UYXFLOI
0e552539585246568817348686838809
 
IHKFRNS
0e256160682445802696926137988570
 
PJNPDWY
0e291529052894702774557631701704
 
ABJIHVY
0e755264355178451322893275696586
 
DQWRASX
0e742373665639232907775599582643
 
DYAXWCA
0e424759758842488633464374063001
 
GEGHBXL
0e248776895502908863709684713578
 
GGHMVOE
0e362766013028313274586933780773
 
GZECLQZ
0e537612333747236407713628225676
 
NWWKITQ
0e763082070976038347657360817689
 
NOOPCJF
0e818888003657176127862245791911
 
MAUXXQC
0e478478466848439040434801845361
 
MMHUWUV
0e701732711630150438129209816536
相关推荐
不庸.16 小时前
theHarvester 入门教程:从装好到看懂输出
安全·web安全·网络安全·开源·安全性测试
kingx31 天前
Bugku 3122 谷歌小恐龙题解:纯离线逆向 Vault 的 AES-GCM 加密资源(附 Python 解密器)
java·逆向·ctf·bugku·aes-gcm
kingx32 天前
Bugku 326 Baby-heap1 题解:glibc 2.23 堆溢出到 FSOP 劫持 _IO_list_all(附完整 exp)
pwn·ctf·glibc·堆溢出·fsop
FungLeo2 天前
成为全栈·基础补充·Web 安全基础:XSS、CSRF 与 SQL 注入
web安全·网络安全·xss·csrf·sql注入·成为全栈
hengdonghui2 天前
Writeup 4 0xGame 2021 · command (WEB)
web·ctf·rce(远程代码执行)
0xBADCODE3 天前
2026 强网杯 Web 题 cwp · 全链路复盘
前端·安全·web安全·网络安全·系统安全·ctf
迪康Defender4 天前
终端供应链安全:应用白名单与软件正版化检测落地|终端安全治理实践
运维·服务器·网络·安全·web安全·自动化·运维开发
科技小登4 天前
出海高防CDN怎么选?CDN加速、边缘清洗与跨境回源POC指南
tcp/ip·web安全·ddos
是真的小外套5 天前
网络安全实战第21期:一次完整的注入风险验证与记录
安全·web安全
kingx35 天前
Bugku WEB 题解总集:文件包含 / SQLi / 反序列化 / SSTI / 反爬 / 组件漏洞
web安全·网络安全·ctf·bugku