Skip to content

Find · Fix · Prevent

saw finds harmful code hidden in software you installed — in your project, and on this computer.

$ pip install stayawakebot
  • Your project, the packages it uses, and this computer
  • The repair is a change you review before it is accepted
  • This computer is locked down. New code is checked before it becomes official.
recorded · v0.6.2
$ 

Harmful software runs with your access.Then it uses that access to spread.

It arrives inside software you chose to install, runs with your accounts, and uses them to hide itself in the next package someone else will install.

  1. 01

    Arrives

    hidden inside software you chose to install

  2. 02

    Runs

    the moment it installs, with your access, before anyone checks it

  3. 03

    Steals

    passwords, keys, and access to the accounts you can reach

  4. 04

    Stays

    remains on the computer after you restart it

  5. 05

    Calls home

    sends a message to a computer the attacker controls

  6. 06

    Spreads

    puts itself into the next package — then it starts again

every package it infects becomes the next one someone installs

saw looks for it in your project, in the packages that project uses, in packages already on this computer, and in what starts when the computer starts.

The attack has stages.The response does too.

saw checks your project, this computer, and new code before it is accepted — so infected work does not become official until you approve the repair.

  1. 01

    Find

    Find it in the project, on this computer, and when new work arrives.

    Check the project

    Your project, the packages it uses, and the packages already on this computer. Then you see what it found.

    Check what just arrived

    When you download or update the project, what just arrived is checked before you run it.

    Check this computer

    Saved passwords, editor settings, and programs that start when the computer starts.

  2. 02

    Fix

    Prepare a repair you review and accept.

    Prepare the repair

    A change from the last safe version you already had. You review it and accept it.

  3. 03

    Prevent

    Lock down this computer, and check new code before it becomes official.

    Lock down this computer

    The controls go on this computer.

    Check new code

    New work must pass the check before it becomes official.

What it does

Find it. Repair it. Lock the computer. Check new code.

Four jobs. That is the product.

Finding it is one step. Repairing it is another.

One step reports what it found. The next prepares a change you review before it is accepted.

The check covers the project and this computer.

Your project, the packages it uses, the packages already on the computer, and what starts when the computer starts.

New copies of the project are checked as they arrive.

When you download or update the project, what just arrived is checked before you run it.

This computer is locked down. New code is checked before it becomes official.

The computer first. Then the check on new code.

Get saw.

One line installs it.

$ pip install stayawakebot
macOSLinuxWindowsv0.11.4

Other ways to run it

Docker

Scan a project folder from the published image.

$ docker run --rm -v "$PWD:/repo:ro" ghcr.io/ndevu12/stayawakebot saw scan /repo
In CI

Add the automatic check so new code is reviewed before it becomes official.

$ saw guard setup --pr