16 dépôts
Tools that analyze source code without executing it to find security vulnerabilities.
Distinct from Vulnerability Scanning: Distinct from Vulnerability Scanning: specifically focuses on source code analysis (SAST) rather than container image or runtime scanning.
Explore 16 awesome GitHub repositories matching security & cryptography · Static Analysis Security Testing. Refine with filters or upvote what's useful.
CodeQL is a semantic code analysis engine and vulnerability scanning tool that treats source code as data. It utilizes a static analysis query language to define complex patterns and security vulnerabilities within a code graph database. The system represents source code as a relational database, enabling the execution of structural queries and data flow analysis. This approach allows for the detection of security flaws and coding errors across large-scale repositories. The tool provides capabilities for automated code auditing, static analysis security testing, and custom vulnerability dete
Provides an automated system for detecting security flaws and coding errors across large scale source code repositories using static analysis.
gosec is a static analysis security tool designed to scan Go source code for vulnerabilities and common coding flaws. It functions as a security analyzer that inspects the abstract syntax tree to identify insecure function calls, API usage, and potential security risks. The tool distinguishes itself by mapping detected vulnerabilities to Common Weakness Enumeration identifiers for standardized reporting and integrating with external AI models to suggest code fixes for identified issues. Its capabilities cover the detection of injection vulnerabilities, hardcoded credentials, weak cryptograph
Provides a static analysis engine to scan Go source code for security vulnerabilities and coding flaws.
Gixy is a static configuration analyzer and security auditor for Nginx. It functions as an infrastructure-as-code security scanner and web server configuration linter designed to identify vulnerabilities and misconfigurations in server definitions before deployment. The tool focuses on detecting high-risk security flaws, including host header spoofing, server-side request forgery, and path traversal. It specifically audits Nginx configurations for risks such as HTTP splitting, multiline header issues, and unauthorized third-party access resulting from incorrect Referer or Origin header patter
Performs static analysis on Nginx configuration files to identify security vulnerabilities without executing the server.
Bandit is a static analysis security testing tool and vulnerability detection scanner for Python source code. It functions as a security-focused linter and static analyzer that identifies common vulnerabilities and architectural flaws without executing the program. The tool utilizes an abstract syntax tree to analyze code patterns and identifies risky function calls or insecure configurations. It employs a plugin-based rule engine to decouple scanning logic from individual security checks and supports configuration-driven filtering to exclude specific files or ignore certain warnings. The sy
Analyzes source code without execution to find security vulnerabilities through a specialized SAST approach.
Brakeman is a static analysis security tool and scanner specifically designed for Ruby on Rails source code. It identifies common security vulnerabilities, such as injection and cross-site scripting, by analyzing the application codebase without executing the application. The tool functions as a security auditor that detects mass assignment risks and template vulnerabilities. It evaluates the final output of rendered views and identifies unrestricted assignment patterns that could allow unauthorized modification of model attributes. The system provides vulnerability management through the us
Analyzes Ruby on Rails source code to identify common security vulnerabilities without executing the application.
Pyre is a high-performance static type checker and analysis tool for Python. It identifies type errors and ensures type safety without executing the program, utilizing a static type inference engine to maintain consistency across functions. The project is distinguished by an incremental type analysis engine that operates as a background daemon. This system monitors filesystem changes to re-validate only modified parts of a project, reducing the time required for repeated analysis. It also includes a static analysis security tool that uses taint analysis to track untrusted data flows and ident
Implements a taint analysis engine for identifying security vulnerabilities through static source code analysis.
Ce projet est un framework pour la découverte et la remédiation autonomes de vulnérabilités de sécurité utilisant des agents de grands modèles de langage. Il fonctionne comme un pipeline de recherche en sécurité qui automatise le processus de reconnaissance, de découverte de crashs et d'analyse d'exploitabilité pour identifier des bugs logiciels reproductibles. Le système se distingue par l'utilisation d'un bac à sable (sandbox) d'agent conteneurisé qui restreint la sortie réseau et l'accès au système de fichiers pour empêcher la compromission de l'hôte. Il emploie une boucle spécialisée de génération et de validation de correctifs, qui inclut des tests de ré-attaque adverses où un nouvel agent tente de contourner les correctifs proposés avec de nouvelles entrées pour assurer l'efficacité de la remédiation. Le framework couvre un large éventail de capacités de sécurité, incluant l'analyse de vulnérabilité statique, le partitionnement de la surface d'attaque et la construction de modèles de menaces. Il fournit des outils pour le triage des vulnérabilités via le clustering et la déduplication de signatures de crash, ainsi que la capacité d'exécuter des migrations de code à grande échelle pour appliquer des correctifs systémiques à travers une base de code.
Scans source code without execution to identify potential security flaws and construct a threat model.
Ce projet est un template Cookiecutter pour amorcer des paquets Python avec une structure de répertoire et des fichiers de configuration standardisés. Il fournit une base pour les nouvelles bibliothèques en générant des structures de projet, des fichiers boilerplate et des points d'entrée d'interface de ligne de commande. Le template met l'accent sur une chaîne d'approvisionnement logicielle sécurisée via des pipelines de build durcis. Il utilise le pinning de commit SHA pour les actions et des ensembles de permissions minimaux pour se protéger contre les attaques, tout en fournissant une configuration pour construire et télécharger des paquets signés vers des registres en utilisant des fournisseurs d'identité sécurisés. Le projet couvre un large ensemble de capacités, incluant l'automatisation de l'intégration continue pour les tests multi-versions, le linting et la vérification de type. Il inclut également un pipeline de documentation automatisé qui extrait les références API des docstrings et les déploie vers des fournisseurs d'hébergement. Des outils supplémentaires gèrent la gestion des dépendances, la compilation des artefacts de distribution et l'analyse de vulnérabilité statique.
Performs static analysis of source code to detect security vulnerabilities and flaws.
Ce projet est un outil d'analyse statique et un linter pour Ruby on Rails conçu pour identifier les odeurs architecturales et les violations des meilleures pratiques. Il sert de linter de qualité de code, d'auditeur architectural, de scanner de sécurité et d'analyseur de performance pour les applications Rails. L'outil évalue la séparation des préoccupations entre les contrôleurs, les modèles et les templates de vue pour réduire la dette technique. Il identifie les modèles de codage sous-optimaux et impose une cohérence stylistique, tout en scannant spécifiquement les vulnérabilités de sécurité telles que l'assignation de masse non protégée dans les modèles. La surface d'analyse couvre la détection des requêtes de base de données inefficaces et des modèles de récupération de données gourmands en mémoire. Il audite également la conception du routage, valide la persistance des enregistrements et identifie une gestion des erreurs inappropriée et des erreurs de configuration de fuseau horaire. Les utilisateurs peuvent gérer l'analyse en définissant les vérifications de code à activer ou désactiver via un fichier de configuration.
Performs static analysis on model and controller definitions to detect security vulnerabilities like unprotected mass assignment.
shhgit est un outil de sécurité d'analyse statique et un scanner de détection de secrets conçu pour identifier les identifiants, jetons d'API et clés privées ayant fuité. Il fonctionne comme un auditeur de sécurité pour les systèmes de contrôle de version, analysant à la fois les fichiers locaux et les dépôts distants à travers des plateformes incluant GitHub, GitLab et Bitbucket. L'outil utilise un moteur de détection basé sur la correspondance de signatures, des expressions régulières personnalisées et des contrôles d'entropie pour localiser les données sensibles. Il permet l'utilisation de signatures et de requêtes de recherche personnalisées pour identifier des secrets non standard qui pourraient ne pas être couverts par les modèles prédéfinis. La surface de scan s'étend aux métadonnées des dépôts distants, telles que les commentaires d'issues, et inclut des capacités de filtrage pour exclure des extensions de fichiers ou des chemins de répertoire spécifiques. Les résultats peuvent être exportés via des fichiers CSV ou transmis via des notifications webhook.
Analyzes source code without executing it to find security vulnerabilities and leaked credentials.
SpotBugs est un outil d'analyse statique et un analyseur de bytecode pour les applications Java. Il scanne les fichiers de classe compilés pour identifier les bugs, les vulnérabilités de sécurité et les problèmes de performance sans exécuter le code. Le système fonctionne à la fois comme un détecteur de bugs et un outil de test de sécurité d'application statique pour localiser les erreurs logiques et les abus d'API. Le projet se distingue par une architecture de détecteur basée sur des plugins qui permet l'intégration de bibliothèques externes pour ajouter des règles de détection personnalisées. Il fournit un audit de sécurité spécialisé pour les vulnérabilités telles que l'injection SQL, le cross-site scripting et le path traversal, parallèlement à un système modulaire pour affiner la précision de l'analyse et réduire les faux positifs. L'outil couvre un large éventail de domaines de détection, y compris les erreurs de synchronisation de concurrence, les déréférencements de pointeurs nuls, les fuites de ressources et les erreurs de transtypage. Il identifie également le code mort, les inefficacités de performance et les violations des idiomes de sérialisation. Ces capacités sont accessibles via une interface de ligne de commande, une interface utilisateur graphique et une intégration directe au sein des environnements de développement intégrés. SpotBugs peut être intégré dans des pipelines de build pour appliquer des portes de qualité et générer des rapports d'analyse aux formats HTML ou XML.
Functions as a security scanner that identifies vulnerabilities like SQL injection and XSS through static analysis.
This project is a set of git pre-commit hooks designed to automate the formatting, linting, and validation of Terraform configurations. It functions as an infrastructure as code linter, security scanner, cost estimator, and documentation generator to ensure code quality before commits are finalized. The tool distinguishes itself by providing specialized capabilities for infrastructure workflows, such as scanning templates for security vulnerabilities and hardcoded secrets, calculating projected cloud spending against budgets, and automatically extracting module definitions to populate readme
Analyzes infrastructure configuration files without executing them to detect security vulnerabilities and syntax errors.
Remix is a comprehensive blockchain development environment and Ethereum smart contract IDE. It provides a complete workspace for writing, compiling, deploying, and debugging smart contracts across simulated and public blockchain networks. The project distinguishes itself as a specialized toolchain for EVM debugging and analysis, offering opcode-level transaction stepping and state memory analysis. It also includes a dedicated zero-knowledge proof toolchain for compiling ZK circuits and generating cryptographic proofs, alongside an AI-powered coding assistant for code generation and explanati
Performs static analysis on source code to detect security vulnerabilities and deviations from best practices.
Bearer is a static analysis security testing tool and privacy compliance auditor. It identifies security vulnerabilities, hard-coded secrets, and privacy risks in source code through static analysis and data flow tracing. The tool distinguishes itself by tracking the movement of sensitive data through code to identify leaks and by mapping personal and health-related information flows to generate evidence for privacy impact assessments. It also provides differential scanning for pull requests and uses fingerprint-based suppression to exclude known false positives from reports. The platform co
Provides a static analysis security testing tool to identify injection flaws and common vulnerabilities based on OWASP and CWE.
nodejsscan is a static analysis security tool and vulnerability detection engine designed to scan Node.js source code for security flaws and common coding vulnerabilities. It functions as a static application security testing tool that analyzes code without executing the program. The tool operates as a security linter that can be integrated into continuous integration pipelines to block insecure code from merging into main branches. It automates the auditing process through rule-based detection and pattern-based static analysis. The project provides capabilities for vulnerability alert autom
Provides a security engine that analyzes source code without execution to detect potential breaches.
L'assistant de sécurité automatisé est un utilitaire en ligne de commande conçu pour orchestrer plusieurs outils d'analyse de sécurité dans un workflow unifié piloté par la configuration. Il fonctionne comme un moteur central qui exécute des tests de sécurité d'application statiques (SAST) et des scans d'infrastructure, agrégeant les sorties de divers outils dans un format standardisé lisible par machine pour assurer une détection cohérente des vulnérabilités tout au long des cycles de développement. L'outil se distingue par une architecture modulaire en plugins qui permet l'intégration de scanners personnalisés ou propriétaires, ainsi qu'une couche d'intelligence externe qui transmet les résultats à des services d'IA pour une analyse de remédiation automatisée. En prenant en charge des formats de rapport standardisés tels que SARIF, il permet une revue et un suivi cohérents des résultats de sécurité sur diverses plateformes de reporting et systèmes de surveillance. Au-delà de ses capacités d'orchestration, le framework facilite la vérification automatisée de la conformité et l'application des politiques de sécurité. Il s'intègre directement dans les environnements de développement locaux et les pipelines d'intégration continue (CI), permettant aux équipes de définir des paramètres de scan spécifiques, des seuils de sévérité et des exclusions de fichiers pour adapter l'analyse de sécurité aux exigences du projet.
Identifies potential vulnerabilities within source code and infrastructure configurations using automated static analysis.