事实上非常多工具多少都使用的比較熟悉了。

可是仍有一些点还是比較有趣以及我不知道的。毕竟第一章,查缺补漏的。

(话说这个成语在高三冲刺的时候,老师用得最多,当时还非常悲哀的一直补东墙。漏西墙。始终认为自己学习的混沌,不成体系= =)

直接回来看内容好了。

总结下来,几个术语:

Penetration test(攻击測试),团队被叫做:Tiger team 或者 Ethic hacker


POC(proof of concept)代码:重现漏洞场景。重现细节。


漏洞发布机构:

CVE(Common Vulnerabilityes and Exposures)

CERT(Computer Emergency Response Team)


VA = ImageBase + RVA


文件偏移地址 = VA - ImageBase - 节偏移地址

---------全部的漏洞类型能够看成两大类------------       

                    1.内存漏洞(堆栈)

    2.web应用漏洞(SQL注入,XSS)

[接着我就依照上面的分类,首先開始了内存漏洞的学习。本书也主要讲的系统内存漏洞]

【小白鼠:crack】

自己写的超级无敌easy crackme

/*
这是一个測试程序,crackme。easy,
just for famliar with tools
*/

#include <stdio.h>
#include <string.h>
#define PASSWORD "123456"

int authen(char *password)
{
return strcmp(PASSWORD,password);
}

int main()
{
char password[1024];

while(1)
{
printf("please input the password: ");
scanf("%s",password);
if( authen(password) )
{
printf("no! you should try again!\n");
}
else
{
printf("Yes! you did it! \n");
break;
}
}

return 0;
}

思路就是定位的if推断语句。改动代码。非常直观。



【主要工具1-IDA】

之前一直玩OD的,IDA用的不多,这次仿照着玩。也玩出了一些基础的东西。 (事实上系统的学都应该晓得的,可是没有系统。所以就是自己玩出来的。)

可能公布的版本号是debug版本号的。所以IDA初始没有办法锁定main。

可是通过随便的玩耍。还是找到了。


[0day]基础工具学习_#define

木有直接定位到main函数。

[0day]基础工具学习_web应用_02

找到一定会使用的scanf函数。

右键选择交叉引用 Xref to。

[0day]基础工具学习_#define_03

非常明显了.再到那个调用的函数。

[0day]基础工具学习_#define_04

然后进去,找到相应的编码了。

[0day]基础工具学习_右键_05

代码的VA是0x40140D。ok下一步,使用loadPE了。


【2.利用loadPE计算文件偏移】

惊悚的发现能够直接改动的。= =

总之无论,一般要改非常长的一段,还是用OD直接改内存的多。

就是这样。

书里面是用UE改的,方法一样。

[0day]基础工具学习_#include_06

[0day]基础工具学习_#include_07

直接改动。74->75 就是  jE--> JNE.

最后输出。

[0day]基础工具学习_#define_08

正确的password已经不对。其它的password都能够bypass了。