Tags: do not write just a link to original writeup here. please 

Rating:

We're given the following source code:
```php

Find a string that has a MD5 digest equal to itself!


<form>
<label>Answer: </label>
<input type='text' name='md5' />
<input type='submit' />
</form>

Source Code
```
We see that the md5's are compared with == instead of ===, which makes them vulnerable to type juggling vulnerabilities.
In particular, if two strings both start with "0e" and contain numbers afterward, the == operator will always return that they're true. (Both get casted to integers of the form 0 * e ^{the remaining string}, so it returns 0 == 0).

To solve this, I just wrote a quick PHP script to generate strings of this form until one hashed to a hash of this form.

```php

Original writeup (https://github.com/xPowerz/CTF-Writeups/tree/master/2017/HackDatKiwi/MD5%20Games%201).