My curated list of awesome links, resources and tools on infosec related topics
Go to file
2018-02-19 16:32:01 +07:00
files Remove machine-learning stuff 2018-02-19 13:49:44 +07:00
.travis.yml Update awesome_bot options 2017-11-09 23:27:59 +07:00
CODE_OF_CONDUCT.md Create CODE_OF_CONDUCT.md 2017-12-14 15:43:06 +07:00
LICENSE Initial commit 2017-11-09 23:11:18 +07:00
README.md [Tools][Malware Analysis] CAPE Sandbox 2018-02-19 16:32:01 +07:00

My Awesome

Awesome travis-banner

My curated list of awesome links, resources and tools


Articles

Awesome

Anti Forensics

Certifications

Digital Forensics and Incident Response

Unix/Linux

IoT

MacOS/iOS

Windows

Exploitation

Platforms

ARM Exploitation

Software Exploitation

Linux
Windows

Techniques

Bypassing ASLR

Any related techniques for ASLR bypassing

Format Strings

Format strings exploitation

Heap Exploitation

Heap exploitation related articles and tutorials

Integer Overflow

Integer overflow epxloitaion

Return Oriented Programming

ROP cases and guidelines

return-to-libc

return-to-libc techniques

Shellcoding

Art of crafting shellcode

Stack Exploitation

Corrupt the stack

Trusted Execution

Various techniques to execute malicious binary with trusted, bypassing security protection

Use-After-Free

Use-After-Free related arcitles

Malware Analysis

WNetAddConnection The WNetAddConnection function enables the calling application to connect a local device to a network resource. A successful connection is persistent, meaning that the system automatically restores the connection during subsequent logon operations. An example of malware that implement this function can be found below:

Malware Variants

Reverse Engineering

Tutorials

This section contains links about tool tutorials, cheat sheet and techniques.

American Fuzzy Lop
Amazon Web Services (AWS)
Binary Ninja
BloodHound
Docker
Elasticsearch
Frida
IDA Pro
Masscan
Mimikatz
MISP
osquery
RunPE
Splunk
Sysmon
Radare2
Volatility
WinDBG

Web Application Security

Web application security related articles and tutorials

Cross-site Request Forgery

SQL Injection

Tools

AWS Security

Open source projects related to AWS security.

airbnb/BinaryAlert BinaryAlert: Serverless, Real-time & Retroactive Malware Detection
cloudsploit/scans AWS security scanning checks
nccgroup/Scout2 Security auditing tool for AWS environments
Netflix/security_monkey Security Monkey monitors your AWS and GCP accounts for policy changes and alerts on insecure configurations.
Alfresco/prowler Tool for AWS security assessment, auditing and hardening. It follows guidelines of the CIS Amazon Web Services Foundations Benchmark.
SecurityFTW/cs-suite Cloud Security Suite - One stop tool for auditing the security posture of AWS infrastructure.

Binary Analysis

Binary analysis tools, including decompilers, deobfuscators, disassemblers, etc.

avast-tl/retdec RetDec is a retargetable machine-code decompiler based on LLVM
enkomio/shed .NET runtine inspector. Shed - Inspect .NET malware like a Sir
fireeye/flare-floss FireEye Labs Obfuscated String Solver - Automatically extract obfuscated strings from malware.
hasherezade/hook_finder a small tool for investigating inline hooks (and other in-memory code patches)
LIEF Library to Instrument Executable Formats
pierrezurek/Signsrch tool for searching signatures inside files, extremely useful in reversing engineering for figuring or having an initial idea of what encryption/compression algorithm is used for a proprietary protocol or file. it can recognize tons of compression, multimedia and encryption algorithms and many other things like known strings and anti-debugging code which can be also manually added since it's all based on a text signature file read at runtime and easy to modify.
VisUAL A highly visual ARM emulator
williballenthin/python-idb Pure Python parser and analyzer for IDA Pro database files (.idb).

Cryptography

Cryptography related tools

mpgn/BEAST-PoC Poc of BEAST attack against SSL/TLS
mpgn/Padding-oracle-attack Padding oracle attack against PKCS7
mpgn/poodle-PoC Poodle (Padding Oracle On Downgraded Legacy Encryption) attack

Data Exfiltration

Tools related to data exfiltration and covert channels

evilsocket/sg1 A wanna be swiss army knife for data encryption, exfiltration and covert communication.
pentestpartners/PTP-RAT Exfiltrate data over screen interfaces. For more information.
sensepost/DET DET (is provided AS IS), is a proof of concept to perform Data Exfiltration using either single or multiple channel(s) at the same time.

DevOps

DevSecOps stuff, or SevDevOps, or DevOpsSec, or SecDevSecOpsSec!?

GoogleCloudPlatform/container-diff container-diff is a tool for analyzing and comparing container images. container-diff can examine images along several different criteria, including: Docker Image History, Image file system, packages, etc.

Digital Forensics and Incident Response

Open source projects related to DFIR topic.

$I File Parser Free Forensics Tool $I File Parser
ANSSI-FR/bits_parser Extract BITS jobs from QMGR queue and store them as CSV records
ANSSI-FR/bmc-tools RDP Bitmap Cache Parser
Cyb3rWard0g/HELK A Hunting ELK (Elasticsearch, Logstash, Kibana) with advanced analytic capabilities.
Hibernation Recon The tools and techniques used for many years to analyze Microsoft Windows® hibernation files have left digital forensics experts in the dark… until now!
Invoke-IR/ACE The Automated Collection and Enrichment (ACE) platform is a suite of tools for threat hunters to collect data from many endpoints in a network and automatically enrich the data. The data is collected by running scripts on each computer without installing any software on the target. ACE supports collecting from Windows, macOS, and Linux hosts.
google/grr GRR is a python client (agent) that is installed on target systems, and python server infrastructure that can manage and talk to clients.
google/rekall The Rekall Framework is a completely open collection of tools, implemented in Python under the Apache and GNU General Public License, for the extraction and analysis of digital artifacts computer systems.
intezer/linux-explorer Easy-to-use live forensics toolbox for Linux endpoints
Log Parser Log Parser 2.2 is a powerful, versatile tool that provides universal query access to text-based data such as log files, XML files and CSV files, as well as key data sources on the Windows operating system such as the Event Log, the Registry, the file system, and Active Directory
Invoke-IR/PowerForensics PowerForensics provides an all in one platform for live disk forensic analysis
MalwareSoup/MitreAttack Python wrapper for the Mitre ATT&CK framework API
nannib/Imm2Virtual This is a GUI (for Windows 64 bit) for a procedure to virtualize your EWF(E01), DD(Raw), AFF disk image file without converting it, directly with VirtualBox, forensically proof.
williballenthin/INDXParse Tool suite for inspecting NTFS artifacts
nshalabi/SysmonTools Utilities for Sysmon (Sysmon View and Sysmon Shell)
refractionPOINT/limacharlie LC is an Open Source, cross-platform (Windows, MacOS, Linux ++), realtime Endpoint Detection and Response sensor. The extra-light sensor, once installed on a system provides Flight Data Recorder type information (telemetry on all aspects of the system like processes, DNS, network IO, file IO etc).
The Sleuth Kit sleuthkit.org is the official website for The Sleuth Kit®, Autopsy®, and other open source digital investigation tools. From here, you can find documents, case studies, and download the latest versions of the software.
THIBER-ORG/userline Query and report user logons relations from MS Windows Security Events
TryCatchHCF/DumpsterFire "Security Incidents In A Box!" A modular, menu-driven, cross-platform tool for building customized, time-delayed, distributed security events. Easily create custom event chains for Blue Team drills and sensor / alert mapping. Red Teams can create decoy incidents, distractions, and lures to support and scale their operations. Build event sequence…
williballenthin/EVTXtract EVTXtract recovers and reconstructs fragments of EVTX log files from raw binary data, including unallocated space and memory images.

Exploits

Interesting exploits and PoC code. For research purpose only

CVE-2016-7255 The kernel-mode drivers in Microsoft Windows Vista SP2, Windows Server 2008 SP2 and R2 SP1, Windows 7 SP1, Windows 8.1, Windows Server 2012 Gold and R2, Windows RT 8.1, Windows 10 Gold, 1511, and 1607, and Windows Server 2016 allow local users to gain privileges via a crafted application, aka "Win32k Elevation of Privilege Vulnerability."
CVE-2017-5123 The `waitid` implementation in upstream kernels did not restrict the target destination to copy information results. This can allow local users to write to otherwise protected kernel memory, which can lead to privilege escalation.
CVE-2017-5753, CVE-2017-5715, CVE-2017-5754 Meltdown and Spectre exploit critical vulnerabilities in modern processors. These hardware bugs allow programs to steal data which is currently processed on the computer. While programs are typically not permitted to read data from other programs, a malicious program can exploit Meltdown and Spectre to get hold of secrets stored in the memory of other running programs. This might include your passwords stored in a password manager or browser, your personal photos, emails, instant messages and even business-critical documents.
CVE-2017-7089 A logic issue existed in the handling of the parent-tab. This issue was addressed with improved state management. Processing maliciously crafted web content may lead to universal cross site scripting.
CVE-2017-7115 The exploit achieves R/W access to the host's physical memory. The password for the archive is "one_ring". This exploit has been tested on the iPhone 7, iOS 10.2 (14C92). To run the exploit against different devices or versions, the symbols must be adjusted.
CVE-2017-8464 Windows Shell in Microsoft Windows Server 2008 SP2 and R2 SP1, Windows 7 SP1, Windows 8, Windows 8.1, Windows Server 2012 Gold and R2, Windows RT 8.1, Windows 10 Gold, 1511, 1607, 1703, and Windows Server 2016 allows local users or remote attackers to execute arbitrary code via a crafted .LNK file, which is not properly handled during icon display in Windows Explorer or any other application that parses the icon of the shortcut. aka "LNK Remote Code Execution Vulnerability."
CVE-2017-8759 Microsoft .NET Framework 2.0, 3.5, 3.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2 and 4.7 allow an attacker to execute code remotely via a malicious document or application, aka ".NET Framework Remote Code Execution Vulnerability."
CVE-2017-11882 Microsoft Office 2007 Service Pack 3, Microsoft Office 2010 Service Pack 2, Microsoft Office 2013 Service Pack 1, and Microsoft Office 2016 allow an attacker to run arbitrary code in the context of the current user by failing to properly handle objects in memory, aka "Microsoft Office Memory Corruption Vulnerability". This CVE ID is unique from CVE-2017-11884.
CVE-2017-13082 Wi-Fi Protected Access (WPA and WPA2) that supports IEEE 802.11r allows reinstallation of the Pairwise Transient Key (PTK) Temporal Key (TK) during the fast BSS transmission (FT) handshake, allowing an attacker within radio range to replay, decrypt, or spoof frames.
CVE-2017-15944 Palo Alto Networks PAN-OS before 6.1.19, 7.0.x before 7.0.19, 7.1.x before 7.1.14, and 8.0.x before 8.0.6 allows remote attackers to execute arbitrary code via vectors involving the management interface.
CVE-2017-17215
CVE-2018-0743 Windows Subsystem for Linux in Windows 10 version 1703, Windows 10 version 1709, and Windows Server, version 1709 allows an elevation of privilege vulnerability due to the way objects are handled in memory, aka "Windows Subsystem for Linux Elevation of Privilege Vulnerability".
CVE-2018-4878 A critical vulnerability (CVE-2018-4878) exists in Adobe Flash Player 28.0.0.137 and earlier versions. Successful exploitation could potentially allow an attacker to take control of the affected system.
Eplox/TCP-Starvation The idea behind this attack is to close a TCP session on the attacker's side, while leaving it open for the victim. Looping this will quickly fill up the victims session limit, effectively denying other users to access the service.
FriendsOfPHP/security-advisories The PHP Security Advisories Database references known security vulnerabilities in various PHP projects and libraries. This database must not serve as the primary source of information for security issues, it is not authoritative for any referenced software, but it allows to centralize information for convenience and easy consumption.
https://github.com/hasherezade/process_doppelganging My implementation of enSilo's Process Doppelganging (PE injection technique)
gellin/TeamViewer_Permissions_Hook_V1 A proof of concept injectable C++ dll, that uses naked inline hooking and direct memory modification to change your TeamViewer permissions.
ScottyBauer/Android_Kernel_CVE_POCs A list of my CVE's with POCs
Spajed/processrefund An attempt at Process Doppelgänging
spencerdodd/kernelpop Kernel privilege escalation enumeration and exploitation framework
tunz/js-vuln-db A collection of JavaScript engine CVEs with PoCs
victims/victims-cve-db This database contains information regarding CVE(s) that affect various language modules. We currently store version information corresponding to respective modules as understood by select sources.
xairy/kernel-exploits A bunch of proof-of-concept exploits for the Linux kernel

Malware Analysis

Tools related to malware analysis, malware development (for research purpose) and malware sample finding

adamkramer/rapid_env Rapid deployment of Windows environment (files, registry keys, mutex etc) to facilitate malware analysis
alphasoc/flightsim A utility to generate malicious network traffic and evaluate controls
CAPE Sandbox Malware Configuration And Payload Extraction
Cryptam Document Scanner Encrypted/obfuscated malicious document analyzer
DAS MALWERK DAS MALWERK - your one stop shop for fresh malware samples
FAME FAME Automates Malware Evaluation
hasherezade/libpeconv/runpe RunPE (aka Process Hollowing) is a well known technique allowing to injecting a new PE into a remote processes, imprersonating this process. The given implementation works for PE 32bit as well as 64bit.
hegusung/AVSignSeek Tool written in python3 to determine where the AV signature is located in a binary/payload
IRIS-H IRIS-H is an online digital forensics tool that performs automated static analysis of files stored in a directory-based or strictly structured formats.
katjahahn/PortEx Java library to analyse Portable Executable files with a special focus on malware analysis and PE malformation robustness
LordNoteworthy/al-khaser Public malware techniques used in the wild: Virtual Machine, Emulation, Debuggers, Sandbox detection.
Malpedia The primary goal of Malpedia is to provide a resource for rapid identification and actionable context when investigating malware. Openness to curated contributions shall ensure an accountable level of quality in order to foster meaningful and reproducible research.
malwareinfosec/EKFiddle A framework based on the Fiddler web debugger to study Exploit Kits, malvertising and malicious traffic in general.
Neo23x0/APTSimulator A toolset to make a system look as if it was the victim of an APT attack
nsmfoo/antivmdetection Script to create templates to use with VirtualBox to make vm detection harder
OALabs/BlobRunner Quickly debug shellcode extracted during malware analysis
OALabs/PyIATRebuild Automatically rebuild Import Address Table for dumped PE file. With python bindings!
phage-nz/ph0neutria ph0neutria is a malware zoo builder that sources samples straight from the wild. Everything is stored in Viper for ease of access and manageability.
quasar/QuasarRAT Quasar is a fast and light-weight remote administration tool coded in C#. Providing high stability and an easy-to-use user interface, Quasar is the perfect remote administration solution for you.
GoSecure/malboxes Builds malware analysis Windows VMs so that you don't have to.
SafeBreach-Labs/mkmalwarefrom Proof-of-concept two-stage dropper generator that uses bits from external sources
SEKOIA Dropper Analysis SEKOIA Dropper Analysis
UNIT 42: Playbook Viewver Viewing PAN Unit 42's adversary playbook via web interface

Mobile Security

Tools related to mobile security, mobile application auditing/debugging and mobile penetration testing

dpnishant/appmon AppMon is an automated framework for monitoring and tampering system API calls of native macOS, iOS and android apps. It is based on Frida.
Mobile X-Ray Just upload your iOS or Android mobile app to start a DAST, SAST and behavioral audit for OWASP Mobile Top 10 and other vulnerabilities

Network

Network and network security related tools

eldraco/domain_analyzer Analyze the security of any domain by finding all the information possible. Made in python.
michenriksen/aquatone AQUATONE is a set of tools for performing reconnaissance on domain names. It can discover subdomains on a given domain by using open sources as well as the more common subdomain dictionary brute force approach. After subdomain discovery, AQUATONE can then scan the hosts for common web ports and HTTP headers, HTML bodies and screenshots can be gathered and consolidated into a report for easy analysis of the attack surface.
PacketTotal A free, online PCAP analysis engine
WireEdit First-Of-A-Kind And The Only Full Stack WYSIWYG Pcap Editor

Password Tools

Tools related to password cracking, bruteforcing and also wordlists

fireeye/gocrack GoCrack provides APIs to manage password cracking tasks across supported cracking engines.
sc0tfree/mentalist Mentalist is a graphical tool for custom wordlist generation. It utilizes common human paradigms for constructing passwords and can output the full wordlist as well as rules compatible with Hashcat and John the Ripper.
danielmiessler/SecLists SecLists is the security tester's companion. It is a collection of multiple types of lists used during security assessments. List types include usernames, passwords, URLs, sensitive data grep strings, fuzzing payloads, and many more.

Plugins

Plugins and extensions for tools

Burp Suite
lightbulb-framework/lightbulb-framework LightBulb is an open source python framework for auditing web application firewalls and filters.
GDB
cs01/gdbgui Browser-based frontend to gdb (gnu debugger). Add breakpoints, view the stack, visualize data structures, and more in C, C++, Go, Rust, and Fortran. Run gdbgui from the terminal and a new tab will open in your browser.
cyrus-and/gdb-dashboard Modular visual interface for GDB in Python
longld/peda PEDA - Python Exploit Development Assistance for GDB
IDA Pro
airbus-seclab/bincat Binary code static analyser, with IDA integration. Performs value and taint analysis, type reconstruction.
CrowdStrike/CrowdDetox The CrowdDetox plugin for Hex-Rays automatically removes junk code and variables from Hex-Rays function decompilations.
fireeye/SimplifyGraph IDA Pro plugin to assist with complex graphs
gaasedelen/lighthouse Lighthouse is a code coverage plugin for IDA Pro. The plugin leverages IDA as a platform to map, explore, and visualize externally collected code coverage data when symbols or source may not be available for a given binary.
hasherezade/ida_ifl IFL - Interactive Functions List (plugin for IDA Pro)
joxeankoret/diaphora Diaphora, a Free and Open Source program diffing tool
OALabs/FindYara IDA python plugin to scan binary with Yara rules
onethawt/idaplugins-list A list of IDA Plugins
tintinweb/ida-batch_decompile *Decompile All the Things* - IDA Batch Decompile plugin and script for Hex-Ray's IDA Pro that adds the ability to batch decompile multiple files and their imports with additional annotations (xref, stack var size) to the pseudocode .c file
Riscure/DROP-IDA-plugin Experimental opaque predicate detection for IDA Pro
Radare2
radareorg/cutter A Qt and C++ GUI for radare2 reverse engineering framework
WinDBG
comaeio/SwishDbgExt Incident Response & Digital Forensics Debugging Extension
Microsoft/DbgShell A PowerShell front-end for the Windows debugger engine.
swwwolf/wdbgark WinDBG Anti-RootKit Extension

Privacy

Increase your privacy and/or operational security with this tools

Security Planner Improve your online safety with advice from experts

Simulation

Securtiy framework that can be used to simulate real attack scenario

mitre/caldera An automated adversary emulation system
NextronSystems/APTSimulator A toolset to make a system look as if it was the victim of an APT attack
uber-common/metta An information security preparedness tool to do adversarial simulation.

Social Engineering

Tools related to social engineering attack, OSINT and human hacking

boxug/trape People tracker on the Internet: Learn to track the world, to avoid being traced.
dafthack/MailSniper MailSniper is a penetration testing tool for searching through email in a Microsoft Exchange environment for specific terms (passwords, insider intel, network architecture information, etc.). It can be used as a non-administrative user to search their own email, or by an administrator to search the mailboxes of every user in a domain.
DataSploit/datasploit An #OSINT Framework to perform various recon techniques on Companies, People, Phone Number, Bitcoin Addresses, etc., aggregate all the raw data, and give data in multiple formats.
fireeye/ReelPhish ReelPhish: A Real-Time Two-Factor Phishing Tool
Mailsploit TL;DR: Mailsploit is a collection of bugs in email clients that allow effective sender spoofing and code injection attacks. The spoofing is not detected by Mail Transfer Agents (MTA) aka email servers, therefore circumventing spoofing protection mechanisms such as DMARC (DKIM/SPF) or spam filters.
securestate/king-phisher Phishing Campaign Toolkit
SpiderFoot SpiderFoot - Opensource Intelligence Automation
Undeadsec/EvilURL An unicode domain phishing generator for IDN Homograph Attack
ustayready/CredSniper CredSniper is a phishing framework written with the Python micro-framework Flask and Jinja2 templating which supports capturing 2FA tokens.

Vulnerable

Vulnerable software, application, VM for research purpose and virtual environment for security testing

bkerler/exploit_me Very vulnerable ARM application (CTF style exploitation tutorial)
clong/DetectionLab Vagrant & Packer scripts to build a lab environment complete with security tooling and logging best practices
cliffe/SecGen SecGen creates vulnerable virtual machines so students can learn security penetration testing techniques.
Lenas Reversing for Newbies Nice collection of tutorials aimed particularly for newbie reverse enginners...
Vulnerable Docker VM Ever fantasized about playing with docker misconfigurations, privilege escalation, etc. within a container?

Web Application Security

Web application security tools

appsecco/spaces-finder A tool to hunt for publicly accessible DigitalOcean Spaces
anatshri/svn-extractor Simple script to extract all web resources by means of .SVN folder exposed over network.
IlluminateJs IlluminateJs is a static javascript analysis engine (a deobfuscator so to say) aimed to help analyst understand obfuscated and potentially malicious JavaScript Code.
jonluca/Anubis Subdomain enumeration and information gathering tool
mazen160/bfac BFAC (Backup File Artifacts Checker): An automated tool that checks for backup artifacts that may disclose the web-application's source code.
mindedsecurity/JStillery Advanced JS Deobfuscation via Partial Evaluation.

Windows

Tools for Windows only

411Hall/JAWS JAWS is PowerShell script designed to help penetration testers (and CTFers) quickly identify potential privilege escalation vectors on Windows systems. It is written using PowerShell 2.0 so 'should' run on every Windows version since Windows 7.
api0cradle/UltimateAppLockerByPassList The goal of this repository is to document the most common techniques to bypass AppLocker.
google/sandbox-attacksurface-analysis-tools This is a small suite of tools to test various properties of sandboxes on Windows. Many of the checking tools take a -p flag which is used to specify the PID of a sandboxed process. The tool will impersonate the token of that process and determine what access is allowed from that location. Also it's recommended to run these tools as an administrator or local system to ensure the system can be appropriately enumerated.
hlldz/Invoke-Phant0m Windows Event Log Killer
jonatan1024/clrinject Injects C# EXE or DLL Assembly into every CLR runtime and AppDomain of another process.
Live Sysinternals Tools Live version of Sysinternal Suites
mattifestation/PoCSubjectInterfacePackage A PoC subject interface package (SIP) provider designed to educate about the required components of a SIP provider.
sevagas/macro_pack macro_pack is a tool used to automatize obfuscation and generation of MS Office documents for pentest, demo, and social engineering assessments. The goal of macro_pack is to simplify antimalware bypass and automatize the process from vba generation to final Office document generation.
monoxgas/sRDI Shellcode implementation of Reflective DLL Injection. Convert DLLs to position independent shellcode
nccgroup/demiguise HTA encryption tool for RedTeams
peewpw/Invoke-PSImage Embeds a PowerShell script in the pixels of a PNG file and generates a oneliner to execute
peewpw/Invoke-WCMDump PowerShell Script to Dump Windows Credentials from the Credential Manager
Plazmaz/LNKUp Generates malicious LNK file payloads for data exfiltration
secretsquirrel/SigThief Stealing Signatures and Making One Invalid Signature at a Time
stephenfewer/ReflectiveDLLInjection Reflective DLL injection is a library injection technique in which the concept of reflective programming is employed to perform the loading of a library from memory into a host process