Giter Site home page Giter Site logo

razorpay / bhadra Goto Github PK

View Code? Open in Web Editor NEW
12.0 59.0 2.0 23.43 MB

Bhadra is a Vulnerability Management Platform to handle all security issues

License: BSD 3-Clause "New" or "Revised" License

Shell 0.21% Python 28.54% CSS 0.20% JavaScript 0.65% HTML 70.08% Smarty 0.32% Batchfile 0.01%

bhadra's Introduction

Bhadra

Bhadra is a vulnerability management tool. It allows you to manage your application security, maintaining various products, helps to triage vulnerabilities and push findings to defect trackers.

It is designed to improve the security posture within Razorpay and effectively helps program management on below areas

  • how our deployment can be aligned with production
  • how SAST, SCA, container scanning can be aligned with deployment
  • how repo level mapping helps to track the findings and
  • how different tools can be configured at different engagement.

Quick Start

git clone https://github.com/razorpay/bhadra
cd bhadra
# building
docker-compose build
# running
docker-compose up
# obtain admin credentials. the initializer can take up to 3 minutes to run
# use docker-compose logs -f initializer to track progress
docker-compose logs initializer | grep "Admin password:"

Adding new tools/parser

To add new tools refer this parser

Reflecting tool results on frontend

To reflect the tools on frontend - Add the tool name to this variable "VISIBLE_TOOLS_NAME" on this Settings file

Simple and easy

  • Kept the UI very simple by showing needed information to security folks and developer.

  • Designed for Appsec folks to give holistic view about different tools results in one place for a specific product

  • Bhadra Flow bhadra-flow

    Products are considered as github repo, Engagements are considered as tools (semgrep, dependabot,..), daily scans will create a Tests.

  • Goal is to keep things as simple about the finding and it should be developer friendly. Target audience of the tools is not limited to Security folks. And we changed the UI/UX to keep it simple and neat.

  • Dashboard shows the findings by tool level along with Product types and product count. Tool level vulnerabilities redirect it to active findings

  • Product Type View shows the findings by tool level along with overall active findings. Product view shows all the open findings.

  • Configure the variable "VISIBLE_TOOLS_NAME" on this file Settings file in order to show what tools should dashboard shows.

Our success stories

  • All our deployments are in fully cloud native fashion and the velocity of deployment is also high.
  • Different tooling for SAST, SCA, DAST, Container Scanning, CSPM, etc., and also some custom tools. Security anlayst/developer hop to different tools to verify and fix vulnerabilities.
  • Github repo act as a source and all toolings are intergrated in one or other way.
  • Want to build a single glass of pane for all the vulnerabilities. In that way, service owner knows the security posture of their components.
  • Bhadra solves that problem by keep on pushing all the results on daily basis from different tools and always provided the Point-In-Time data.
    • All github repo points to any one of Business Unit.
    • Engagement and tools are always 1:1 ratio. That is, engagement is nothing but the tool which we are integrating for the repo/product. E.g bhadra_Semgrep_Scan, bhadra_Dependabot_Scan.
    • Automation will pull the data from different sources and create a test. So daily tests are getting created for each engagement for each product.
  • Bhadra shows the near real data which can be consumed to find a score card for the services or pull the data to visualize results in BI tools like Looker, Superset, etc.

Kubernetes deployment

All the application specifc and secrets are passed as k8s config. Postgresql used as a k8s statefulset. See k8s files

bhadra's People

Contributors

manikandan-rajappan avatar dakshinamurthyp avatar

Stargazers

Sri Harsha Kappala avatar Mohith Kalyan P avatar ROHIT SHARMA avatar  avatar  avatar Saishiva K avatar Srigovind Nayak avatar Bijoy Das avatar Saurabh Daware avatar anday avatar Utpal Nadiger avatar Yash Shanker Srivastava avatar

Watchers

Kumar Ishan avatar Pranav Gupta avatar Prashant Chaudhary avatar Pranjal Yadav avatar Varun Achar avatar Nagendra Dhanakeerthi avatar Ankit Choudhary avatar Abhay avatar Nikhil Singh avatar Sandesh Damkondwar avatar Ashwath Reddy avatar Vijayant Singh avatar VINAY CHOPRA avatar Venkat Ram avatar Ratan Phayade avatar Sri Harsha Kappala avatar Saurav Rastogi avatar Jayanth Inakollu avatar  avatar Junaid Anwer avatar  avatar Vikas Naidu avatar  avatar  avatar Bhupesh Choudhary avatar  avatar  avatar Dileep Grandhi avatar Dhwanil Vyas avatar Ujjwal Anand avatar Suhas R. More avatar Shivam Yuvraj avatar Shubhnik Singh avatar Sunny Aggrawal avatar  avatar  avatar snehasish das gupta avatar Tanish Gupta avatar Manikanta Kandagatla avatar Rohit Khandelwal avatar ANUJ JAIN avatar Aditi Raghuvanshi avatar  avatar  avatar  avatar Nimbostratus avatar Prabhath Murthy avatar Kushaal Singla avatar Iket Agrawal avatar Aman Deep Saxena avatar  avatar Akash Sachan avatar Jaydeep Radadiya avatar Pujan Shah avatar  avatar Kajol Nigam avatar  avatar Veeru avatar AnupYadav121 avatar

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.