记事本

过滤了分号

过滤了分号后,不能结束语句了,但可以通过二元运算符来。比如 var a = 1 + alert(2) 加号也可以换成减号、乘、除、并、或、异或

sublime 3 build 3065

昨天打开subl3,提示说有新版本,于是更新到build 3065。但还需要稍微破解一下,因为是免费版。 试着enter key,会说key不对;用IDA分析,查找字符串”invalid”,然后基本上锁定了某个关键变量cs:…,在BSS段内,很有可能是保存验证信息的全局变量 然后看这家伙的xref,看了下对其读操作的几个,基本确定这个变量是1的话就验证成功;再找到所有对其写的地方,很多都...

stegano attachment

http://www.wechall.net/challenge/training/stegano/attachment/index.php 下载图片,用Stegsolve打开,发现有additional bytes,共136。于是 tail -c 136 attachment.jpe > 1.zip 解压后得到密码 但是后来看论坛,直接解压图片都可以。因为 zips sto...

+Ma’s reversing

level 0 看html源码,信息在注释里面,用的是substitution。 在http://www.quipqiup.com/index.php,得到 ”THE PASSWORD IS THE SURNAME OF THE MAN WHO SAID THE HIGHEST KNOWLEDGE IS TO KNOW THAT WE ARE SURROU...

HackThis!! main

level 9 点开request页面,发现要提交邮箱地址;提交我们的不行,再检查发现还有hidden的一个地址;修改使其显示出来,然后两个都改为我的邮箱再提交就好。

Training: WWW-Rewrites

http://www.wechall.net/challenge/training/www/rewrite/index.php 比www-basic复杂的是,我们要url rewrite。这需要在httpd.conf里去掉rewrite_module的注释,并且加上 RewriteEngine on RewriteRule ^/nabla/([0-9]+)_mul_([0-9]+).ht...

Training: WWW-Basics

http://www.wechall.net/challenge/training/www/basic/index.php 由于我的机子在内网,所以要先在路由器里设虚拟服务器。ip地址设为我的机子在内网的地址,端口80。然后把要求的文件放到对应地方即可 此外,在httpd.conf里,要把监听的设好,Listen 80

manpage4

这道题从第一次看到,到现在已经好久了…… 首先,这个游戏是叫wumpus,运行时加上参数-s <NUM>可以以我们提供的数做seed生成随机数,这样就保证每次都是一样的。取seed为100,输入SHOOT,1,2即可获胜。 问题还是出在sprintf,可以修改返回地址。关键是如何使字符串足够长。我曾经考虑过ctime的问题,因为其返回值是静态分配的一段空间,可能可以修改,但最...

manpage3

还是那个道理,打开的file descriptor会经过exec保存下来。我最开始的想法是,打开很多文件,然后执行manpage3,那么读密码那里就读空,因为密码文件打不开了 #include <unistd.h> #include <stdlib.h> #include <sys/types.h> #include <sys/stat.h>...

manpage2

问题出在,密码文件打开之后没有关闭,而fd是可以从exec继承的。于是我们先写一个读文件内容的程序 #include <unistd.h> int main () { char buf[64]; lseek(3, 0, SEEK_SET); ssize_t num; while((num=read(3,buf,sizeof buf)) >...