记事本

Yourself PHP

http://www.wechall.net/challenge/yourself_php/index.php/asdf 因为username被转义了,不能在这注入 但是_$SERVER['PHP_SELF']被直接输出,而且这道题的标题就暗示了要从这里入手 http://www.wechall.net/challenge/yourself_php/index.php/"...

Table Names

http://www.wechall.net/challenge/table_names/index.php 很基本的注入,没有任何检查,3列,用limit 1,1读其他行的信息

Stop us

http://www.wechall.net/challenge/noother/stop_us/index.php 在购买过程中,首先domain数加1,然后再扣钱。如果运行到加完domain扣钱之前,那么就可以不花钱了 在文件开始处我们看到配置ignore_user_abort是false,所以我们就利用这点 在网上查了下其实connection abort还是比较复杂的, ...

Order By Query

http://www.wechall.net/challenge/order_by_query/index.php 用户输入在order by后面出现,只能用盲注 另外由于会检查参数by是否在白名单里,但用的是==,所以只要第一个字符是有效的数字即可 用二分法读内容 by=1,(case when (ascii(substring((select password from users ...

Brainfucked

https://www.wechall.net/challenge/brainfucked/index.php 这道题是jother混淆的javascript。用jother可以编码成字符串或者是函数,如果是字符串那么直接在浏览器里运就可以。这里是函数,实际上是f(something)()的形式,那么只要把something运行就可以 或者将其保存下来,直接用node运,因为没有docu...

Py-Tong

http://www.wechall.net/challenge/space/pytong/index.php 也就是要求两次读的文件内容不同,提示也说了可以用race condition,但不必要 这里我们用named pipe(FIFO),可以通过 mkfifo p 来创建 之后我们之需要让pytong读这个fifo就可以了,先后通过 echo "123" > p echo "...

PHP 0819

http://www.wechall.net/challenge/space/php0819/index.php 这道题要求构造字符串,不能使用引号和其他一些符号 php里可以用heredoc构造字符串,不需要引号。注意结束delimiter后面需要newline,所以 eval=%3c%3c%3cA%0a1337%0aA%3b%0a

PHP 0818

http://www.wechall.net/challenge/noother/php0818/index.php 这道题要求提供一个和3735929054相等的数,但不能包含1-9。 因为正好0是可以的,所以可以用hex,PHP会自作聪明地转化好。原来那个数等于0xdeadc0de,不包含1-9

PHP 0816

http://www.wechall.net/challenge/php0816/index.php 这道题有提示说是逻辑错误。仔细阅读后,发现可以在检查$_GET['src']之前就输出文件内容,也就是说,将mode=hl放在src=solution.php之前

PHP 0815

http://www.wechall.net/challenge/php0815/index.php 这道题要求将传入的参数转为整数。官方的做法是(int) 或 intval(),但这里要求最简单的fix。 用-0就可以保持整数的值不变,同时类型自动转为整数