04 2015 档案

摘要:第一题,列车调度(train) 在这个题目中,模拟压栈出栈,同时判断调度方案是否可行。 第二题,隧道(Tunel),通过95% 这道题的关键在于如何在O(1)时间内获取队列中的最大值。提示见邓俊辉老师的数据结构习题解答讲义。 第三题,真二叉树重构(Rebuild),通过95% 提示: 阅读全文
posted @ 2015-04-30 01:06 简单地快乐 阅读(309) 评论(0) 推荐(0) 编辑
摘要:二进制代码分析报告(好水的一个破解) 第一步,language.exe检测出程序加壳,经过Aspack加壳。 第二步,AspackDie.exe脱壳 第三步,language.exe检测脱壳后的程序,发现该程序是使用Delphi编写的。 第四步,将脱壳程序拉入IDA,通过ViewsàStri... 阅读全文
posted @ 2015-04-28 14:56 简单地快乐 阅读(384) 评论(0) 推荐(0) 编辑
摘要:具体原理不清楚,在网上找了找,记录下。 第一步:将ida.cfg中cpp866 version的AsciiStringChars注释掉,把full version的AsciiStringChars取消注释,如下图。 第二步,Options-->Ascii String Style。选择Cha... 阅读全文
posted @ 2015-04-27 12:50 简单地快乐 阅读(1994) 评论(1) 推荐(1) 编辑
摘要:很容易看出是格式化字符串漏洞。这里的格式化字符串漏洞不像传统的那样,格式化字符串是放在bss段中,并没放在栈上,因此利用起来有些困难。 不过,我们可以利用ebp,可以修改函数的ebp,从而能控制函数的流程。 第一步,修改了main's ebp(也就是修改了echo_ebp's ebp指向的内... 阅读全文
posted @ 2015-04-25 00:46 简单地快乐 阅读(925) 评论(0) 推荐(0) 编辑
摘要:第一题Range关键:二分查找,查找不大于一个数的最大下标。 1 #include 2 #include 4 int compare (const void * a, const void * b){ 5 return ( *(int*)a - *(int*)b ); 6 } 7 in... 阅读全文
posted @ 2015-04-09 23:53 简单地快乐 阅读(307) 评论(0) 推荐(0) 编辑
摘要:这个题目在这个链接中分析得很透彻,不再多余地写了。http://bruce30262.logdown.com/posts/245613-sctf-2014-pwn400 exploit:from socket import *import structimport timeshellcode ... 阅读全文
posted @ 2015-04-05 23:56 简单地快乐 阅读(460) 评论(0) 推荐(0) 编辑
摘要:拿到程序后,拉入IDA,大概看了一番后,尝试运行,进一步了解程序的功能。 发现NX enabled,No PIE。 一号是一个猜数字的游戏,二号是一个留言本,三号是打印出留言的内容,四号是退出。 观察IDA中逻辑后,发现一个格式化字符串漏洞。 在三号功能(Print your messa... 阅读全文
posted @ 2015-04-05 16:09 简单地快乐 阅读(834) 评论(0) 推荐(0) 编辑
摘要:题目给出了pwn200和libc.so。使用IDA查看程序,发现逻辑很简单。 使用checksec查看pwn200的安全属性,如下图: 发现NX enabled,No PIE。 在第一次读(0x08048524位置)的时候,可以读取17个字节,观察栈结构: 发现可以将nbytes覆盖... 阅读全文
posted @ 2015-04-04 19:40 简单地快乐 阅读(1727) 评论(5) 推荐(0) 编辑

点击右上角即可分享
微信分享提示