Boffins unveil SSD-Insider++, promise ransomware detection and recovery right in your storage
- Reference: 1631181612
- News link: https://www.theregister.co.uk/2021/09/09/boffins_unveil_ssdinsider_promise_ransomware/
- Source link:
The group includes engineers from Korea’s Inha University, Daegu Institute of Science and Technology, and the Cyber Security Department at Ewha Womans University (EWU) as well as a researcher from the University of Central Florida in the US.
"I came up with the idea of firmware level detection because I know that many [users] don't install anti-ransomware software," DaeHun Nyang, PhD, at EWU told The Register of the origin of the team's research project. "So I thought that it would be good if we can protect people not having anti-ransomware installed on their computers by providing them with an anti-ransomware-intrinsic SSD.
[1]
"Fortunately, my colleague Sungjin [Lee] was working on NAND flash, and he knew it would be easy to recover the data considering NAND flash's delayed deletion."
[2]
[3]
The core concept of SSD-Insider++ is relatively simple: look for patterns of drive activity corresponding to ransomware attacks, where files are encrypted and the required decryption key ransomed off, and stop them in their tracks. Rather than doing so in software, however, it does it directly on the storage device itself - by running on the controller hardware.
"When ransomware activity is detected by SSD-Insider++, input/output to the storage is suspended," Nyang explained. "During the suspension, users can remove the ransomware process."
[4]
In some ways, SSD-Insider++ is akin to the "antivirus" floppy drives of the Commodore Amiga era. Where a physical switch was once used to prevent unexpected writes to a floppy disk's boot sector, SSD-Insider++ relies on clever analysis to spot unwanted patterns - and then locks the drive, warning the user through a companion application that they've been infected.
[5]DRAM-as-cache is too expensive for even Facebook – Zuck now blending it with NVM SSD drives
[6]After quietly switching to slower NAND in an NVMe SSD, Western Digital promises to be a bit louder next time
[7]SK hynix to create US-HQ'd NewCo for Intel's outgoing $9bn NAND biz
[8]Cisco discloses self-sabotaging SSD bug that causes rolling outages for some Firepower appliances
SSD-Insider++ isn't just about detecting ransomware, though: its creators claim it can also reverse any resulting damage to data in a matter of seconds. "SSD-Insider++ does not create any copies of data," the team wrote in the paper.
"Instead, it leverages the operational characteristics of an SSD that keeps old versions of data to hide the out-of-place update nature of NAND flash. This enables us to back up original files without any extra copies and to instantly roll back infected files if necessary."
The result, according to testing on in-the-wild and lab-grade malware samples, is a system which is capable of detecting 100 per cent of tested ransomware attacks and reversing the damage within 10 seconds of encryption beginning - and at the relatively minor cost of a 12.8 per cent to 17.3 per cent increase in latency and a worst-case throughput drop measured at around 8 per cent.
"We have evaluated SSD-Insider++ using real-world and in-house ransomware programs, including WannaCry and Mole, while various background applications are running," the team wrote. "Our implementation of SSD-Insider++ has 100 per cent detection accuracy with almost 0 per cent FRR/FAR [False Rejection Rate and False Acceptance Rate] in most cases with shorter than 10 seconds of detection latency.
[9]
"We also have confirmed that SSD-Insider++ recovers encrypted files within one second without any data loss.
"Our evaluation results showed that SSD-Insider++ was accurate and fast for detection, and it could perfectly recover an infected SSD without any data loss."
A major selling point of the technology is that it exists purely in firmware - meaning it could potentially be added to existing SSDs without the need for any hardware modifications. "I believe that the key feature of SSD-Insider++ can be implemented without additional resources," Sungjin Lee, PhD, at Daegu Institute of Science and Technology told The Register .
"To implement some advanced features like entropy-based detection, however, extra hardware resources - e.g., higher performance Arm CPU or hardware accelerators - would be needed. These days SSDs are evolving to embrace more powerful hardware resources - e.g., Cortex-A Arm CPU, NPU [Neural Processing Unit], FPGA, and encryption/decryption engines - and thus I expect that such a hardware requirement wouldn't be a serious obstacle for a wide adoption of SSD-Insider++."
The theoretical ability to bring ransomware protection to existing SSDs at a relatively low performance cost doesn't have companies beating down the researchers' doors, however. "We have approached several companies here in Korea, but not yet found any company to apply this technology," Nyang told us of the team's efforts to bring SSD-Insider++ to the masses.
"They are very conservative in adopting new technology especially if it may lead to even slight performance degradation, [but] we are interested in commercialising this system and [are] still working [on it]."
While focused on solid-state storage, there's the potential to expand the concept to certain other storage devices too. "SSD-Insider++ cannot be used for conventional HDDs where user data is updated in-place. For recent HDDs - e.g., SMR [Shingled Magnetic Recording] drives - based on append-only magnetic media, the same idea of SSD-Insider++ can be directly applied," Lee told us.
"In addition, compared to SSDs, HDDs employ low-end CPUs and thus SSD-Inside++ may cause non-negligible overheads - but a powerful computing unit might be unnecessary, considering [the] low throughput and long latency of HDDs."
"Unfortunately, this new feature may not be foolproof," Jake Moore, security expert at ESET UK, told The Register in a statement designed to temper expectations. "The function leverages a delay in deletion which means that ransomware developers would and could still bypass this feature with the knowledge of how this antidote operates.
"With this level of commitment into protection, a standard backup process would still be efficient and is what the majority of companies already adhere to. It is, however, the start of better processes in the battle against the 21st century nemesis which still causes havoc around the world on a daily basis."
The paper on SSD-Insider++, SSD-Assisted Ransomware Detection and Data Recovery Techniques , has been published in the journal [10]IEEE Transactions on Computers under closed-access terms. ®
Get our [11]Tech Resources
[1] https://pubads.g.doubleclick.net/gampad/jump?co=1&iu=/6978/reg_onprem/storage&sz=300x50%7C300x100%7C300x250%7C300x251%7C300x252%7C300x600%7C300x601&tile=2&c=2YTovv-r5uDxoUdGZJPYhRwAAAFE&t=ct%3Dns%26unitnum%3D2%26raptor%3Dcondor%26pos%3Dtop%26test%3D0
[2] https://pubads.g.doubleclick.net/gampad/jump?co=1&iu=/6978/reg_onprem/storage&sz=300x50%7C300x100%7C300x250%7C300x251%7C300x252%7C300x600%7C300x601&tile=4&c=44YTovv-r5uDxoUdGZJPYhRwAAAFE&t=ct%3Dns%26unitnum%3D4%26raptor%3Dfalcon%26pos%3Dmid%26test%3D0
[3] https://pubads.g.doubleclick.net/gampad/jump?co=1&iu=/6978/reg_onprem/storage&sz=300x50%7C300x100%7C300x250%7C300x251%7C300x252%7C300x600%7C300x601&tile=3&c=33YTovv-r5uDxoUdGZJPYhRwAAAFE&t=ct%3Dns%26unitnum%3D3%26raptor%3Deagle%26pos%3Dmid%26test%3D0
[4] https://pubads.g.doubleclick.net/gampad/jump?co=1&iu=/6978/reg_onprem/storage&sz=300x50%7C300x100%7C300x250%7C300x251%7C300x252%7C300x600%7C300x601&tile=4&c=44YTovv-r5uDxoUdGZJPYhRwAAAFE&t=ct%3Dns%26unitnum%3D4%26raptor%3Dfalcon%26pos%3Dmid%26test%3D0
[5] https://www.theregister.com/2021/09/03/facebook_cachelib_nvm_not_dram/
[6] https://www.theregister.com/2021/08/27/western_digital_components/
[7] https://www.theregister.com/2021/08/05/sk_hynix_intel_newco/
[8] https://www.theregister.com/2021/05/20/cisco_firepower_ssd_bug/
[9] https://pubads.g.doubleclick.net/gampad/jump?co=1&iu=/6978/reg_onprem/storage&sz=300x50%7C300x100%7C300x250%7C300x251%7C300x252%7C300x600%7C300x601&tile=3&c=33YTovv-r5uDxoUdGZJPYhRwAAAFE&t=ct%3Dns%26unitnum%3D3%26raptor%3Deagle%26pos%3Dmid%26test%3D0
[10] https://www.computer.org/csdl/journal/tc/2021/10/09146350/1lFF1xnRD44
[11] https://whitepapers.theregister.com/
Re: Bin dun before...
You misread the article. Thats exactly the command as it exists in the SSD firmware ;)
Re: Bin dun before...
That's the feature of VMS which I miss more than any other. I'd pay good money to have it available on Linux.
Re: Bin dun before...
I get something like it by using the [1]NILFS2 filesystem . It has some downsides (no ACLs, for example), but I have been using it for years. Convert checkpoint to snapshot, mount snapshot read-only, recover previous version of file going back as far as the circular buffer allows. Of course, it might not be suitable for your particular use case, but I landed on it after looking for VMS-like behaviour with file versioning.
It is a pity that btrfs and bcachefs apparently can't do the same. I would love to be shown to be wrong.
NN
[1] https://en.wikipedia.org/wiki/NILFS
"Unfortunately, this new feature may not be foolproof"
This is a neat idea conceptually. However if widely taken up, technologies such as this could also lead to rapid escalation of the threat, as perpetrators often have access to significant expertise and can counter relatively narrowly specified mechanisms quite soon after they are implemented.
I suspect that the strongest protection is still not allowing ransomware (or any other malware) to enter the organisation in the first place (or at least catching at or near the boundary before it gets a hold). It's interesting that the Jericho project didn't persist, or lead to widespread changes in the way we protect our infrastructures. De-perimeterisation never really took off.
Re: "Unfortunately, this new feature may not be foolproof"
It's not a panacea but as part of a multi-layered defense I think it may have more value that you are crediting.
Re: "Unfortunately, this new feature may not be foolproof"
rapid escalation of the threat
That was my initial take, too. It's unlikely you'd put all the functionality in the firmware - there'd presumably have to be some external interface through which suspected corruption could be reported and recovery attempted. And as soon as you have an external interface that allows the reassignment of data blocks between files, you have another potential exploit path.
Having said that, one of the big hazards of ransomware is not noticing until your entire backup cycle has also been corrupted. If you can come up with an early alert, that would be incredibly valuable. And presumably you could apply the same principles of detection to any storage medium that avoids rewriting blocks in place - either at the device level (like shingled magnetic recording) or at the filesystem level (journalling file systems).
"detecting infections and reverting unexpected encryption"
That an SSD can detect infection is already a surprise to me, but what really takes the cake is the "unexpected encryption" part of that declaration.
Please explain to me how an SSD can tell if an encryption is expected or not.
How can an SSD make the difference between the used deciding to encrypt files on the SSD and malware residing in RAM doing it ?
I would really like to know, and then explain to me how a malware author is not going to be able to replicate that.
Re: "detecting infections and reverting unexpected encryption"
The vast majority of files have a header that does not change, if suddenly a lot of files are having their headers muddled up then it's a high probability something wrong is happening.
That's the easiest approach, I assume they've got some other detection modes running.
As for miscreants fooling the detection, well inevitably after a while - not encrypting the first (and maybe last) few K of each file might be enough.
As with all white hat/black hat battles it's an ongoing effort of attack and counter-attack - as long as the firmware can be (safely and securely) updated, but that introduces a new attack vector so it can all rapidly get quite complicated.
Re: "detecting infections and reverting unexpected encryption"
How does the firmware know what constitutes a file? At that level they're just blocks; they don't become files until they're processed by the filesystem and the filesystem driver is in the kernel* (ie software)
That's a rhetorical question, by the way.
(* or at least hooked into it)
Re: "detecting infections and reverting unexpected encryption"
Valid points, this would be far better implemented at the file system level and probably easier too which makes me wonder why the file system writers haven't come up with something along these lines.
Re: "detecting infections and reverting unexpected encryption"
Going further, how can a SSD tell if a file is encrypted or not? What is to prevent the ransomware creators triggering a TRIM command after a few encryptions? How does the system detect between ransomware encrypting files and a safe, bulk file operation?
It is an interesting concept. But they aren't thinking like the baddies. To thwart this system, all the ransomware has to do is encrypt a few files, run a TRIM operation, and then repeat until all the files are encrypted. The ransomware could even stagger the operation -- do 4 in the morning, another 4 in the afternoon, another 4 in the evening. It would, at least, stop the older ransomware infections. But I can already see how the blackhats can get around it.
Re: "detecting infections and reverting unexpected encryption"
Duh. Its you thats not thinking it through. If the solution is in firmware the Trim command is also subject to interception and nulling/modification by this solution. Trim becomes "Trim everything except 1 known good copy".
Re: "detecting infections and reverting unexpected encryption"
Going further, how can a SSD tell if a file is encrypted or not? What is to prevent the ransomware creators triggering a TRIM command after a few encryptions?
TRIM is an irrelevance here. For a start is doesn't actually delete any data, it simply marks logical blocks as not containing needed data so they can be overwritten without the data needing to be preserved first - the data itself gets overwritten at a later point on an as-needed basis.
Secondly it refers to logical blocks only. In this case where data is (logically) overwritten in place the physical blocks are replaced by spares. The logical blocks are still valid so there isn't anything to trim. The blocks containing the old data are marked as available for reuse but as before, that occurs on an as-needed basis rather than straight away.
Re: "detecting infections and reverting unexpected encryption"
"Please explain to me how an SSD can tell if an encryption is expected or not."
That's what the mentioned software is for. Up pops the anti ransomware software notification "We have detected an unusual amount of files being encrypted. Is this you or ransomware?"
The threshold for the pop up will determine if the feature is nagging or not, but seeing as up to 10s of gigabytes of encrypted files could be reversed in minutes, that threshold can be very high.
Re: "detecting infections and reverting unexpected encryption"
You'd better have that software running all the time. If it's not there while, say, encrypting a drive for the first time it's likely the whole drive will be corrupted. Of course, anyone doing that would take a backup first.
Where did you get that security "expert" from
Having worked through a ransomware attack the flaw in his argument a backup strategy isn't a great mitigator for a ransomware attack.
Firstly it requires extensive use of hot incremental backups to avoid significant data loss. The majority of firms still don't (and won't) do this.
Secondly the ransomware process is generally incremental itself which means you need a file by file analysis during the restore to figure out the most recent hot copy that's not encrypted.
Assuming this solution isn't snake oil it has the massive advantage it doesn't require proactive action by the users. You just specify these disks at purchase time and you are mostly protected.
Also whilst not underestimating the ransomware baddies - understanding actually how this protection works and circumventing it would not be a trivial task imo, as its operating several layers down the stack from where they operate at the OS level. They are good at finding OS exploits to get privileged access. I've seen no evidence as yet they can move deeper into the stack.
Again assuming it really works - as part of a layered anti-ransomware strategy I think this has promise. The latency is probably amenable to additional design or embedding some of the solution in hardware .
Anti ransomware adaptor
If the SSD manufacturers won't do it, why not build a box with a SATA plug and socket on it, that proxies all requests to the SSD, performing the ransomware detection and file versioning. Yes the performance will be worse, but for normal desktops it might be worth it.
Interesting idea
I would like to see some independent testing to see if it lives up to the claims. Do they see this as something like anti-virus where it can update the firmware should new threats/circumventions come along?
File writes per day?
Seems to me a limit on the number of files that can be modified/deleted/written per day would be a fairly effective protection for a home user. I rarely work on more than 15 or 20 separate documents in a day, so just warn me if I'm working too hard.
Also - code in pub opening hours. If I am editing a document > 1 hour after opening time it probably isn't me, and if it is me, its probably a bad idea.
Re: 1 hour after opening time.
Pubs around here open by mid-day.
Hmm... nice thought.
Icon——-> by 4 in the afternoon.
An excellent collection of comments
They illustrate a range of approaches to "solving" the ransomware problems and extend ransomware too. I think this describes is a good precaution, it's not a solution but it could be very helpful. The solution is more likely to build a new operating system that prevents the entire malware attack methods - but I can't see that happening because it would have to limit many of today's commercial data theft "features".
Bin dun before...
Great, does this mean we can bring back VMS's semicolon operator?
MYFILE.TXT;1
MYFILE.TXT;2
It would never overwrite a file, instead, it gave you a new version ;2 ;3 etc.
The PURGE command would then kill off the plethora of old versions.