Coder Social home page Coder Social logo

ceramicskate0 / swelf Goto Github PK

View Code? Open in Web Editor NEW
23.0 2.0 7.0 2 MB

Simple Windows Event Log Forwarder (SWELF). Its easy to use/simply works Log Forwarder and EVTX Parser. Almost in full release here at https://github.com/ceramicskate0/SWELF/releases/latest.

Home Page: https://ceramicskate0.github.io/SWELF/

License: GNU Affero General Public License v3.0

PowerShell 0.04% C# 99.72% Batchfile 0.24%
windows eventlog forwarder logging dotnet logs defense logging-agent log-forwarder hunting cybersecurity siem powershell detection windowsevents analytics analysis evtx logging-framework sysmon

swelf's Introduction

Build

Like the work dont forget to hit that Star Button and Sponsor

Shameless plug to allow Support:

https://patreon.com/ceramicskate0

Summary:

If you can type this, Findthis ~ With this EventLog Name(Not required) ~ EventID(Not required) into a text file (Searchs.txt) you can find the logs you want from a windows machine and send just those to your SIEM.

Why SWELF and how is it diffrent from anything out there? Well, are you having the to many log issue? Or maybe just cant        
find what you want from a log forwarder? Want to quickly get the logs you want from local evtx files or eventlog service and 
then get them in the order they where made? Maybe the other log forwarders are just too complicated and you want something  
simple that can do it all? SWELF might be able to help you. You tell SWELF the the key words and/or Event Log Name and/or the 
event ID and it will find it for you. You can event tell it things like the minimum number of characters in log, or the 
maximum length of the command-line arguments, or the length of the log itself, then the SWELF app will send just that log to 
your Log Collection location from a windows machine in a variety of formats. SWELF is designed to be as small,lightweight, and 
windows native as possible with very low requirements and setup and still be a powerful and useful tool. SWELF is designed to 
put you back in control of your log data and your log forwarder as much as possible. Also, an interesting case has come up 
recently, that red teamers could use this to help simulate a SIEM on a VM for testing on an endpoint. SWELF is designed to be 
as small,lightweight, and  windows native as possible with very low requirements and setup and still be a powerful and useful 
tool.   SWELF is designed to put you back in control of your log data adn your log forwarder as much as possible. Also, an 
interesting case has come up recently, that red teamers could use this to help simulate a SIEM on a VM for testing on an 
endpoint.
  1. Read, search, and forward any Windows Eventlog and/or saved evtx (that are not I.O. locked) file for everything or just the log with the data you want.

  2. Read and search any local log file for everything or just the log with the data you want.

  3. Read, search, and forward any 'Powershell Plugin' (after attempting to force it through Microsoft AMSI) output (ie that script you like that you cant get output from at scale) for everything or just the log with the data you want.

The details:

Now almost in full release.

SWELF is designed to be a simple enough for almost anyone to use for windows event log forwarding application with some speedy IR capabilities. As a forwarder the agent will 1st search your logs for what you want, then forward just those logs. Since SWELF is early release software this means there may be bugs that exist.

But this also means im taking almost any feature request (even if you dont code), deisgn recommendations, and basically any input you think is relavent. I will take it in the form of Twitter (https://twitter.com/Ceramicskate0?lang=en) or as Issue (Feature) request here on Github.

This app is a mainly a log forwarder with the ability to search, forward, and run your plugins. This means that you can tell your log forwarding agent (SWELF) exactly what logs to forward and it wont forward the rest (This will help with that pesky "to many logs", "we cant send those logs its to much noise", or "the SIEM cant handle all the logs" issues with SIEMs and IT Departments). ;D

For example, you want powershell logs (dont lie to yourself every security person does, or at least you better). You know what you want them to have in the log, or what they should looks like, or how long they are, or some keyword, then SWELF will forward in order just those logs.

SWELF Design (After Central Configuration is Pushed)

swelf design

Other SWELF related Projects

Legal Disclaimer:

If you choose to run the software on your machine, you accept the terms of use and any potential adverse actions that may befall your system. If you use this software you do so at your own risk and the liability is then accepted by you on execution. Note that the author is not responsible for the way the product software is used and the software comes without any warrenty. If you use the software (this means execution of it on a system) you acknowledge that you accept any risk or any outcome the use of the software causes. I have NEVER authorized, condoned, or recommend the use of anything in any of my repos for any malicious reason. Do not use for evil, malicious purposes, or on machines you do not own. I recommend that you always TEST it before you use it or deploy it. Use at your own risk. THIS IS OPEN SOURCE SOFTWARE AND IS ALMOST READY FOR PRODUCTION.

                GNU AFFERO GENERAL PUBLIC LICENSE
                   Version 3, 19 November 2007

Copyright (C) 2007 Free Software Foundation, Inc. https://fsf.org/ Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed.

swelf's People

Contributors

ceramicskate0 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

swelf's Issues

Add tamper checks

Add checks into app to run when app is run as live mode to detect and alert admin of possible event log tampering

Improved Security Checks for event log tampering

    public static bool Check_Windows_Event_Log_Size(string EVT_Log_Name)
    {
        //on a per log basis
        //compare original size to now size
        //if its less than windows default alert
        //also if last modified date for reg key is not as old as things around it
    }

    public static bool Check_Windows_Event_Log_Retention_Policy(string EVT_Log_Name)
    {
        //in reg key per log
        //all ffff's means no new logs added
    }

    public static bool Check_Windows_Event_Log_Has_Not_Recorded_Logs_In_X_Time(string EVT_Log_Name,int Time_of_Latest_Log)
    {
        //For a given eventlog when was the last time it was written to. Based on today - last time X. Alert yes or no.
    }

    public static bool Check_Windows_Event_Log_Popular_Event_Logs_Blank(string EVT_Log_Name)
    {
        //Popular windows event logs have nothing in them and they should
    }

Local wvtx log read function no work

What is needed for an issues (if question or comment ignore this) Please.

Issue details (Summary):

What did SWELF event log say about it:

What did SWEFL local logs say about it:

WHat dio you say about it (be constructive):

What do you think right looks like:

Attach any screenshots or log copy pastes below:

OPEN QUESTION TO THE COMMUNITY

Should SWELF be able to be configured to do initial incident response via remote deployment to scan windows Event Logs utilizing its central configuration feature? Post or contact me on twitter with what you think.

Searching Powershell event logs

When using CommandLine=,windows powershell,{BLANK SPACE} as search nothing was returned this was due to searching raw xml output. Expected to be fixed in 0.1.0.5

APP 1st run self intialize config creation-created in old format

WHen app first runs and detects that the user did not provide a config then the app will create its own hard coded config (as a default to run properly). The apps config used the old parse config and not the new ''. This is now fixed for next release. A work around is to replace ',' with '' in the config file.

Ability to centralize config

Sysvol is a read only Dir that all machines on a domain can read (for GPO). This would be perfect if the app could read its config from that location and execute. I will require SMB yes but that is required anyways. Dir is read only by default and only admins can change files there. This will also help with securing config file to admins.

Idea here is have app read config files from UNC path.
This could be done by local config file pointing to UNC path
Need to add feature/option in config to do this. If this is read the app will then ignore all other setting except to read UNC config

SWELF initial run error code 0x1

On 1st run of published binary program exits with 0x1 error code. Main() error. error may be caused by config files not writing on 1st install correctly.

Redo AMSI to scan all plugin input

have amsi do vetting (if win10). If not sucks for them, but do something about it. if found to be malware send log dont execute. if not do it no log.

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.