记录黑客技术中优秀的内容, 传播黑客文化,分享黑客技术精华

[译文] 逆向分析 D-Link backdoor

2013-10-15 15:00

在 dlink 的升级包 firmware v1.13中,作者下载放入IDA中分析,发现了异样,

dir-100_loaded_in_ida.png

接着查看了带有“alpha”字串的自定义函数:

alpha_functions.png

alpha_auth_check  这个函数很有意思。

它在不同地方被调用,着重分析alpha_httpd_parse_request:这个地方

alpha_auth_check_call.png

alpha_auth_check 接受一个来自 $s2的寄存器的参数。如果返回-1 结束,否则 表示通过验证。

追踪$s2的值,发现它是一个数据结构的指针,这些指针指向的值则是http 请求的header头和url

大致是:

struct http_request_t

{
char unknown[0xB8];
char *url; // At offset 0xB8 into the data structure
};

int alpha_auth_check(struct http_request_t *request);

pha_auth_check 函数功能非常简单,strcmp 比较下http_request_t结构的一些值,然后调用check_login。 如果strcmp 或者check_login 成功直接return 1 否则return -1

auth_check_code.png

最终发现比较的值 竟然是 “xmlset_roodkcableoj28840ybtide” 这么一串字符。。。。

google 发现老毛子1年前 发现这个有趣的字符串

user_agent_strcmp.png

确定下来 上面指针指向的是User-Agent的内容:

user_agent_struct_1.png 

if(strstr(header, "User-Agent:") != NULL)

{
http_request_t->0xD0 = header + strlen("User-Agent:") + strspn(header, " \t");
}

backdoor:

向路由器发送请求  user-agent:xmlset_roodkcableoj28840ybtide

就可以通过验证,不需输入密码验证。

in_like_flynn.png

DIR-100

DI-524

DI-524UP

DI-604S

DI-604UP

DI-604+

TM-G5240

http://www.devttys0.com/2013/10/reverse-engineering-a-d-link-backdoor/

英文原文:Reverse Engineering a D-Link Backdoor

[译文地址]

提示:xmlset_roodkcableoj28840ybtide,反过来看是:editby 04882 joel backdoor_teslmx

英文原文:Reverse Engineering a D-Link Backdoor

中文译文:[译文] 逆向分析 D-Link backdoor

相关吐槽:

1#

病狗 (谁淫荡啊谁淫荡) | 2013-10-14 21:53

。。。

2#

DM_ | 2013-10-14 22:02

给跪了 但我还是想知道怎么把后门写进去

3#

大师哥 | 2013-10-14 22:15

@DM_ 说的也是。。。

4#

null (专注查库一百年。) | 2013-10-14 22:37

厂商自己放后门啊,鄙视!

5#

园长 (你在身边就是缘,缘分写在数据库里面。) | 2013-10-14 22:48

不厚道啊

6#

无敌L.t.H (:‮门安天京北爱我) | 2013-10-15 09:06

应该是留给生产线刷机用的……

7#

huliang | 2013-10-15 09:26

真拉风~~~

知识来源: lcx.cc/?i=3951

阅读:122675 | 评论:0 | 标签:无

想收藏或者和大家分享这篇好文章→复制链接地址

“[译文] 逆向分析 D-Link backdoor”共有0条留言

发表评论

姓名:

邮箱:

网址:

验证码:

公告

九层之台,起于垒土;黑客之术,始于阅读

推广

工具

标签云