如何反编译D-Link路由器固件程序(2)

发表于:2013-12-09来源:外刊IT评论作者:不详点击数: 标签:路由器
{ return AUTH_OK; } else { // These arguments are probably user/pass or session info if(check_login(request-0xC, request-0xE0) != 0) { return AUTH_OK; } } return AUTH_FAIL; } 换句话说,如果浏览

  {

  return AUTH_OK;

  }

  else

  {

  // These arguments are probably user/pass or session info

  if(check_login(request->0xC, request->0xE0) != 0)

  {

  return AUTH_OK;

  }

  }

  return AUTH_FAIL;

  }

  换句话说,如果浏览器的User-Agent值是 “xmlset_roodkcableoj28840ybtide”(不带引号),你就可以不经任何认证而能访问web控制界面,能够查看/修改路由器的设置(下面是D-Link路由器(DI-524UP)的截图,我没有 DIR-100型号的,但DI-524UP型号使用的是相同的固件):

Accessing the admin page of a DI-524UP

  访问型号DI-524UP路由器的主界面

  基于HTML页上的源代码信息和Shodan搜索结果,差不多可以得出这样的结论:下面的这些型号的D-Link路由器将会受到影响:

  DIR-100

  DI-524

  DI-524UP

  DI-604S

  DI-604UP

  DI-604+

  TM-G5240

  除此之外,几款Planex路由器显然也是用的同样的固件程序:

  BRL-04UR

  BRL-04CW

  你很酷呀,D-Link。

  脚注:万能的网友指出,字符串“xmlset_roodkcableoj28840ybtide”是一个倒序文,反过来读就是 “editby04882joelbackdoor_teslmx”——edit by 04882joel backdoor _teslmx,这个后门的作者真是位天才!

原文转自:http://www.aqee.net/reverse-engineering-a-d-link-backdoor/