if ( $_POST['param1'] !==$_POST['param2'] && md5($_POST['param1']) === md5($_POST['param2'])){
echo "yes";
}

这串字符好绕吗?答案是肯定的,php的md5函数处理数组时直接返回null,两个参数都为数组类型就好了

?param1[]=1&param2[]=2  
if ( (string)$_POST['param1'] !==  (string)$_POST['param2'] && md5($_POST['param1']) === md5($_POST['param2'])){
    echo "yes";
    }  

这串呢?一上来就把你传的参数转化为string类型,所以用数组的方法是不行了。

只能是MD5碰撞了,就是不相同的字符恰好有着一样的MD5。   

fastcoll_v1.0.0.5.exe工具可以给我弄出来。  

这个时候我们生成了两个不一样的txt文件,却有着相同的md5值。

文件的内容怎么传进去呢?

网上搜集到了很多姿势:

①直接在前端构造表单,input为file的输入框

②python脚本直接导入requests用post的方式提交f.read()的值

③burp

④直接把文件的内容url编码提交,这是因为服务器端会解码,解出原来的内容,而且不会受到特殊字符的干扰,比如啪来一个控制字符,截断字符的干扰。

⑤拖到winhex里面,复制出十六进制,然后用hackbar的hex转char,但是这个方法会受到影响,因为字符特殊直接在浏览器输入的话很有可能会出错,就是第四条说的。值得注意的是,不要直接从winhex里面复制出来,因为f.read()和hex转化为char和winhex里面是不一样的,一般的字符看起来是一样的,但是很多特殊字符都是不一样的。

总的来说,思路就是md5后的值相同,关键就是怎么把文件的内容没有差错的提交上去。

已经编码好的一个payload

param1=
%D89%A4%FD%14%EC%0EL%1A%FEG%ED%5B%D0%C0%7D%CAh%16%B4%DFl%08Z%FA%1DA%05i%29%C4%FF%80%11%14%E8jk5%0DK%DAa%FC%2B%DC%9F%95ab%D2%09P%A1%5D%12%3B%1ETZ%AA%92%16y%29%CC%7DV%3A%FF%B8e%7FK%D6%CD%1D%DF/a%DE%27%29%EF%08%FC%C0%15%D1%1B%14%C1LYy%B2%F9%88%DF%E2%5B%9E%7D%04c%B1%B0%AFj%1E%7Ch%B0%96%A7%E5U%EBn1q%CA%D0%8B%C7%1BSP
&param2=
%D89%A4%FD%14%EC%0EL%1A%FEG%ED%5B%D0%C0%7D%CAh%164%DFl%08Z%FA%1DA%05i%29%C4%FF%80%11%14%E8jk5%0DK%DAa%FC%2B%5C%A0%95ab%D2%09P%A1%5D%12%3B%1ET%DA%AA%92%16y%29%CC%7DV%3A%FF%B8e%7FK%D6%CD%1D%DF/a%DE%27%29o%08%FC%C0%15%D1%1B%14%C1LYy%B2%F9%88%DF%E2%5B%9E%7D%04c%B1%B0%AFj%9E%7Bh%B0%96%A7%E5U%EBn1q%CA%D0%0B%C7%1BSP

MD5碰撞的更多相关文章

  1. 初识md5碰撞与crc32碰撞

    现在是晚上23:29.写这篇文章呢,是因为早些时候我胃疼,是因为凉导致的胃疼.凉呢喝了一些热水,喝完热水胃倒是不疼了,但是由于我喝的是茶叶开水,于是就导致失眠了.想来想去这漫漫长夜也没意思,于是就决定 ...

  2. i春秋——“百度杯”CTF比赛 十月场——GetFlag(md5碰撞、文件包含、网站绝对路径)

    需要提交的captcha满足等式,肯定就是MD5碰撞了 附上脚本 import hashlib def func(md5_val): for x in range(1,100000000): md5_ ...

  3. 成理信安协会反序列化01-利用fastcoll实现md5碰撞

    虽然是反序列化的题目,但主要考点在利用fastcoll实现md5碰撞. 直接上源码 <?php show_source(__FILE__); class CDUTSEC { public $va ...

  4. “百度杯”CTF比赛 十月场-Getflag(md5碰撞+sql注入+网站绝对路径)

    进去md5碰撞,贴一下脚本代码 import hashlib def md5(value): return hashlib.md5(str(value).encode("utf-8" ...

  5. MD5碰撞和MD5值(哈希值)相等

    md5的碰撞 0e开头的md5和原值: s878926199a 0e545993274517709034328855841020 s155964671a 0e342768416822451524974 ...

  6. md5 collision(md5碰撞)之记录一些MD5值

    md5 collision之记录一些MD5值   “Magic Hash”的PHP漏洞可以使得攻击者非法获取用户的账号信息.   漏洞原因: PHP以一种特定的方式处理被哈希的字符串,攻击者可以利用其 ...

  7. MD5 密码破解 碰撞 网站

    MD5反向查询网站 http://www.cmd5.com/ 文件MD5值查询网站 http://www.atool.org/file_hash.php 个人对密码破解的理解 1.使用MD5对密码加密 ...

  8. MD5 SHA1 哈希 签名 碰撞 MD

    Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...

  9. MD5强碰撞

    关卡一         md5弱比较,为0e开头的会被识别为科学记数法,结果均为0 payload param1=QNKCDZO&param2=aabg7XSs 关卡二         md5 ...

随机推荐

  1. LeetCode Word Ladder 找单词变换梯

    题意:给出两个单词,以及一个set集合,当中是很多的单词.unordered_set是无序的集合,也就是说找的序列也是无序的了,是C++11的标准,可能得升级你的编译器版本了.要求找出一个从start ...

  2. 为什么表单中post接受数据是获取name值而不是id值

    感谢解惑者:http://blog.csdn.net/u013451157/article/details/78503831 表单(form)的控件名,提交的数据都用控件的name而不是id来控制.  ...

  3. IOS 偏好设置数据 存 取(Preferences文件夹)

    很多iOS应用都支持偏好设置,比如保存用户名.密码.字体大小等设 置,iOS提供了一套标准的解决方案来为应用加入偏好设置功能 每个应用都有个NSUserDefaults实例,通过它来存取偏好设置 比如 ...

  4. 2018.10.24 NOIP2018模拟赛 解题报告

    得分: \(100+0+100=200\)(\(T2\)悲惨爆\(0\)) \(P.S.\)由于原题是图片,所以我没有上传题目描述,只有数据. \(T1\):query(点此看题面) 熟悉主席树的人都 ...

  5. UIButton 加载网络图片

    以后就可以 用这个分类   UIButton轻松加载网络图片了, UIButton+WebCache.h #import <UIKit/UIKit.h> @interface UIButt ...

  6. 在maven项目中 配置代理对象远程调用crm

    1 在maven项目中配置代理对象远程调用crm 1.1 在项目的pom.xml中引入CXF的依赖 <dependency> <groupId>org.apache.cxf&l ...

  7. react的ant design的UI组件库

    PC官网:https://ant.design/ 移动端网址:https://mobile.ant.design/docs/react/introduce-cn antd-mobile :是 Ant ...

  8. javascript oo实现

    很久很久以前,我还是个phper,第一次接触javascript觉得好神奇.跟传统的oo类概念差别很大.记得刚毕业面试,如何在javascript里面实现class一直是很热门的面试题,当前面试百度就 ...

  9. IE支持直接查看Json数据注册表代码

    Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\MIME\Database\Content Type\application/json] ...

  10. jupyter notebook(一)——anaconda安装后jupyter不能自动跳转网页

    1.问题描述 之前没有遇到过.这次重装系统,发现安装anaconda这个集成版python后,jupyter notebook打开后不能自动跳转打开的交互网页. 系统是windows7.anacond ...