npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

ransomaware

v0.0.7

Published

Detect ransomware before it does damage.

Downloads

51

Readme

ransomAware.js

Be notified the moment you get ransomware by monitoring the filesystem

Motivation

I was inspired by a group of University of Florida researchers who found a way to stop ransomeware dead in its tracks by detecting rather than preventing infection. Quote:

“Our system is more of an early-warning system. It doesn’t prevent the ransomware from starting ... it prevents the ransomware from completing its task … so you lose only a couple of pictures or a couple of documents rather than everything that’s on your hard drive, and it relieves you of the burden of having to pay the ransom,” said Nolen Scaife, a UF doctoral student and founding member of UF’s Florida Institute for Cybersecurity Research.

According to the article, they "have a functioning prototype" but are "seeking a partner to commercialize it and make it available publicly." I'm going to reach out to the original research group over Twitter to get more details and make sure this tool is free. Because if not, well, that's understandable. The FBI estimates that ransomware creators made $24 million in successful ransoms last year. If UF sells the cure, part of that money could be going to UF. Regardless, I've already started working on something (without even reading the journal paper) based on my own knowledge of ransomeware, and it's gonna be free.

Concepts

Most ransomware changes the filename and adds .crypt or .enc or something stupid. In hindsight, that's incredibly dumb. Because in a half hour, I can code up a software that tracks all file system modifications and alerts the user if files ending with known crypto-locker file extensions are created. The problem with that is they can simply change the file extension to something new, which is what they do.

So I do that, but I do one step more. ANY file extension that is 'new' and hasn't appeared in a folder before triggers an alert. So you get a lot of notifications up front, but after a learning period it learns what file types are "normal" to expect, and you'll only get alerts when something "unusual" happens.

This project is a work in progress, but already is capable of detecting the kinds of ransomware that 3 of my friends have been plagued by. Currently only installable via github or npm, but hopefully I'll come up with a simpler distribution mechanism.

Installation

npm i -g ransomaware

Usage

npm run electron

It has a GUI now and lives in the system tray. It can be started / paused from the tray menu. Double-click or use the tray menu to open the Settings window. Settings are applied immediately as you change them, although changing the watched directory seems to not always work and sometimes requires a restart.

Alerts via node-notifier