Giter Site home page Giter Site logo

k2 / hashserver Goto Github PK

View Code? Open in Web Editor NEW
5.0 2.0 3.0 71 KB

A Kestrel app server provides a just in time JitHash white list. The client is in powershell and can be used to test remote system memory for unknown code. Rendered doc's are here https://K2.github.io/HashServer/

License: GNU Affero General Public License v3.0

C# 100.00%
hashing whitelist-validation memory memory-hacking integrity integrity-monitoring

hashserver's Introduction

HashServer

A Kestrel app server provides a just in time JitHash white list. The client is in powershell and can be used to test remote system memory for unknown code.

UI is in Scripting Repo

Use the powershell code in https://github.com/K2/Scripting as the client for this server.

You can optionall use the GUI to browse in a TreeMap and also a hex diff view. Or use the returned PS objects to write you're own analytics.

Overview

The goal is to make memory integrity checking as easy as possiable. One of the primary roadblocks towards memory integrity chekcing is that a "golden image" database must be maintained. This "golden image" database is usually represented in the form of cryptographically secure hash values (See tripwire for a filesystem integrity checking solution).

Every time a patch, update or recompilation is done that chanegs a system binary, the associated integrity information (hash value) has to be updated in lock step or else you will have excessive false positives regarding unknown code files/memory blocks.

JitHashing

This HashServer implmentation attempts to lower the cost of ownership, administrative overhead and overall pain points regarding the maintence of the hash integrity info. In a nutshell, you simply configure file paths to known good copies of what you have deployed (filesystem images mounted locally is probably you're best bet over network shares :).

HashServer will then, upon recieving a client JSON call (see PowerShell code for full client), will dynamically generate the expected hash values based on the required permutations that occur when a binary is loaded into memory. This then will allow the HashServer to validate the client secure hashes and report on possiable unknown code in memory without having to manage any database at all!

But I've got to have a filesystem around?

Yes, though that feels a lot easier to have a virtual disk or some huge cache of whatever applications you have deployed than to have to manage a database since if you have a virtual disk that's a templalte for you're servers, workstations etc.. you can simply update it and expose it's drive to the HashServer and it will take care of the rest.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.