Giter VIP home page Giter VIP logo

learn-by-doing / panther Goto Github PK

View Code? Open in Web Editor NEW

This project forked from gane5hvarma/panther

0.0 1.0 1.0 28.6 MB

Detect threats with log data and improve cloud security posture

Home Page: https://runpanther.io/

License: GNU Affero General Public License v3.0

Go 70.89% Dockerfile 0.17% JavaScript 0.56% TypeScript 23.00% Python 4.34% HTML 0.07% Shell 0.02% Makefile 0.01% HCL 0.93%

panther's Introduction

Panther Logo

A Cloud-Native SIEM for the Modern Security Team

Quick Start | Documentation | Blog | Careers | Chat with us on Slack!

All Contributors Slack CircleCI Built with Mage

Panther is a platform for detecting threats with log data, improving cloud security posture, and conducting investigations.

Use Cases

Security teams can use Panther for:

Use Case Description
Continuous Monitoring Analyze logs in real-time and identify suspicious activity that could indicate a breach
Alert Triage Pivot across all of your security data to understand the full context of an alert
Searching IOCs Quickly search for matches against IOCs using standardized data fields
Securing Cloud Resources Identify misconfigurations, achieve compliance, and model security best practices in code

Deployment

Follow our Quick Start Guide to deploy Panther in your AWS account in a matter of minutes!

Use our Tutorials to learn about security logging and data ingestion.

Panther uses Python for analysis, and each deployment is pre-installed with 150+ open source detections.

Log Analysis

Panther uses Python3 rules to analyze logs from popular security tools such as osquery and OSSEC.

The example below identifies malware on macOS with the osx-attacks query pack:

from fnmatch import fnmatch

APPROVED_PATHS = {'/System/*', '/usr/*', '/bin/*', '/sbin/*', '/var/*'}


def rule(event):
    if 'osx-attacks' not in event.get('name'):
      return False

    if event.get('action') != 'added':
        return False

    process_path = event.get('columns', {}).get('path')
    # Send an alert if the process is running outside of any approved paths
    return not any([fnmatch(process_path, p) for p in APPROVED_PATHS])


def title(event):
    # Show the query name that caused the alert
    return 'Malware [{}] detected via osquery'.format(event.get('name'))


def dedup(event):
    # Group similar infections in the fleet
    return event.get('name')

If this rule returns True, an alert will dispatch to your team based on the defined severity.

Cloud Security

Panther also supports analyzing cloud resources with policies. This can be used to detect vulnerable infrastructure along with modeling security best practices:

REGIONS_REQUIRED = {'us-east-1'}


def policy(resource):
    regions_enabled = [detector.split(':')[1] for detector in resource['Detectors']]
    for region in REGIONS_REQUIRED:
        if region not in regions_enabled:
            return False

    return True

Returning True means that a resource is compliant, and returning False will Fail the policy and trigger an alert.

Screenshots

Rule Search

Rule Search: Show running detections

Rule Editor

Rule Editor: Write and test Python detections in the UI

Alert Viewer

Alert Viewer: Triage generated alerts

Resource Viewer

Resource Viewer: View attributes and policy statuses

About Us

Team

We are a San Francisco based startup comprising security practitioners who have spent years building large-scale detection and response capabilities for companies such as Amazon and Airbnb. Panther was founded by the core architect of StreamAlert, a cloud-native solution for automated log analysis open-sourced by Airbnb.

Want to help make Panther even better? We are hiring!

Why Panther?

It's no longer feasible to find the needle in the security-log-haystack manually. Many teams struggle to use traditional SIEMs due to their high costs, overhead, and inability to scale. Panther was built from the ground up to leverage the elasticity of cloud services and provide a highly scalable, performant, and flexible security solution at a much lower cost.

Contributing

We welcome all contributions! Please read the contributing guidelines before submitting pull requests.

License

Panther source code is licensed under AGPLv3.

FOSSA Status

FOSSA Status

Contributors โœจ

Thanks goes to these wonderful people (emoji key):


Aggelos Arvanitakis

๐Ÿ’ป ๐Ÿ“– ๐ŸŽจ ๐Ÿ› ๐Ÿš‡

Austin Byers

๐Ÿ’ป ๐Ÿ“– ๐Ÿ›ก๏ธ ๐Ÿ› ๐Ÿš‡

Nick

๐Ÿ’ป ๐Ÿ“– ๐Ÿ›ก๏ธ ๐Ÿ› ๐Ÿš‡

Kostas Papageorgiou

๐Ÿ’ป ๐Ÿ›ก๏ธ ๐Ÿ› ๐Ÿš‡

Quan Pham

๐Ÿ’ป

Alex Mylonas

๐Ÿ’ป ๐Ÿ›

Russell Leighton

๐Ÿ’ป ๐Ÿ›ก๏ธ ๐Ÿ› ๐Ÿš‡

Sugandha

๐Ÿ“–

Kartikey Pandey

๐Ÿ“–

Jeremy Stott

๐Ÿ’ป ๐Ÿ›ก๏ธ ๐Ÿš‡ ๐Ÿค”

Jack Naglieri

๐Ÿ’ป ๐Ÿ“– ๐Ÿ›ก๏ธ ๐Ÿ–‹ ๐Ÿค” ๐Ÿ“†

Gavin

๐Ÿ’ป ๐Ÿ›ก๏ธ ๐Ÿš‡ ๐Ÿค”

Ryxias

๐Ÿ“–

Sargon Sada

๐Ÿ“– ๐Ÿ’ป

Sergey Aksenov

๐Ÿ“–

Patrick Hagan

๐Ÿš‡

Alexandros Sigalas

๐Ÿ’ป ๐Ÿ›ก๏ธ

This project follows the all-contributors specification. Contributions of any kind welcome!

panther's People

Contributors

alexmylonas avatar allcontributors[bot] avatar alxarch avatar austinbyers avatar drixta avatar gavinelder avatar glerb avatar jacknagz avatar kartikeypan avatar kostaspap avatar nhakmiller avatar rleighton avatar ryxias avatar s0l0ist avatar sardev08 avatar sergeax avatar stoggi avatar sugandhalahoti avatar willow9886 avatar

Watchers

 avatar

Forkers

rmasinidemelo

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.