On July 19, 2018, eSentire observed an increase in exploitation attempts targeting Small-Office/Home Office (SOHO) network devices manufactured by Dasan and D-Link (Figure 1). This activity was detected with automated analysis via a simple script written in Python using a least squares fit to a line (Equation 1).
Observations of these attacks had steadily declined since the last reported spike in June, when a surge of exploit attempts from over 3000 different source IPs lit up the board, attempting various attacks against D-Link 2750B and Dasan GPON routers (Figure 1) . While none of these exploits appeared to be successful in attacks observed against eSentire customers, it is unknown whether this attack had any success on home networks where these devices are more likely to be deployed. A successful recruitment campaign has the potential to arm the associated threat actor(s) with DDoS artillery and facilitate espionage of private browsing habits. Botnets built using compromised routers may eventually be offered as a service to other threat actors, used for extorting DDoS victims among other uses.
B = (sum(x[i] * y[i] for i in xrange(N)) - 1./N*sum(x)*sum(y)) / (sum(x[i]**2 for i in xrange(N)) - 1./N*sum(x)**2) A = 1.*sum(y)/N - B * 1.*sum(x)/N
Equation 1: fitting trending rules to a line with N = length of a time series vector containing detection counts over time. B is the slope of the line and A is the y-intercept.
The coordination of the botnet suggests a single entity controlled the 3000+ source IPs that tripped router exploit signatures over a ten hour span. This is illustrated by the coordination between the two measures (Figure 2). The more recently announced exploit against Dasan GPON routers (CVE-2018-10562) appeared to have a shorter lifespan than the other two signatures, ending at 10AM.
To further illustrate the coordination of the distributed attack against every organization attacked, consider that the number of IPs that attempted router exploits against each company was roughly equal to the number of times the client experienced a particular signature being triggered (Figure 3). This observation supports the proposition that the 3000+ source IPs involved in the attack were coordinated by a single-source command. Furthermore, this feature could be used as a measure to help automatically detect future coordinated attacks.
Taking IP as shorthand for Distinct Source IPs, outliers in the linear trend existed for IP > 60 for the command injection (Figure 3, left), IP > 120 for the remote code execution attempt, and IP > 150 for the GPON exploit. The higher variability is likely the result of larger-sized organizations having a larger exposed threat surface. This increases the chance an attacking IP may make contact with more than one organizational asset, increasing the number of signatures raised.
A sample of packets from various source IPs involved in this event pointed to a single C2 server hosting malware that appeared. VirusTotal results for the malware indicated similarities with the Mirai botnet. Variants of Mirai code have been spotted in the Satori botnet.
eSentire’s Threat Intelligence team has released an advisory on the topic and continues to monitor the associated signatures.