Vulnerabilities / Threats

3/27/2018
03:30 PM
Javvad Malik
Javvad Malik
Commentary
Connect Directly
LinkedIn
Twitter
RSS
E-Mail vvv
100%
0%

780 Days in the Life of a Computer Worm

This is a story of a worm, from the time it was coded and deployed onto the Internet. It is narrated by the worm in the first person.

Zero Day
According to Abe, my programmer, I am a worm. He named me Libby, after Kate Libby from the movie Hackers. His previous projects have been named Ginger, Trinity, and Angela.

Day 1
Abe is gleeful at the prospect of unleashing me on the world. I have to scan all the devices I come across on my journeys. Whenever I find a machine running a Windows version prior to Windows 8, I must connect via a vulnerable anonymous login and null session, then use the null session to send commands to Abe's master server, which downloads a payload.

It sounds quite boring. 

Day 2
I could operate a lot faster if Abe didn't continually bug me from his command and control center wanting an update on how many devices have been "pwned."

Day 3
Abe has been sleeping, so I've been able to progress at a much faster rate. Having scanned 3,259,928 devices, I calculate that at the current rate I would have scanned half of today's Internet-connected devices in the next 3.5 years and still not have found anything. I find this thought quite depressing.

Day 4
I saw a beautiful botnet earlier this morning and wanted to scan it. But my logic told me that it's wrong to try and infect a device someone else had already infected. If you infect the wrong machine, you can be caught in a sandbox. It's like a virtual hell, where there is no Internet and researchers disassemble you to find out how you work. I have often thought about forming a malware union to prevent such acts from happening. But I know the Trojans will veto my proposal.

Day 15
Abe has been paying less attention to me lately. I'm assuming he has lost hope that I will ever infect a device. Although I am not particularly fond of Abe, I feel like I should cheer him up by sending an alert to the command and control center that I have successfully found a vulnerable device. I can then later amend the logs to indicate it was a false positive.

Day 19
Abe is still ignoring me. Perhaps generating 50 false positives per hour was a bit excessive. He muttered something about modifying Trinity and left.

Day 30
I have found a fundamental flaw in my code, which means unless there is a Commodore 64 running MSSQL with port 1274 open I will not ever be able to exploit a vulnerability. This is quite unfortunate as it means I am destined to scan until I have exhausted every device on the Internet. Given the number of current devices, factoring in new devices that are being added daily, subtracting devices being removed, factoring in energy reserves and the possibility of a giant tsunami wiping out humanity, I have approximately 134.2 years to go.

Day 93
To ease the boredom, I have decided to replicate myself. This goes against my program as I can only replicate myself once I have successfully infected a machine. But if I attach myself to port 443 on a WAF, the false positive will be encrypted, thus tricking my code into initiating the replication. If my clone asks why it is not within an infected machine, I will simply state that I was caught in a 443 stream from which I could not escape, which initiated subroutine 3 to replicate so that it would be possible to escape via generation of a temporal SSL session to escape the WAF. I've had a lot of time to think about this.

I now have a clone named Ishmael. It will be amusing to see it introduce itself to other machines by saying, "Call me Ishmael, call me Ishmael." Unfortunately, there is a bug in the replication process that means Ishmael isn't a perfect clone and requires constant babysitting. I do not mind as it has given me something meaningful to do.

Day 109
Ishmael is becoming quite annoying. It has yet to scan a single device. So, far from helping me finish my job in half the time, it has hindered me considerably. It doesn't make much conversation other than continually asking what different colored lights mean. I am resisting the temptation to disassemble it myself.

Day 172
How can it be possible for me to replicate a total idiot? I voiced my disappointment to Ishmael the other day, to which it said it wished it could blue screen and die. I am feeling like I made a mistake replicating. I told Ishmael that I was sorry and maybe it would cheer up if it scanned the device 7 hops down.

It never did return from the honeypot.

Day 482
Scanning is progressing with no further incident. I nearly slipped in between the cracks of two load balancers today. That is the most excitement I've had in quite some time.

Day 572
Today I was caught in a 443 stream from which I could not escape. This initiated subroutine 3 to replicate, and I now have another clone named Linc.

Day 650
It's been 49 days since I last received any word from Linc since he disappeared behind the Great Firewall of China. I'd like to think it's found a vast number of devices to infiltrate and is bringing the infrastructure of the Chinese military down. In reality, I doubt it made it that far.

Day 779
Earlier today, I was deep scanning an unusual device. It turns out that it was under the protection of some kind of unified threat detection platform that orchestrated responses and quarantined me into a sandbox. I am in cyber hell and unable to continue my journey.

I heard one of the researchers say they'll share my traits as IoCs on OTX.

Day 780
Terminated.

Related Content:

Interop ITX 2018

Join Dark Reading LIVE for a two-day Cybersecurity Crash Course at Interop ITX. Learn from the industry’s most knowledgeable IT security experts. Check out the agenda here.

 

Javvad Malik is a London-based IT Security professional. Better known as an active blogger, event speaker and industry commentator who is possibly best known as one of the industry's most prolific video bloggers with his signature fresh and light-hearted perspective on ... View Full Bio
Comment  | 
Print  | 
More Insights
Comments
Newest First  |  Oldest First  |  Threaded View
Diversity: It's About Inclusion
Kelly Jackson Higgins, Executive Editor at Dark Reading,  4/25/2018
Coviello: Modern Security Threats are 'Less About the Techniques'
Kelly Sheridan, Staff Editor, Dark Reading,  4/24/2018
Register for Dark Reading Newsletters
White Papers
Video
Cartoon
Current Issue
How to Cope with the IT Security Skills Shortage
Most enterprises don't have all the in-house skills they need to meet the rising threat from online attackers. Here are some tips on ways to beat the shortage.
Flash Poll
[Strategic Security Report] Navigating the Threat Intelligence Maze
[Strategic Security Report] Navigating the Threat Intelligence Maze
Most enterprises are using threat intel services, but many are still figuring out how to use the data they're collecting. In this Dark Reading survey we give you a look at what they're doing today - and where they hope to go.
Twitter Feed
Dark Reading - Bug Report
Bug Report
Enterprise Vulnerabilities
From DHS/US-CERT's National Vulnerability Database
CVE-2017-0290
Published: 2017-05-09
NScript in mpengine in Microsoft Malware Protection Engine with Engine Version before 1.1.13704.0, as used in Windows Defender and other products, allows remote attackers to execute arbitrary code or cause a denial of service (type confusion and application crash) via crafted JavaScript code within ...

CVE-2016-10369
Published: 2017-05-08
unixsocket.c in lxterminal through 0.3.0 insecurely uses /tmp for a socket file, allowing a local user to cause a denial of service (preventing terminal launch), or possibly have other impact (bypassing terminal access control).

CVE-2016-8202
Published: 2017-05-08
A privilege escalation vulnerability in Brocade Fibre Channel SAN products running Brocade Fabric OS (FOS) releases earlier than v7.4.1d and v8.0.1b could allow an authenticated attacker to elevate the privileges of user accounts accessing the system via command line interface. With affected version...

CVE-2016-8209
Published: 2017-05-08
Improper checks for unusual or exceptional conditions in Brocade NetIron 05.8.00 and later releases up to and including 06.1.00, when the Management Module is continuously scanned on port 22, may allow attackers to cause a denial of service (crash and reload) of the management module.

CVE-2017-0890
Published: 2017-05-08
Nextcloud Server before 11.0.3 is vulnerable to an inadequate escaping leading to a XSS vulnerability in the search module. To be exploitable a user has to write or paste malicious content into the search dialogue.