文章预览
httpd2 是 2024 年 XCTF 决赛中的一道题目。 题目附件:httpd2.zip(http://122.5.204.189:9000/httpd2.zip) 漏洞 题目代码量很少,总共审计出两个漏洞。 第一个漏洞出现在 libctfc.so 中的 genCookie 函数内,这是一个数组越界写入的漏洞。 char *__fastcall genCookie ( const char *a1) { ... v4 = strlen (a1); sub_135A(dest, 0x400 uLL, a1, v4 + 1 ); dest[v4] = 0 ; // overflow sprintf (src, ":%lx" , buf); strncat (dest, src, 0x400 uLL); return dest; } 在上述代码中, dest[v4] = 0 ; 这一行存在数组越界写入的风险。 第二个漏洞出现在 libctfc.so 中的 sub_1429 函数内,这是由于错误的条件判断导致的数组越界。但是,这个漏洞是一个废洞,因为 qword_40C0 数组后没有可以方便利用的数据结构。 __int64 sub_1429 () { ... qword_140C0 = ++v11; //.text:0x1653 if ( v11 != 0x2000 ) { qword_40C0[v11] =
………………………………