vortex10
由于time(0)的值的大致范围是知道的,关键就是v12的值。这里v12>>31会得到0xffffffff或是0x0,接下来的>>24就会得到0xff或是0x0。于是最终范围在128-256=-128与128+256=384之间,可以穷举出来。另一方面,我们要读他的数,并反馈。与vortex0类似,我还是不知道怎么用shell,...
View Articlemanpage0
有2点:execve,如果ST_NOSUID没有设的话,新执行的程序的rid不变,eid会变如果suid设了,saved suid也会被保存为eid,这样我们就可以在之后用setuid来恢复setuid如果权限够了(root?),就把2个id都设了;否则只设eid,rid和saved suid不变于是还是溢出,不过shellcode中要先恢复权限...
View Articlemanpage1
exec的manual里是这么说的Except for SIGCHLD, signals set to be ignored (SIG_IGN) by the calling process image shall be set to be ignored by the new process image.于是我们先把SIGTERM设为忽略,再调用manpage1 #include...
View Articlemanpage3
还是那个道理,打开的file descriptor会经过exec保存下来。我最开始的想法是,打开很多文件,然后执行manpage3,那么读密码那里就读空,因为密码文件打不开了 #include <unistd.h>#include <stdlib.h>#include <sys/types.h>#include <sys/stat.h>#include...
View ArticleTraining: WWW-Basics
http://www.wechall.net/challenge/training/www/basic/index.php由于我的机子在内网,所以要先在路由器里设虚拟服务器。ip地址设为我的机子在内网的地址,端口80。然后把要求的文件放到对应地方即可此外,在httpd.conf里,要把监听的设好,Listen 80
View ArticleTraining: 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]+).html...
View ArticleHackThis!! main
level 9点开request页面,发现要提交邮箱地址;提交我们的不行,再检查发现还有hidden的一个地址;修改使其显示出来,然后两个都改为我的邮箱再提交就好。
View Article+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 SURROUNDED BY MYSTERY”
View Articlestegano attachment
http://www.wechall.net/challenge/training/stegano/attachment/index.php下载图片,用Stegsolve打开,发现有additional bytes,共136。于是tail -c 136 attachment.jpe > 1.zip解压后得到密码但是后来看论坛,直接解压图片都可以。因为zips store all...
View Articlevortex11
这道题是在strawdog提示下做出来的。他也说其实可以不用去读phk代码,我连链接的文章都没看完……还是一步步来,打印变量的地址,发现第一次malloc(0x10)和malloc(0x800)之间相距0x1000+48。这0x1000用来放两个0x800,然后那48bytes应该就是一些信息了。打印那部分内存,并对应到struct pginfo,void...
View Articlevortex12
这道题和vortex8几乎是一样的,只是题目说了栈不能执行,所以只能ROP了。我开始还想用mprotect来恢复执行权限,但要传的参数里有\x00,比如地址必须是page...
View Articlevortex13
这道题和vortex12一样是猥琐流……题目说了栈还是不能执行,所以还是ROP。但这里陷入了思维定式,主要还是因为vortex12的影响,让我觉得还要修改got。但ROP不只是修改got,直接改返回地址也是可以的;而vortex12里也可以在主线程里改返回地址,但那样没用因为主线程已经去掉euid了。这道题的输入限制在20个字符,如果想修改got几乎是不可能的了……具体地,想要直接修改返回地址为sy...
View ArticleSimpleVM
这是tiger给的一个ELF文件,普通用户似乎无法执行?以root执行后要输入东西,然后有判断具体地,用readelf -a可以发现文件是比较畸形的。而且entry point还在mmap映射区域之外?但从网上搜的结果,映射时还是会映射page size的整数倍;而想这个文件区域13c7之后还有内容,也会被映射到内存。所以entry point处的内容为 hexdump -C -v -s 5084...
View Articlevortex14
这道题提供了一个文件,是hexdump了server和client的通信首先根据<和>的个数及前后字符,我们判断出通信的流程是:server->client, client->server,...
View Articlebuild edb on x86
我想在32位的环境下用edb,按理来说是支持的,但编译时发现他认为是在64位下面……可能还是和chroot有关。在网上搜了半天也没找到什么好的结果,最后用的是笨办法,把src/src.pro和plugins/plugins.pri里面头文件路径都用成x86,再编译就可以了
View Article