# Everything



**CLI Tools  \[TOC]**

:black\_small\_square: **Shells**

&#x20; :small\_orange\_diamond: [**GNU Bash**](https://www.gnu.org/software/bash/) - is an sh-compatible shell that incorporates useful features from the Korn shell and C shell.\
&#x20; :small\_orange\_diamond: [**Zsh**](https://www.zsh.org/) - is a shell designed for interactive use, although it is also a powerful scripting language.\
&#x20; :small\_orange\_diamond: [**tclsh**](https://tcl-lang.org/) - is a very powerful cross-platform shell, suitable for a huge range of uses.\
&#x20; :small\_orange\_diamond: [**bash-it**](https://github.com/Bash-it/bash-it) - is a framework for using, developing and maintaining shell scripts and custom commands.\
&#x20; :small\_orange\_diamond: [**Oh My ZSH!**](https://ohmyz.sh/) - is the best framework for managing your Zsh configuration.\
&#x20; :small\_orange\_diamond: [**Oh My Fish**](https://github.com/oh-my-fish/oh-my-fish) - the Fishshell framework.\
&#x20; :small\_orange\_diamond: [**Starship**](https://github.com/starship/starship) - the cross-shell prompt written in Rust.\
&#x20; :small\_orange\_diamond: [**powerlevel10k**](https://github.com/romkatv/powerlevel10k) - is a fast reimplementation of Powerlevel9k ZSH theme.\


:black\_small\_square: **Shell plugins**

&#x20; :small\_orange\_diamond: [**z**](https://github.com/rupa/z) - tracks the folder you use the most and allow you to jump, without having to type the whole path.\
&#x20; :small\_orange\_diamond: [**fzf**](https://github.com/junegunn/fzf) - is a general-purpose command-line fuzzy finder.\
&#x20; :small\_orange\_diamond: [**zsh-autosuggestions**](https://github.com/zsh-users/zsh-autosuggestions) - Fish-like autosuggestions for Zsh.\
&#x20; :small\_orange\_diamond: [**zsh-syntax-highlighting**](https://github.com/zsh-users/zsh-syntax-highlighting) - Fish shell like syntax highlighting for Zsh.\
&#x20; :small\_orange\_diamond: [**Awesome ZSH Plugins**](https://github.com/unixorn/awesome-zsh-plugins) - A list of frameworks, plugins, themes and tutorials for ZSH.\


:black\_small\_square: **Managers**

&#x20; :small\_orange\_diamond: [**Midnight Commander**](https://midnight-commander.org/) - is a visual file manager, licensed under GNU General Public License.\
&#x20; :small\_orange\_diamond: [**ranger**](https://github.com/ranger/ranger) - is a VIM-inspired filemanager for the console.\
&#x20; :small\_orange\_diamond: [**nnn**](https://github.com/jarun/nnn) - is a tiny, lightning fast, feature-packed file manager.\
&#x20; :small\_orange\_diamond: [**screen**](https://www.gnu.org/software/screen/) - is a full-screen window manager that multiplexes a physical terminal.\
&#x20; :small\_orange\_diamond: [**tmux**](https://github.com/tmux/tmux/wiki) - is a terminal multiplexer, lets you switch easily between several programs in one terminal.\
&#x20; :small\_orange\_diamond: [**tmux-cssh**](https://github.com/peikk0/tmux-cssh) - is a tool to set comfortable and easy to use functionality, clustering and synchronizing tmux-sessions.\


:black\_small\_square: **Text editors**

&#x20; :small\_orange\_diamond: [**vi**](http://ex-vi.sourceforge.net/) - is one of the most common text editors on Unix.\
&#x20; :small\_orange\_diamond: [**vim**](https://www.vim.org/) - is a highly configurable text editor.\
&#x20; :small\_orange\_diamond: [**emacs**](https://www.gnu.org/software/emacs/) - is an extensible, customizable, free/libre text editor, and more.\
&#x20; :small\_orange\_diamond: [**micro**](https://github.com/zyedidia/micro) - is a modern and intuitive terminal-based text editor.\
&#x20; :small\_orange\_diamond: [**neovim**](https://neovim.io/) - is a free open source, powerful, extensible and usable code editor.\
&#x20; :small\_orange\_diamond: [**spacemacs**](https://www.spacemacs.org/) - a community-driven Emacs distribution.\
&#x20; :small\_orange\_diamond: [**spacevim**](https://spacevim.org/) - a community-driven vim distribution.\


:black\_small\_square: **Files and directories**

&#x20; :small\_orange\_diamond: [**fd**](https://github.com/sharkdp/fd) - is a simple, fast and user-friendly alternative to find.\
&#x20; :small\_orange\_diamond: [**ncdu**](https://dev.yorhel.nl/ncdu) - is an easy to use, fast disk usage analyzer.\


:black\_small\_square: **Network**

&#x20; :small\_orange\_diamond: [**PuTTY**](https://www.putty.org/) - is an SSH and telnet client, developed originally by Simon Tatham.\
&#x20; :small\_orange\_diamond: [**Mosh**](https://mosh.org/) - is a SSH wrapper designed to keep a SSH session alive over a volatile connection.\
&#x20; :small\_orange\_diamond: [**Eternal Terminal**](https://eternalterminal.dev/) - enables mouse-scrolling and tmux commands inside the SSH session.\
&#x20; :small\_orange\_diamond: [**nmap**](https://nmap.org/) - is a free and open source (license) utility for network discovery and security auditing.\
&#x20; :small\_orange\_diamond: [**zmap**](https://github.com/zmap/zmap) - is a fast single packet network scanner designed for Internet-wide network surveys.\
&#x20; :small\_orange\_diamond: [**Rust Scan**](https://github.com/RustScan/RustScan) - to find all open ports faster than Nmap.\
&#x20; :small\_orange\_diamond: [**masscan**](https://github.com/robertdavidgraham/masscan) - is the fastest Internet port scanner, spews SYN packets asynchronously.\
&#x20; :small\_orange\_diamond: [**pbscan**](https://github.com/gvb84/pbscan) - is a faster and more efficient stateless SYN scanner and banner grabber.\
&#x20; :small\_orange\_diamond: [**hping**](http://www.hping.org/) - is a command-line oriented TCP/IP packet assembler/analyzer.\
&#x20; :small\_orange\_diamond: [**mtr**](https://github.com/traviscross/mtr) - is a tool that combines the functionality of the 'traceroute' and 'ping' programs in a single tool.\
&#x20; :small\_orange\_diamond: [**mylg**](https://github.com/mehrdadrad/mylg) - utility which combines the functions of the different network probes in one diagnostic tool.\
&#x20; :small\_orange\_diamond: [**netcat**](http://netcat.sourceforge.net/) - utility which reads and writes data across network connections, using the TCP/IP protocol.\
&#x20; :small\_orange\_diamond: [**socat**](http://www.dest-unreach.org/socat/) - utility which transfers data between two objects.\
&#x20; :small\_orange\_diamond: [**tcpdump**](https://www.tcpdump.org/) - is a powerful command-line packet analyzer.\
&#x20; :small\_orange\_diamond: [**tshark**](https://www.wireshark.org/docs/man-pages/tshark.html) - is a tool that allows us to dump and analyze network traffic (wireshark cli).\
&#x20; :small\_orange\_diamond: [**Termshark**](https://termshark.io/) - is a simple terminal user-interface for tshark.\
&#x20; :small\_orange\_diamond: [**ngrep**](https://github.com/jpr5/ngrep) - is like GNU grep applied to the network layer.\
&#x20; :small\_orange\_diamond: [**netsniff-ng**](http://netsniff-ng.org/) - is a Swiss army knife for your daily Linux network plumbing if you will.\
&#x20; :small\_orange\_diamond: [**sockdump**](https://github.com/mechpen/sockdump) - dump unix domain socket traffic.\
&#x20; :small\_orange\_diamond: [**stenographer**](https://github.com/google/stenographer) - is a packet capture solution which aims to quickly spool all packets to disk.\
&#x20; :small\_orange\_diamond: [**tcpterm**](https://github.com/sachaos/tcpterm) - visualize packets in TUI.\
&#x20; :small\_orange\_diamond: [**bmon**](https://github.com/tgraf/bmon) - is a monitoring and debugging tool to capture networking related statistics and prepare them visually.\
&#x20; :small\_orange\_diamond: [**iptraf-ng**](http://iptraf.seul.org/2.6/manual.html#installation) - is a console-based network monitoring program for Linux that displays information about IP traffic.\
&#x20; :small\_orange\_diamond: [**vnstat**](https://github.com/vergoh/vnstat) - is a network traffic monitor for Linux and BSD.\
&#x20; :small\_orange\_diamond: [**iPerf3**](https://iperf.fr/) - is a tool for active measurements of the maximum achievable bandwidth on IP networks.\
&#x20; :small\_orange\_diamond: [**ethr**](https://github.com/Microsoft/Ethr) - is a Network Performance Measurement Tool for TCP, UDP & HTTP.\
&#x20; :small\_orange\_diamond: [**Etherate**](https://github.com/jwbensley/Etherate) - is a Linux CLI based Ethernet and MPLS traffic testing tool.\
&#x20; :small\_orange\_diamond: [**echoip**](https://github.com/mpolden/echoip) - is a IP address lookup service.\
&#x20; :small\_orange\_diamond: [**Nemesis**](https://github.com/troglobit/nemesis) - packet manipulation CLI tool; craft and inject packets of several protocols.\
&#x20; :small\_orange\_diamond: [**packetfu**](https://github.com/packetfu/packetfu) - a mid-level packet manipulation library for Ruby.\
&#x20; :small\_orange\_diamond: [**Scapy**](https://scapy.net/) - packet manipulation library; forge, send, decode, capture packets of a wide number of protocols.\
&#x20; :small\_orange\_diamond: [**impacket**](https://github.com/SecureAuthCorp/impacket) - is a collection of Python classes for working with network protocols.\
&#x20; :small\_orange\_diamond: [**ssh-audit**](https://github.com/arthepsy/ssh-audit) - is a tool for SSH server auditing.\
&#x20; :small\_orange\_diamond: [**aria2**](https://aria2.github.io/) - is a lightweight multi-protocol & multi-source command-line download utility.\
&#x20; :small\_orange\_diamond: [**iptables-tracer**](https://github.com/x-way/iptables-tracer) - observe the path of packets through the iptables chains.\
&#x20; :small\_orange\_diamond: [**inception**](https://github.com/proabiral/inception) - a highly configurable tool to check for whatever you like against any number of hosts.\


:black\_small\_square: **Network (DNS)**

&#x20; :small\_orange\_diamond: [**dnsdiag**](https://github.com/farrokhi/dnsdiag) - is a DNS diagnostics and performance measurement tools.\
&#x20; :small\_orange\_diamond: [**fierce**](https://github.com/mschwager/fierce) - is a DNS reconnaissance tool for locating non-contiguous IP space.\
&#x20; :small\_orange\_diamond: [**subfinder**](https://github.com/subfinder/subfinder) - is a subdomain discovery tool that discovers valid subdomains for websites.\
&#x20; :small\_orange\_diamond: [**sublist3r**](https://github.com/aboul3la/Sublist3r) - is a fast subdomains enumeration tool for penetration testers.\
&#x20; :small\_orange\_diamond: [**amass**](https://github.com/OWASP/Amass) - is tool that obtains subdomain names by scraping data sources, crawling web archives, and more.\
&#x20; :small\_orange\_diamond: [**namebench**](https://github.com/google/namebench) - provides personalized DNS server recommendations based on your browsing history.\
&#x20; :small\_orange\_diamond: [**massdns**](https://github.com/blechschmidt/massdns) - is a high-performance DNS stub resolver for bulk lookups and reconnaissance.\
&#x20; :small\_orange\_diamond: [**knock**](https://github.com/guelfoweb/knock) - is a tool to enumerate subdomains on a target domain through a wordlist.\
&#x20; :small\_orange\_diamond: [**dnsperf**](https://github.com/DNS-OARC/dnsperf) - DNS performance testing tools.\
&#x20; :small\_orange\_diamond: [**dnscrypt-proxy 2**](https://github.com/jedisct1/dnscrypt-proxy) - a flexible DNS proxy, with support for encrypted DNS protocols.\
&#x20; :small\_orange\_diamond: [**dnsdbq**](https://github.com/dnsdb/dnsdbq) - API client providing access to passive DNS database systems.\
&#x20; :small\_orange\_diamond: [**grimd**](https://github.com/looterz/grimd) - fast dns proxy, built to black-hole internet advertisements and malware servers.\


:black\_small\_square: **Network (HTTP)**

&#x20; :small\_orange\_diamond: [**curl**](https://curl.haxx.se/) - is a command line tool and library for transferring data with URLs.\
&#x20; :small\_orange\_diamond: [**kurly**](https://gitlab.com/davidjpeacock/kurly) - is an alternative to the widely popular curl program, written in Golang.\
&#x20; :small\_orange\_diamond: [**HTTPie**](https://github.com/jakubroztocil/httpie) - is an user-friendly HTTP client.\
&#x20; :small\_orange\_diamond: [**wuzz**](https://github.com/asciimoo/wuzz) - is an interactive cli tool for HTTP inspection.\
&#x20; :small\_orange\_diamond: [**h2spec**](https://github.com/summerwind/h2spec) - is a conformance testing tool for HTTP/2 implementation.\
&#x20; :small\_orange\_diamond: [**h2t**](https://github.com/gildasio/h2t) - is a simple tool to help sysadmins to hardening their websites.\
&#x20; :small\_orange\_diamond: [**htrace.sh**](https://github.com/trimstray/htrace.sh) - is a simple Swiss Army knife for http/https troubleshooting and profiling.\
&#x20; :small\_orange\_diamond: [**httpstat**](https://github.com/reorx/httpstat) - is a tool that visualizes curl statistics in a way of beauty and clarity.\
&#x20; :small\_orange\_diamond: [**httplab**](https://github.com/gchaincl/httplab) - is an interactive web server.\
&#x20; :small\_orange\_diamond: [**Lynx**](https://lynx.browser.org/) - is a text browser for the World Wide Web.\
&#x20; :small\_orange\_diamond: [**Browsh**](https://github.com/browsh-org/browsh/) - is a fully interactive, real-time, and modern text-based browser.\
&#x20; :small\_orange\_diamond: [**HeadlessBrowsers**](https://github.com/dhamaniasad/HeadlessBrowsers) - a list of (almost) all headless web browsers in existence.\
&#x20; :small\_orange\_diamond: [**ab**](https://httpd.apache.org/docs/2.4/programs/ab.html) - is a single-threaded command line tool for measuring the performance of HTTP web servers.\
&#x20; :small\_orange\_diamond: [**siege**](https://www.joedog.org/siege-home/) - is an http load testing and benchmarking utility.\
&#x20; :small\_orange\_diamond: [**wrk**](https://github.com/wg/wrk) - is a modern HTTP benchmarking tool capable of generating significant load.\
&#x20; :small\_orange\_diamond: [**wrk2**](https://github.com/giltene/wrk2) - is a constant throughput, correct latency recording variant of wrk.\
&#x20; :small\_orange\_diamond: [**vegeta**](https://github.com/tsenart/vegeta) - is a constant throughput, correct latency recording variant of wrk.\
&#x20; :small\_orange\_diamond: [**bombardier**](https://github.com/codesenberg/bombardier) - is a fast cross-platform HTTP benchmarking tool written in Go.\
&#x20; :small\_orange\_diamond: [**gobench**](https://github.com/cmpxchg16/gobench) - http/https load testing and benchmarking tool.\
&#x20; :small\_orange\_diamond: [**hey**](https://github.com/rakyll/hey) - HTTP load generator, ApacheBench (ab) replacement, formerly known as rakyll/boom.\
&#x20; :small\_orange\_diamond: [**boom**](https://github.com/tarekziade/boom) - is a script you can use to quickly smoke-test your web app deployment.\
&#x20; :small\_orange\_diamond: [**SlowHTTPTest**](https://github.com/shekyan/slowhttptest) - is a tool that simulates some Application Layer Denial of Service attacks by prolonging HTTP.\
&#x20; :small\_orange\_diamond: [**gobuster**](https://github.com/OJ/gobuster) - is a free and open source directory/file & DNS busting tool written in Go.\
&#x20; :small\_orange\_diamond: [**ssllabs-scan**](https://github.com/ssllabs/ssllabs-scan) - command-line reference-implementation client for SSL Labs APIs.\
&#x20; :small\_orange\_diamond: [**http-observatory**](https://github.com/mozilla/http-observatory) - Mozilla HTTP Observatory cli version.\


:black\_small\_square: **SSL**

&#x20; :small\_orange\_diamond: [**openssl**](https://www.openssl.org/) - is a robust, commercial-grade, and full-featured toolkit for the TLS and SSL protocols.\
&#x20; :small\_orange\_diamond: [**gnutls-cli**](https://gnutls.org/manual/html_node/gnutls_002dcli-Invocation.html) - client program to set up a TLS connection to some other computer.\
&#x20; :small\_orange\_diamond: [**sslyze** ](https://github.com/nabla-c0d3/sslyze)- fast and powerful SSL/TLS server scanning library.\
&#x20; :small\_orange\_diamond: [**sslscan**](https://github.com/rbsec/sslscan) - tests SSL/TLS enabled services to discover supported cipher suites.\
&#x20; :small\_orange\_diamond: [**testssl.sh**](https://github.com/drwetter/testssl.sh) - testing TLS/SSL encryption anywhere on any port.\
&#x20; :small\_orange\_diamond: [**cipherscan**](https://github.com/mozilla/cipherscan) - a very simple way to find out which SSL ciphersuites are supported by a target.\
&#x20; :small\_orange\_diamond: [**spiped**](http://www.tarsnap.com/spiped.html) - is a utility for creating symmetrically encrypted and authenticated pipes between socket addresses.\
&#x20; :small\_orange\_diamond: [**Certbot**](https://github.com/certbot/certbot) - is EFF's tool to obtain certs from Let's Encrypt and (optionally) auto-enable HTTPS on your server.\
&#x20; :small\_orange\_diamond: [**mkcert**](https://github.com/FiloSottile/mkcert) - simple zero-config tool to make locally trusted development certificates with any names you'd like.\
&#x20; :small\_orange\_diamond: [**certstrap**](https://github.com/square/certstrap) - tools to bootstrap CAs, certificate requests, and signed certificates.\
&#x20; :small\_orange\_diamond: [**Sublert**](https://github.com/yassineaboukir/sublert) - is a security and reconnaissance tool to automatically monitor new subdomains.\
&#x20; :small\_orange\_diamond: [**mkchain**](https://github.com/trimstray/mkchain) - open source tool to help you build a valid SSL certificate chain.\


:black\_small\_square: **Security**

&#x20; :small\_orange\_diamond: [**SELinux**](https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/5/html/deployment_guide/ch-selinux) - provides a flexible Mandatory Access Control (MAC) system built into the Linux kernel.\
&#x20; :small\_orange\_diamond: [**AppArmor**](https://wiki.ubuntu.com/AppArmor) - proactively protects the operating system and applications from external or internal threats.\
&#x20; :small\_orange\_diamond: [**grapheneX**](https://github.com/grapheneX/grapheneX) - Automated System Hardening Framework.\
&#x20; :small\_orange\_diamond: [**DevSec Hardening Framework**](https://github.com/dev-sec/) - Security + DevOps: Automatic Server Hardening.\


:black\_small\_square: **Auditing Tools**

&#x20; :small\_orange\_diamond: [**ossec**](https://www.ossec.net/) - actively monitoring all aspects of system activity with file integrity monitoring.\
&#x20; :small\_orange\_diamond: [**auditd**](https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/6/html/security_guide/chap-system_auditing) - provides a way to track security-relevant information on your system.\
&#x20; :small\_orange\_diamond: [**Tiger**](https://www.nongnu.org/tiger/) - is a security tool that can be use both as a security audit and intrusion detection system.\
&#x20; :small\_orange\_diamond: [**Lynis**](https://cisofy.com/lynis/) - battle-tested security tool for systems running Linux, macOS, or Unix-based operating system.\
&#x20; :small\_orange\_diamond: [**LinEnum**](https://github.com/rebootuser/LinEnum) - scripted Local Linux Enumeration & Privilege Escalation Checks.\
&#x20; :small\_orange\_diamond: [**Rkhunter**](https://github.com/installation/rkhunter) - scanner tool for Linux systems that scans backdoors, rootkits and local exploits on your systems.\
&#x20; :small\_orange\_diamond: [**PE-sieve**](https://github.com/hasherezade/pe-sieve) - is a light-weight tool that helps to detect malware running on the system.\


:black\_small\_square: **System Diagnostics/Debuggers**

&#x20; :small\_orange\_diamond: [**strace**](https://github.com/strace/strace) - diagnostic, debugging and instructional userspace utility for Linux.\
&#x20; :small\_orange\_diamond: [**DTrace**](http://dtrace.org/blogs/about/) - is a performance analysis and troubleshooting tool.\
&#x20; :small\_orange\_diamond: [**ltrace**](https://en.wikipedia.org/wiki/Ltrace) - is a library call tracer, used to trace calls made by programs to library functions.\
&#x20; :small\_orange\_diamond: [**ptrace-burrito**](https://github.com/brainsmoke/ptrace-burrito) - is a friendly wrapper around ptrace.\
&#x20; :small\_orange\_diamond: [**perf-tools**](https://github.com/brendangregg/perf-tools) - performance analysis tools based on Linux perf\_events (aka perf) and ftrace.\
&#x20; :small\_orange\_diamond: [**bpftrace**](https://github.com/iovisor/bpftrace) - high-level tracing language for Linux eBPF.\
&#x20; :small\_orange\_diamond: [**sysdig**](https://github.com/draios/sysdig) - system exploration and troubleshooting tool with first class support for containers.\
&#x20; :small\_orange\_diamond: [**Valgrind**](http://www.valgrind.org/) - is an instrumentation framework for building dynamic analysis tools.\
&#x20; :small\_orange\_diamond: [**gperftools**](https://github.com/gperftools/gperftools) - high-performance multi-threaded malloc() implementation, plus some performance analysis tools.\
&#x20; :small\_orange\_diamond: [**glances**](https://nicolargo.github.io/glances/) - cross-platform system monitoring tool written in Python.\
&#x20; :small\_orange\_diamond: [**htop**](https://github.com/hishamhm/htop) - interactive text-mode process viewer for Unix systems. It aims to be a better 'top'.\
&#x20; :small\_orange\_diamond: [**bashtop**](https://github.com/aristocratos/bashtop) - Linux resource monitor written in pure Bash.\
&#x20; :small\_orange\_diamond: [**nmon**](http://nmon.sourceforge.net/pmwiki.php) - a single executable for performance monitoring and data analysis.\
&#x20; :small\_orange\_diamond: [**atop**](https://www.atoptool.nl/) - ASCII performance monitor. Includes statistics for CPU, memory, disk, swap, network, and processes.\
&#x20; :small\_orange\_diamond: [**lsof**](https://en.wikipedia.org/wiki/Lsof) - displays in its output information about files that are opened by processes.\
&#x20; :small\_orange\_diamond: [**FlameGraph**](http://www.brendangregg.com/flamegraphs.html) - stack trace visualizer.\
&#x20; :small\_orange\_diamond: [**lsofgraph**](https://github.com/zevv/lsofgraph) - convert Unix lsof output to a graph showing FIFO and UNIX interprocess communication.\
&#x20; :small\_orange\_diamond: [**rr**](https://github.com/mozilla/rr) - is a lightweight tool for recording, replaying and debugging execution of applications.\
&#x20; :small\_orange\_diamond: [**Performance Co-Pilot**](https://pcp.io/index.html) - a system performance analysis toolkit.\
&#x20; :small\_orange\_diamond: [**hexyl**](https://github.com/sharkdp/hexyl) - a command-line hex viewer.\


:black\_small\_square: **Log Analyzers**

&#x20; :small\_orange\_diamond: [**angle-grinder**](https://github.com/rcoh/angle-grinder) - slice and dice log files on the command line.\
&#x20; :small\_orange\_diamond: [**lnav**](https://lnav.org) - log file navigator with search and automatic refresh.\
&#x20; :small\_orange\_diamond: [**GoAccess**](https://goaccess.io/) - real-time web log analyzer and interactive viewer that runs in a terminal.\
&#x20; :small\_orange\_diamond: [**ngxtop**](https://github.com/lebinh/ngxtop) - real-time metrics for nginx server.\


:black\_small\_square: **Databases**

&#x20; :small\_orange\_diamond: [**usql**](https://github.com/xo/usql) - universal command-line interface for SQL databases.\
&#x20; :small\_orange\_diamond: [**pgcli**](https://github.com/dbcli/pgcli) - postgres CLI with autocompletion and syntax highlighting.\
&#x20; :small\_orange\_diamond: [**mycli**](https://github.com/dbcli/mycli) - terminal client for MySQL with autocompletion and syntax highlighting.\
&#x20; :small\_orange\_diamond: [**litecli**](https://github.com/dbcli/litecli) - SQLite CLI with autocompletion and syntax highlighting.\
&#x20; :small\_orange\_diamond: [**mssql-cli**](https://github.com/dbcli/mssql-cli) - SQL Server CLI with autocompletion and syntax highlighting.\
&#x20; :small\_orange\_diamond: [**OSQuery**](https://github.com/osquery/osquery) - is a SQL powered operating system instrumentation, monitoring, and analytics framework.\
&#x20; :small\_orange\_diamond: [**pgsync**](https://github.com/ankane/pgsync) - sync data from one Postgres database to another.\
&#x20; :small\_orange\_diamond: [**iredis**](https://github.com/laixintao/iredis) - a terminal client for redis with autocompletion and syntax highlighting.\


:black\_small\_square: **TOR**

&#x20; :small\_orange\_diamond: [**Nipe**](https://github.com/GouveaHeitor/nipe) - script to make Tor Network your default gateway.\
&#x20; :small\_orange\_diamond: [**multitor**](https://github.com/trimstray/multitor) - a tool that lets you create multiple TOR instances with a load-balancing.\


:black\_small\_square: **Messengers/IRC Clients**

&#x20; :small\_orange\_diamond: [**Irssi**](https://irssi.org) - is a free open source terminal based IRC client.\
&#x20; :small\_orange\_diamond: [**WeeChat**](https://weechat.org/) - is an extremely extensible and lightweight IRC client.\


:black\_small\_square: **Productivity**

&#x20; :small\_orange\_diamond: [**taskwarrior**](https://taskwarrior.org) - task management system, todo list\


:black\_small\_square: **Other**

&#x20; :small\_orange\_diamond: [**sysadmin-util**](https://github.com/skx/sysadmin-util) - tools for Linux/Unix sysadmins.\
&#x20; :small\_orange\_diamond: [**incron**](http://inotify.aiken.cz/) - is an inode-based filesystem notification technology.\
&#x20; :small\_orange\_diamond: [**lsyncd**](https://github.com/axkibe/lsyncd) - synchronizes local directories with remote targets (Live Syncing Daemon).\
&#x20; :small\_orange\_diamond: [**GRV**](https://github.com/rgburke/grv) - is a terminal based interface for viewing Git repositories.\
&#x20; :small\_orange\_diamond: [**Tig**](https://jonas.github.io/tig/) - text-mode interface for Git.\
&#x20; :small\_orange\_diamond: [**tldr**](https://github.com/tldr-pages/tldr) - simplified and community-driven man pages.\
&#x20; :small\_orange\_diamond: [**archiver**](https://github.com/mholt/archiver) - easily create and extract .zip, .tar, .tar.gz, .tar.bz2, .tar.xz, .tar.lz4, .tar.sz, and .rar.\
&#x20; :small\_orange\_diamond: [**commander.js**](https://github.com/tj/commander.js) - minimal CLI creator in JavaScript.\
&#x20; :small\_orange\_diamond: [**gron**](https://github.com/tomnomnom/gron) - make JSON greppable!\
&#x20; :small\_orange\_diamond: [**bed**](https://github.com/itchyny/bed) - binary editor written in Go.\


**GUI Tools  \[TOC]**

:black\_small\_square: **Terminal emulators**

&#x20; :small\_orange\_diamond: [**Guake**](https://github.com/Guake/guake) - is a dropdown terminal made for the GNOME desktop environment.\
&#x20; :small\_orange\_diamond: [**Terminator**](https://gnometerminator.blogspot.com/p/introduction.html) - is based on GNOME Terminal, useful features for sysadmins and other users.\
&#x20; :small\_orange\_diamond: [**Kitty**](https://sw.kovidgoyal.net/kitty/) - is a GPU based terminal emulator that supports smooth scrolling and images.\
&#x20; :small\_orange\_diamond: [**Alacritty**](https://github.com/alacritty/alacritty) - is a fast, cross-platform, OpenGL terminal emulator.\


:black\_small\_square: **Network**

&#x20; :small\_orange\_diamond: [**Wireshark**](https://www.wireshark.org/) - is the world’s foremost and widely-used network protocol analyzer.\
&#x20; :small\_orange\_diamond: [**Ettercap**](https://www.ettercap-project.org/) - is a comprehensive network monitor tool.\
&#x20; :small\_orange\_diamond: [**EtherApe**](https://etherape.sourceforge.io/) - is a graphical network monitoring solution.\
&#x20; :small\_orange\_diamond: [**Packet Sender**](https://packetsender.com/) - is a networking utility for packet generation and built-in UDP/TCP/SSL client and servers.\
&#x20; :small\_orange\_diamond: [**Ostinato**](https://ostinato.org/) - is a packet crafter and traffic generator.\
&#x20; :small\_orange\_diamond: [**JMeter™**](https://jmeter.apache.org/) - open source software to load test functional behavior and measure performance.\
&#x20; :small\_orange\_diamond: [**locust**](https://github.com/locustio/locust) - scalable user load testing tool written in Python.\


:black\_small\_square: **Browsers**

&#x20; :small\_orange\_diamond: [**TOR Browser**](https://www.torproject.org/) - protect your privacy and defend yourself against network surveillance and traffic analysis.\


:black\_small\_square: **Password Managers**

&#x20; :small\_orange\_diamond: [**KeePassXC**](https://keepassxc.org/) - store your passwords safely and auto-type them into your everyday websites and apps.\
&#x20; :small\_orange\_diamond: [**Bitwarden**](https://bitwarden.com/) - open source password manager with built-in sync.\


:black\_small\_square: **Messengers/IRC Clients**

&#x20; :small\_orange\_diamond: [**HexChat**](https://hexchat.github.io/index.html) - is an IRC client based on XChat.\
&#x20; :small\_orange\_diamond: [**Pidgin**](https://pidgin.im/) - is an easy to use and free chat client used by millions.\


:black\_small\_square: **Messengers (end-to-end encryption)**

&#x20; :small\_orange\_diamond: [**Signal**](https://www.signal.org/) - is an encrypted communications app.\
&#x20; :small\_orange\_diamond: [**Wire**](https://wire.com/en/) - secure messaging, file sharing, voice calls and video conferences. All protected with end-to-end encryption.\
&#x20; :small\_orange\_diamond: [**TorChat**](https://github.com/prof7bit/TorChat) - decentralized anonymous instant messenger on top of Tor Hidden Services.\
&#x20; :small\_orange\_diamond: [**Matrix**](https://matrix.org/) - an open network for secure, decentralized, real-time communication.\


:black\_small\_square: **Text editors**

&#x20; :small\_orange\_diamond: [**Sublime Text**](https://www.sublimetext.com/3) - is a lightweight, cross-platform code editor known for its speed, ease of use.\
&#x20; :small\_orange\_diamond: [**Visual Studio Code**](https://code.visualstudio.com/) - an open-source and free source code editor developed by Microsoft.\
&#x20; :small\_orange\_diamond: [**Atom**](https://atom.io/) - a hackable text editor for the 21st Century.\


**Web Tools  \[TOC]**

:black\_small\_square: **Browsers**

&#x20; :small\_orange\_diamond: [**SSL/TLS Capabilities of Your Browser**](https://www.ssllabs.com/ssltest/viewMyClient.html) - test your browser's SSL implementation.\
&#x20; :small\_orange\_diamond: [**Can I use**](https://caniuse.com/) - provides up-to-date browser support tables for support of front-end web technologies.\
&#x20; :small\_orange\_diamond: [**Panopticlick 3.0**](https://panopticlick.eff.org/) - is your browser safe against tracking?\
&#x20; :small\_orange\_diamond: [**Privacy Analyzer**](https://privacy.net/analyzer/) - see what data is exposed from your browser.\
&#x20; :small\_orange\_diamond: [**Web Browser Security**](https://browserleaks.com/) - it's all about Web Browser fingerprinting.\
&#x20; :small\_orange\_diamond: [**How's My SSL?**](https://www.howsmyssl.com/) - help a web server developer learn what real world TLS clients were capable of.\
&#x20; :small\_orange\_diamond: [**sslClientInfo**](https://suche.org/sslClientInfo) - client test (incl TLSv1.3 information).\


:black\_small\_square: **SSL/Security**

&#x20; :small\_orange\_diamond: [**SSLLabs Server Test**](https://www.ssllabs.com/ssltest/) - performs a deep analysis of the configuration of any SSL web server.\
&#x20; :small\_orange\_diamond: [**SSLLabs Server Test (DEV)**](https://dev.ssllabs.com/ssltest/) - performs a deep analysis of the configuration of any SSL web server.\
&#x20; :small\_orange\_diamond: [**ImmuniWeb® SSLScan**](https://www.immuniweb.com/ssl/) - test SSL/TLS (PCI DSS, HIPAA and NIST).\
&#x20; :small\_orange\_diamond: [**SSL Check**](https://www.jitbit.com/sslcheck/) - scan your website for non-secure content.\
&#x20; :small\_orange\_diamond: [**SSL Scanner**](http://www.ssltools.com) - analyze website security.\
&#x20; :small\_orange\_diamond: [**CryptCheck**](https://cryptcheck.fr/) - test your TLS server configuration (e.g. ciphers).\
&#x20; :small\_orange\_diamond: [**urlscan.io**](https://urlscan.io/) - service to scan and analyse websites.\
&#x20; :small\_orange\_diamond: [**Report URI**](https://report-uri.com/home/tools) - monitoring security policies like CSP and HPKP.\
&#x20; :small\_orange\_diamond: [**CSP Evaluator**](https://csp-evaluator.withgoogle.com/) - allows developers and security experts to check if a Content Security Policy.\
&#x20; :small\_orange\_diamond: [**Useless CSP**](https://uselesscsp.com/) - public list about CSP in some big players (might make them care a bit more).\
&#x20; :small\_orange\_diamond: [**Why No HTTPS?**](https://whynohttps.com/) - top 100 websites by Alexa rank not automatically redirecting insecure requests.\
&#x20; :small\_orange\_diamond: [**TLS Cipher Suite Search**](https://ciphersuite.info/)- cipher suite search engine.\
&#x20; :small\_orange\_diamond: [**cipherli.st**](https://github.com/RaymiiOrg/cipherli.st) - strong ciphers for Apache, Nginx, Lighttpd, and more.**\***\
&#x20; :small\_orange\_diamond: [**dhtool**](https://2ton.com.au/dhtool/) - public Diffie-Hellman parameter service/tool.\
&#x20; :small\_orange\_diamond: [**badssl.com**](https://badssl.com/) - memorable site for testing clients against bad SSL configs.\
&#x20; :small\_orange\_diamond: [**tlsfun.de**](https://tlsfun.de/) - registered for various tests regarding the TLS/SSL protocol.\
&#x20; :small\_orange\_diamond: [**CAA Record Helper**](https://sslmate.com/caa/) - generate a CAA policy.\
&#x20; :small\_orange\_diamond: [**Common CA Database**](https://ccadb.org/resources) - repository of information about CAs, and their root and intermediate certificates.\
&#x20; :small\_orange\_diamond: [**CERTSTREAM**](https://certstream.calidog.io/) - real-time certificate transparency log update stream.\
&#x20; :small\_orange\_diamond: [**crt.sh**](https://crt.sh/) - discovers certificates by continually monitoring all of the publicly known CT.\
&#x20; :small\_orange\_diamond: [**Hardenize**](https://www.hardenize.com/) - deploy the security standards.\
&#x20; :small\_orange\_diamond: [**Cipher suite compatibility**](https://cryptcheck.fr/suite/) - test TLS cipher suite compatibility.\
&#x20; :small\_orange\_diamond: [**urlvoid**](https://www.urlvoid.com/) - this service helps you detect potentially malicious websites.\
&#x20; :small\_orange\_diamond: [**security.txt**](https://securitytxt.org/) - a proposed standard (generator) which allows websites to define security policies.\
&#x20; :small\_orange\_diamond: [**ssl-config-generator**](https://github.com/mozilla/ssl-config-generator) - help you follow the Mozilla Server Side TLS configuration guidelines.\


:black\_small\_square: **HTTP Headers & Web Linters**

&#x20; :small\_orange\_diamond: [**Security Headers**](https://securityheaders.com/) - analyse the HTTP response headers (with rating system to the results).\
&#x20; :small\_orange\_diamond: [**Observatory by Mozilla**](https://observatory.mozilla.org/) - set of tools to analyze your website.\
&#x20; :small\_orange\_diamond: [**webhint**](https://webhint.io/) - is a linting tool that will help you with your site's accessibility, speed, security, and more.\


:black\_small\_square: **DNS**

&#x20; :small\_orange\_diamond: [**ViewDNS**](http://viewdns.info/) - one source for free DNS related tools and information.\
&#x20; :small\_orange\_diamond: [**DNSLookup**](https://dnslookup.org/) - is an advanced DNS lookup tool.\
&#x20; :small\_orange\_diamond: [**DNSlytics**](https://dnslytics.com/) - online DNS investigation tool.\
&#x20; :small\_orange\_diamond: [**DNS Spy**](https://dnsspy.io/) - monitor, validate and verify your DNS configurations.\
&#x20; :small\_orange\_diamond: [**Zonemaster**](https://zonemaster.iis.se/en/) - helps you to control how your DNS works.\
&#x20; :small\_orange\_diamond: [**Leaf DNS**](http://leafdns.com/) - comprehensive DNS tester.\
&#x20; :small\_orange\_diamond: [**Find subdomains online**](https://findsubdomains.com/) - find subdomains for security assessment penetration test.\
&#x20; :small\_orange\_diamond: [**DNSdumpster**](https://dnsdumpster.com/) - dns recon & research, find & lookup dns records.\
&#x20; :small\_orange\_diamond: [**DNS Table online**](https://dnstable.com/) - search for DNS records by domain, IP, CIDR, ISP.\
&#x20; :small\_orange\_diamond: [**intoDNS**](https://intodns.com/) - DNS and mail server health checker.\
&#x20; :small\_orange\_diamond: [**DNS Bajaj**](http://www.zonecut.net/dns/) - check the delegation of your domain.\
&#x20; :small\_orange\_diamond: [**BuddyDNS Delegation LAB**](https://www.buddyns.com/delegation-lab/) - check, trace and visualize delegation of your domain.\
&#x20; :small\_orange\_diamond: [**dnssec-debugger**](https://dnssec-debugger.verisignlabs.com/) - DS or DNSKEY records validator.\
&#x20; :small\_orange\_diamond: [**PTRarchive.com**](http://ptrarchive.com/) - this site is responsible for the safekeeping of historical reverse DNS records.\
&#x20; :small\_orange\_diamond: [**xip.io**](http://xip.io/) - wildcard DNS for everyone.\
&#x20; :small\_orange\_diamond: [**nip.io**](https://nip.io/) - dead simple wildcard DNS for any IP Address.\
&#x20; :small\_orange\_diamond: [**dnslookup (ceipam)**](https://ceipam.eu/en/dnslookup.php) - one of the best DNS propagation checker (and not only).\
&#x20; :small\_orange\_diamond: [**What's My DNS**](https://whatsmydns.com) - DNS propagation checking tool.\
&#x20; :small\_orange\_diamond: [**DNSGrep**](https://blog.erbbysam.com/index.php/2019/02/09/dnsgrep/) - quickly searching large DNS datasets.\


:black\_small\_square: **Mail**

&#x20; :small\_orange\_diamond: [**smtp-tls-checker**](https://luxsci.com/smtp-tls-checker) - check an email domain for SMTP TLS support.\
&#x20; :small\_orange\_diamond: [**MX Toolbox**](https://mxtoolbox.com/SuperTool.aspx) - all of your MX record, DNS, blacklist and SMTP diagnostics in one integrated tool.\
&#x20; :small\_orange\_diamond: [**Secure Email**](https://www.checktls.com/index.html) - complete email test tools for email technicians.\
&#x20; :small\_orange\_diamond: [**blacklistalert**](http://www.blacklistalert.org/) - checks to see if your domain is on a Real Time Spam Blacklist.\
&#x20; :small\_orange\_diamond: [**MultiRBL**](http://multirbl.valli.org/) - complete IP check for sending Mailservers.\
&#x20; :small\_orange\_diamond: [**DKIM SPF & Spam Assassin Validator**](https://dkimvalidator.com/) - checks mail authentication and scores messages with Spam Assassin.\


:black\_small\_square: **Encoders/Decoders and Regex testing**

&#x20; :small\_orange\_diamond: [**URL Encode/Decode**](https://www.url-encode-decode.com/) - tool from above to either encode or decode a string of text.\
&#x20; :small\_orange\_diamond: [**Uncoder**](https://uncoder.io/) - the online translator for search queries on log data.\
&#x20; :small\_orange\_diamond: [**Regex101**](https://regex101.com/) - online regex tester and debugger: PHP, PCRE, Python, Golang and JavaScript.\
&#x20; :small\_orange\_diamond: [**RegExr**](https://regexr.com/) - online tool to learn, build, & test Regular Expressions (RegEx / RegExp).\
&#x20; :small\_orange\_diamond: [**RegEx Testing**](https://www.regextester.com/) - online regex testing tool.\
&#x20; :small\_orange\_diamond: [**RegEx Pal**](https://www.regexpal.com/) - online regex testing tool + other tools.\
&#x20; :small\_orange\_diamond: [**The Cyber Swiss Army Knife**](https://gchq.github.io/CyberChef/) - a web app for encryption, encoding, compression and data analysis.\


:black\_small\_square: **Net-tools**

&#x20; :small\_orange\_diamond: [**Netcraft**](https://toolbar.netcraft.com/site_report) - detailed report about the site, helping you to make informed choices about their integrity.**\***\
&#x20; :small\_orange\_diamond: [**RIPE NCC Atlas**](https://atlas.ripe.net/) - a global, open, distributed Internet measurement platform.\
&#x20; :small\_orange\_diamond: [**Robtex**](https://www.robtex.com/) - uses various sources to gather public information about IP numbers, domain names, host names, etc.\
&#x20; :small\_orange\_diamond: [**Security Trails**](https://securitytrails.com/) - APIs for Security Companies, Researchers and Teams.\
&#x20; :small\_orange\_diamond: [**Online Curl**](https://tools.keycdn.com/curl) - curl test, analyze HTTP Response Headers.\
&#x20; :small\_orange\_diamond: [**Online Tools for Developers**](https://extendsclass.com/) - HTTP API tools, testers, encoders, converters, formatters, and other tools.\
&#x20; :small\_orange\_diamond: [**Ping.eu**](https://ping.eu/) - online Ping, Traceroute, DNS lookup, WHOIS and others.\
&#x20; :small\_orange\_diamond: [**Network-Tools**](https://network-tools.com/) - network tools for webmasters, IT technicians & geeks.\
&#x20; :small\_orange\_diamond: [**BGPview**](https://bgpview.io/) - search for any ASN, IP, Prefix or Resource name.\
&#x20; :small\_orange\_diamond: [**Is BGP safe yet?**](https://isbgpsafeyet.com/) - check BGP (RPKI) security of ISPs and other major Internet players.\
&#x20; :small\_orange\_diamond: [**Riseup**](https://riseup.net/) - provides online communication tools for people and groups working on liberatory social change.\
&#x20; :small\_orange\_diamond: [**VirusTotal**](https://www.virustotal.com/gui/home/upload) - analyze suspicious files and URLs to detect types of malware.\


:black\_small\_square: **Privacy**

&#x20; :small\_orange\_diamond: [**privacytools.io**](https://www.privacytools.io/) - provides knowledge and tools to protect your privacy against global mass surveillance.\
&#x20; :small\_orange\_diamond: [**DNS Privacy Test Servers**](https://dnsprivacy.org/wiki/display/DP/DNS+Privacy+Test+Servers) - DNS privacy recursive servers list (with a 'no logging' policy).\


:black\_small\_square: **Code parsers/playgrounds**

&#x20; :small\_orange\_diamond: [**ShellCheck**](https://www.shellcheck.net/) - finds bugs in your shell scripts.\
&#x20; :small\_orange\_diamond: [**explainshell**](https://explainshell.com/) - get interactive help texts for shell commands.\
&#x20; :small\_orange\_diamond: [**jsbin**](https://jsbin.com/?html,output) - live pastebin for HTML, CSS & JavaScript, and more.\
&#x20; :small\_orange\_diamond: [**CodeSandbox**](https://codesandbox.io/) - online code editor for web application development.\
&#x20; :small\_orange\_diamond: [**PHP Sandbox**](http://sandbox.onlinephpfunctions.com/) - test your PHP code with this code tester.\
&#x20; :small\_orange\_diamond: [**Repl.it**](https://www.repl.it/) - an instant IDE to learn, build, collaborate, and host all in one place.\
&#x20; :small\_orange\_diamond: [**vclFiddle**](http://www.vclfiddle.net/) - is an online tool for experimenting with the Varnish Cache VCL.\


:black\_small\_square: **Performance**

&#x20; :small\_orange\_diamond: [**GTmetrix**](https://gtmetrix.com/) - analyze your site’s speed and make it faster.\
&#x20; :small\_orange\_diamond: [**Sucuri loadtimetester**](https://performance.sucuri.net/) - test here the performance of any of your sites from across the globe.\
&#x20; :small\_orange\_diamond: [**Pingdom Tools**](https://tools.pingdom.com/) - analyze your site’s speed around the world.\
&#x20; :small\_orange\_diamond: [**PingMe.io**](https://pingme.io/) - run website latency tests across multiple geographic regions.\
&#x20; :small\_orange\_diamond: [**PageSpeed Insights**](https://developers.google.com/speed/pagespeed/insights/) - analyze your site’s speed and make it faster.\
&#x20; :small\_orange\_diamond: [**web.dev**](https://web.dev/) - helps developers like you learn and apply the web's modern capabilities to your own sites and apps.\
&#x20; :small\_orange\_diamond: [**Lighthouse**](https://github.com/GoogleChrome/lighthouse) - automated auditing, performance metrics, and best practices for the web.\


:black\_small\_square: **Mass scanners (search engines)**

&#x20; :small\_orange\_diamond: [**Censys**](https://censys.io/) - platform that helps information security practitioners discover, monitor, and analyze devices.\
&#x20; :small\_orange\_diamond: [**Shodan**](https://www.shodan.io/) - the world's first search engine for Internet-connected devices.\
&#x20; :small\_orange\_diamond: [**Shodan 2000**](https://2000.shodan.io/#/) - this tool looks for randomly generated data from Shodan.\
&#x20; :small\_orange\_diamond: [**GreyNoise**](https://viz.greynoise.io/table) - mass scanner such as Shodan and Censys.\
&#x20; :small\_orange\_diamond: [**ZoomEye**](https://www.zoomeye.org/) - search engine for cyberspace that lets the user find specific network components.\
&#x20; :small\_orange\_diamond: [**netograph**](https://netograph.io/) - tools to monitor and understand deep structure of the web.\
&#x20; :small\_orange\_diamond: [**FOFA**](https://fofa.so/) - is a cyberspace search engine.\
&#x20; :small\_orange\_diamond: [**onyphe**](https://www.onyphe.io/) - is a search engine for open-source and cyber threat intelligence data collected.\
&#x20; :small\_orange\_diamond: [**IntelligenceX**](https://intelx.io/) - is a search engine and data archive.\
&#x20; :small\_orange\_diamond: [**binaryedge**](https://app.binaryedge.io/) - it scan the entire internet space and create real-time threat intelligence streams and reports.\
&#x20; :small\_orange\_diamond: [**Spyse**](https://spyse.com/) - Internet assets registry: networks, threats, web objects, etc.\
&#x20; :small\_orange\_diamond: [**wigle**](https://wigle.net/) - is a submission-based catalog of wireless networks. All the networks. Found by Everyone.\
&#x20; :small\_orange\_diamond: [**PublicWWW**](https://publicwww.com/) - find any alphanumeric snippet, signature or keyword in the web pages HTML, JS and CSS code.\
&#x20; :small\_orange\_diamond: [**IntelTechniques**](https://inteltechniques.com/index.html) - this repository contains hundreds of online search utilities.\
&#x20; :small\_orange\_diamond: [**hunter**](https://hunter.io/) - lets you find email addresses in seconds and connect with the people that matter for your business.\
&#x20; :small\_orange\_diamond: [**GhostProject?**](https://ghostproject.fr/) - search by full email address or username.\
&#x20; :small\_orange\_diamond: [**databreaches**](https://www.databreaches.live/) - was my email affected by data breach?\
&#x20; :small\_orange\_diamond: [**We Leak Info**](https://weleakinfo.com) - world's fastest and largest data breach search engine.\
&#x20; :small\_orange\_diamond: [**Pulsedive**](https://pulsedive.com/) - scans of malicious URLs, IPs, and domains, including port scans and web requests.\
&#x20; :small\_orange\_diamond: [**Buckets by Grayhatwarfar**](https://buckets.grayhatwarfare.com/) - database with public search for Open Amazon S3 Buckets and their contents.\
&#x20; :small\_orange\_diamond: [**Vigilante.pw**](https://vigilante.pw/) - the breached database directory.\
&#x20; :small\_orange\_diamond: [**builtwith**](https://builtwith.com/) - find out what websites are built with.\
&#x20; :small\_orange\_diamond: [**NerdyData**](https://nerdydata.com/) - search the web's source code for technologies, across millions of sites.\
&#x20; :small\_orange\_diamond: [**zorexeye**](http://zorexeye.com/) - search for sites, images, apps, softwares & more.\
&#x20; :small\_orange\_diamond: [**Mamont's open FTP Index**](https://www.mmnt.net/) - if a target has an open FTP site with accessible content it will be listed here.\
&#x20; :small\_orange\_diamond: [**OSINT Framework**](https://osintframework.com/) - focused on gathering information from free tools or resources.\
&#x20; :small\_orange\_diamond: [**maltiverse**](https://www.maltiverse.com/search) - is a service oriented to cybersecurity analysts for the advanced analysis of indicators of compromise.\
&#x20; :small\_orange\_diamond: [**Leaked Source**](https://leakedsource.ru/main/) - is a collaboration of data found online in the form of a lookup.\
&#x20; :small\_orange\_diamond: [**We Leak Info**](https://search.weleakinfo.com/) - to help everyday individuals secure their online life, avoiding getting hacked.\
&#x20; :small\_orange\_diamond: [**pipl**](https://pipl.com/) - is the place to find the person behind the email address, social username or phone number.\
&#x20; :small\_orange\_diamond: [**abuse.ch**](https://abuse.ch/) - is operated by a random swiss guy fighting malware for non-profit.\
&#x20; :small\_orange\_diamond: [**malc0de**](http://malc0de.com/database/) - malware search engine.\
&#x20; :small\_orange\_diamond: [**Cybercrime Tracker**](https://cybercrime-tracker.net/index.php) - monitors and tracks various malware families that are used to perpetrate cyber crimes.\
&#x20; :small\_orange\_diamond: [**shhgit**](https://github.com/eth0izzle/shhgit/) - find GitHub secrets in real time.\
&#x20; :small\_orange\_diamond: [**searchcode**](https://searchcode.com/) - helping you find real world examples of functions, API's and libraries.\
&#x20; :small\_orange\_diamond: [**Insecam**](http://www.insecam.org/) - the world biggest directory of online surveillance security cameras.\
&#x20; :small\_orange\_diamond: [**index-of**](http://index-of.es/) - contains great stuff like: security, hacking, reverse engineering, cryptography, programming etc.\
&#x20; :small\_orange\_diamond: [**Rapid7 Labs Open Data**](https://opendata.rapid7.com/) - is a great resources of datasets from Project Sonar.\
&#x20; :small\_orange\_diamond: [**Common Response Headers**](https://webtechsurvey.com/common-response-headers) - the largest database of HTTP response headers.\


:black\_small\_square: **Generators**

&#x20; :small\_orange\_diamond: [**thispersondoesnotexist**](https://thispersondoesnotexist.com/) - generate fake faces in one click - endless possibilities.\
&#x20; :small\_orange\_diamond: [**AI Generated Photos**](https://generated.photos) - 100.000 AI generated faces.\
&#x20; :small\_orange\_diamond: [**fakenamegenerator**](https://www.fakenamegenerator.com/) - your randomly generated identity.\
&#x20; :small\_orange\_diamond: [**Intigriti Redirector**](https://tools.intigriti.io/redirector/) - open redirect/SSRF payload generator.\


:black\_small\_square: **Passwords**

&#x20; :small\_orange\_diamond: [**have i been pwned?**](https://haveibeenpwned.com/) - check if you have an account that has been compromised in a data breach.\
&#x20; :small\_orange\_diamond: [**dehashed**](https://www.dehashed.com/) - is a hacked database search engine.\
&#x20; :small\_orange\_diamond: [**Leaked Source**](https://leakedsource.ru/) - is a collaboration of data found online in the form of a lookup.\


:black\_small\_square: **CVE/Exploits databases**

&#x20; :small\_orange\_diamond: [**CVE Mitre**](https://cve.mitre.org/) - list of publicly known cybersecurity vulnerabilities.\
&#x20; :small\_orange\_diamond: [**CVE Details**](https://www.cvedetails.com/) - CVE security vulnerability advanced database.\
&#x20; :small\_orange\_diamond: [**Exploit DB**](https://www.exploit-db.com/) - CVE compliant archive of public exploits and corresponding vulnerable software.\
&#x20; :small\_orange\_diamond: [**0day.today**](https://0day.today/) - exploits market provides you the possibility to buy/sell zero-day exploits.\
&#x20; :small\_orange\_diamond: [**sploitus**](https://sploitus.com/) - the exploit and tools database.\
&#x20; :small\_orange\_diamond: [**cxsecurity**](https://cxsecurity.com/exploit/) - free vulnerability database.\
&#x20; :small\_orange\_diamond: [**Vulncode-DB**](https://www.vulncode-db.com/) - is a database for vulnerabilities and their corresponding source code if available.\
&#x20; :small\_orange\_diamond: [**cveapi**](https://cveapi.com/) - free API for CVE data.\


:black\_small\_square: **Mobile apps scanners**

&#x20; :small\_orange\_diamond: [**ImmuniWeb® Mobile App Scanner**](https://www.immuniweb.com/mobile/) - test security and privacy of mobile apps (iOS & Android).\
&#x20; :small\_orange\_diamond: [**Quixxi**](https://vulnerabilitytest.quixxi.com/) - free Mobile App Vulnerability Scanner for Android & iOS.\
&#x20; :small\_orange\_diamond: [**Ostorlab**](https://www.ostorlab.co/scan/mobile/) - analyzes mobile application to identify vulnerabilities and potential weaknesses.\


:black\_small\_square: **Private Search Engines**

&#x20; :small\_orange\_diamond: [**Startpage**](https://www.startpage.com/) - the world's most private search engine.\
&#x20; :small\_orange\_diamond: [**searX**](https://searx.me/) - a privacy-respecting, hackable metasearch engine.\
&#x20; :small\_orange\_diamond: [**darksearch**](https://darksearch.io/) - the 1st real Dark Web search engine.\
&#x20; :small\_orange\_diamond: [**Qwant**](https://www.qwant.com/) - the search engine that respects your privacy.\
&#x20; :small\_orange\_diamond: [**DuckDuckGo**](https://duckduckgo.com/) - the search engine that doesn't track you.\
&#x20; :small\_orange\_diamond: [**Swisscows**](https://swisscows.com/) - privacy safe web search\
&#x20; :small\_orange\_diamond: [**Disconnect**](https://search.disconnect.me/) - the search engine that anonymizes your searches.\
&#x20; :small\_orange\_diamond: [**MetaGer**](https://metager.org/) - the search engine that uses anonymous proxy and hidden Tor branches.\


:black\_small\_square: **Secure Webmail Providers**

&#x20; :small\_orange\_diamond: [**CounterMail**](https://countermail.com/) - online email service, designed to provide maximum security and privacy.\
&#x20; :small\_orange\_diamond: [**Mail2Tor**](http://mail2tor.com/) - is a Tor Hidden Service that allows anyone to send and receive emails anonymously.\
&#x20; :small\_orange\_diamond: [**Tutanota**](https://tutanota.com/) - is the world's most secure email service and amazingly easy to use.\
&#x20; :small\_orange\_diamond: [**Protonmail**](https://protonmail.com/) - is the world's largest secure email service, developed by CERN and MIT scientists.\
&#x20; :small\_orange\_diamond: [**Startmail**](https://www.startmail.com/en/) - private & encrypted email made easy.\


:black\_small\_square: **Crypto**

&#x20; :small\_orange\_diamond: [**Keybase**](https://keybase.io/) - it's open source and powered by public-key cryptography.\


:black\_small\_square: **PGP Keyservers**

&#x20; :small\_orange\_diamond: [**SKS OpenPGP Key server**](https://keyserver.ubuntu.com/) - services for the SKS keyservers used by OpenPGP.\


**Systems/Services  \[TOC]**

:black\_small\_square: **Operating Systems**

&#x20; :small\_orange\_diamond: [**Slackware**](http://www.slackware.com/) - the most "Unix-like" Linux distribution.\
&#x20; :small\_orange\_diamond: [**OpenBSD**](https://www.openbsd.org/) - multi-platform 4.4BSD-based UNIX-like operating system.\
&#x20; :small\_orange\_diamond: [**HardenedBSD**](https://hardenedbsd.org/) - HardenedBSD aims to implement innovative exploit mitigation and security solutions.\
&#x20; :small\_orange\_diamond: [**Kali Linux**](https://www.kali.org/) - Linux distribution used for Penetration Testing, Ethical Hacking and network security assessments.\
&#x20; :small\_orange\_diamond: [**Parrot Security OS**](https://www.parrotsec.org/) - cyber security GNU/Linux environment.\
&#x20; :small\_orange\_diamond: [**Backbox Linux**](https://www.backbox.org/) - penetration test and security assessment oriented Ubuntu-based Linux distribution.\
&#x20; :small\_orange\_diamond: [**BlackArch**](https://blackarch.org/) - is an Arch Linux-based penetration testing distribution for penetration testers.\
&#x20; :small\_orange\_diamond: [**Pentoo**](https://www.pentoo.ch/) - is a security-focused livecd based on Gentoo.\
&#x20; :small\_orange\_diamond: [**Security Onion**](https://securityonion.net/) - Linux distro for intrusion detection, enterprise security monitoring, and log management.\
&#x20; :small\_orange\_diamond: [**Tails**](https://tails.boum.org/) - is a live system that aims to preserve your privacy and anonymity.\
&#x20; :small\_orange\_diamond: [**vedetta**](https://github.com/vedetta-com/vedetta) - OpenBSD router boilerplate.\
&#x20; :small\_orange\_diamond: [**Qubes OS**](https://www.qubes-os.org) - is a security-oriented OS that uses Xen-based virtualization.\


:black\_small\_square: **HTTP(s) Services**

&#x20; :small\_orange\_diamond: [**Varnish Cache**](https://varnish-cache.org/) - HTTP accelerator designed for content-heavy dynamic web sites.\
&#x20; :small\_orange\_diamond: [**Nginx**](https://nginx.org/) - open source web and reverse proxy server that is similar to Apache, but very light weight.\
&#x20; :small\_orange\_diamond: [**OpenResty**](https://openresty.org/en/) - is a dynamic web platform based on NGINX and LuaJIT.\
&#x20; :small\_orange\_diamond: [**Tengine**](https://github.com/alibaba/tengine) - a distribution of Nginx with some advanced features.\
&#x20; :small\_orange\_diamond: [**Caddy Server**](https://caddyserver.com/) - is an open source, HTTP/2-enabled web server with HTTPS by default.\
&#x20; :small\_orange\_diamond: [**HAProxy**](https://www.haproxy.org/) - the reliable, high performance TCP/HTTP load balancer.\


:black\_small\_square: **DNS Services**

&#x20; :small\_orange\_diamond: [**Unbound**](https://nlnetlabs.nl/projects/unbound/about/) - validating, recursive, and caching DNS resolver (with TLS).\
&#x20; :small\_orange\_diamond: [**Knot Resolver**](https://www.knot-resolver.cz/) - caching full resolver implementation, including both a resolver library and a daemon.\
&#x20; :small\_orange\_diamond: [**PowerDNS**](https://www.powerdns.com/) - is an open source authoritative DNS server, written in C++ and licensed under the GPL.\


:black\_small\_square: **Other Services**

&#x20; :small\_orange\_diamond: [**3proxy**](https://github.com/z3APA3A/3proxy) - tiny free proxy server.\


:black\_small\_square: **Security/hardening**

&#x20; :small\_orange\_diamond: [**Emerald Onion**](https://twitter.com/EmeraldOnion) - is a 501(c)(3) nonprofit organization and transit internet service provider (ISP).\
&#x20; :small\_orange\_diamond: [**pi-hole**](https://github.com/pi-hole/pi-hole) - the Pi-hole® is a DNS sinkhole that protects your devices from unwanted content.\
&#x20; :small\_orange\_diamond: [**maltrail**](https://github.com/stamparm/maltrail) - malicious traffic detection system.\
&#x20; :small\_orange\_diamond: [**security\_monkey**](https://github.com/Netflix/security_monkey) - monitors AWS, GCP, OpenStack, and GitHub orgs for assets and their changes over time.\
&#x20; :small\_orange\_diamond: [**firecracker**](https://github.com/firecracker-microvm/firecracker) - secure and fast microVMs for serverless computing.\
&#x20; :small\_orange\_diamond: [**streisand**](https://github.com/StreisandEffect/streisand) - sets up a new server running your choice of WireGuard, OpenSSH, OpenVPN, and more.\


**Networks  \[TOC]**

:black\_small\_square: **Tools**

&#x20; :small\_orange\_diamond: [**CapAnalysis**](https://www.capanalysis.net/ca/) - web visual tool to analyze large amounts of captured network traffic (PCAP analyzer).\
&#x20; :small\_orange\_diamond: [**netbox**](https://github.com/digitalocean/netbox) - IP address management (IPAM) and data center infrastructure management (DCIM) tool.\


:black\_small\_square: **Labs**

&#x20; :small\_orange\_diamond: [**NRE Labs**](https://labs.networkreliability.engineering/) - learn automation by doing it. Right now, right here, in your browser.\


:black\_small\_square: **Other**

&#x20; :small\_orange\_diamond: [**LBNL's Network Research Group**](https://ee.lbl.gov/) - home page of the Network Research Group (NRG).\


**Containers/Orchestration  \[TOC]**

:black\_small\_square: **CLI Tools**

&#x20; :small\_orange\_diamond: [**gvisor**](https://github.com/google/gvisor) - container runtime sandbox.\
&#x20; :small\_orange\_diamond: [**ctop**](https://github.com/bcicen/ctop) - top-like interface for container metrics.\


:black\_small\_square: **Web Tools**

&#x20; :small\_orange\_diamond: [**Moby**](https://github.com/moby/moby) - a collaborative project for the container ecosystem to assemble container-based system.\
&#x20; :small\_orange\_diamond: [**Traefik**](https://traefik.io/) - open source reverse proxy/load balancer provides easier integration with Docker and Let's encrypt.\
&#x20; :small\_orange\_diamond: [**kong**](https://github.com/Kong/kong) - The Cloud-Native API Gateway.\
&#x20; :small\_orange\_diamond: [**rancher**](https://github.com/rancher/rancher) - complete container management platform.\
&#x20; :small\_orange\_diamond: [**portainer**](https://github.com/portainer/portainer) - making Docker management easy.\
&#x20; :small\_orange\_diamond: [**nginx-proxy**](https://github.com/jwilder/nginx-proxy) - automated nginx proxy for Docker containers using docker-gen.\


:black\_small\_square: **Security**

&#x20; :small\_orange\_diamond: [**docker-bench-security**](https://github.com/docker/docker-bench-security) - checks for dozens of common best-practices around deploying Docker.\
&#x20; :small\_orange\_diamond: [**trivy**](https://github.com/aquasecurity/trivy) - vulnerability scanner for containers, suitable for CI.\
&#x20; :small\_orange\_diamond: [**Harbor**](https://goharbor.io/) - cloud native registry project that stores, signs, and scans content.\


:black\_small\_square: **Manuals/Tutorials/Best Practices**

&#x20; :small\_orange\_diamond: [**docker-cheat-sheet**](https://github.com/wsargent/docker-cheat-sheet) - a quick reference cheat sheet on Docker.\
&#x20; :small\_orange\_diamond: [**awesome-docker**](https://github.com/veggiemonk/awesome-docker) - a curated list of Docker resources and projects.\
&#x20; :small\_orange\_diamond: [**docker\_practice**](https://github.com/yeasy/docker_practice) - learn and understand Docker technologies, with real DevOps practice!\
&#x20; :small\_orange\_diamond: [**labs** ](https://github.com/docker/labs)- is a collection of tutorials for learning how to use Docker with various tools.\
&#x20; :small\_orange\_diamond: [**dockerfiles**](https://github.com/jessfraz/dockerfiles) - various Dockerfiles I use on the desktop and on servers.\
&#x20; :small\_orange\_diamond: [**kubernetes-the-hard-way**](https://github.com/kelseyhightower/kubernetes-the-hard-way) - bootstrap Kubernetes the hard way on Google Cloud Platform. No scripts.\
&#x20; :small\_orange\_diamond: [**kubernetes-the-easy-way**](https://github.com/jamesward/kubernetes-the-easy-way) - bootstrap Kubernetes the easy way on Google Cloud Platform. No scripts.\
&#x20; :small\_orange\_diamond: [**cheatsheet-kubernetes-A4**](https://github.com/dennyzhang/cheatsheet-kubernetes-A4) - Kubernetes CheatSheets in A4.\
&#x20; :small\_orange\_diamond: [**k8s-security**](https://github.com/kabachook/k8s-security) - kubernetes security notes and best practices.\
&#x20; :small\_orange\_diamond: [**kubernetes-production-best-practices**](https://learnk8s.io/production-best-practices/) - checklists with best-practices for production-ready Kubernetes.\
&#x20; :small\_orange\_diamond: [**kubernetes-production-best-practices**](https://github.com/freach/kubernetes-security-best-practice) - kubernetes security - best practice guide.\
&#x20; :small\_orange\_diamond: [**kubernetes-failure-stories**](https://github.com/hjacobs/kubernetes-failure-stories) - is a compilation of public failure/horror stories related to Kubernetes.\


**Manuals/Howtos/Tutorials  \[TOC]**

:black\_small\_square: **Shell/Command line**

&#x20; :small\_orange\_diamond: [**pure-bash-bible**](https://github.com/dylanaraps/pure-bash-bible) - is a collection of pure bash alternatives to external processes.\
&#x20; :small\_orange\_diamond: [**pure-sh-bible**](https://github.com/dylanaraps/pure-sh-bible) - is a collection of pure POSIX sh alternatives to external processes.\
&#x20; :small\_orange\_diamond: [**bash-guide**](https://github.com/Idnan/bash-guide) - is a guide to learn bash.\
&#x20; :small\_orange\_diamond: [**bash-handbook**](https://github.com/denysdovhan/bash-handbook) - for those who wanna learn Bash.\
&#x20; :small\_orange\_diamond: [**The Bash Hackers Wiki**](https://wiki.bash-hackers.org/start) - hold documentation of any kind about GNU Bash.\
&#x20; :small\_orange\_diamond: [**Shell & Utilities**](http://pubs.opengroup.org/onlinepubs/9699919799/utilities/contents.html) - describes the commands offered to application programs by POSIX-conformant systems.\
&#x20; :small\_orange\_diamond: [**the-art-of-command-line**](https://github.com/jlevy/the-art-of-command-line) - master the command line, in one page.\
&#x20; :small\_orange\_diamond: [**Shell Style Guide**](https://google.github.io/styleguide/shellguide.html) - a shell style guide for Google-originated open-source projects.\


:black\_small\_square: **Text Editors**

&#x20; :small\_orange\_diamond: [**Vim Cheat Sheet**](https://vim.rtorr.com/) - great multi language vim guide.\


:black\_small\_square: **Python**

&#x20; :small\_orange\_diamond: [**Awesome Python**](https://awesome-python.com/) - a curated list of awesome Python frameworks, libraries, software and resources.\
&#x20; :small\_orange\_diamond: [**python-cheatsheet**](https://github.com/gto76/python-cheatsheet) - comprehensive Python cheatsheet.\
&#x20; :small\_orange\_diamond: [**pythoncheatsheet.org**](https://www.pythoncheatsheet.org/) - basic reference for beginner and advanced developers.\


:black\_small\_square: **Sed & Awk & Other**

&#x20; :small\_orange\_diamond: [**F’Awk Yeah!**](https://posts.specterops.io/fawk-yeah-advanced-sed-and-awk-usage-parsing-for-pentesters-3-e5727e11a8ad?gi=c8f9506b26b6) - advanced sed and awk usage (Parsing for Pentesters 3).\


:black\_small\_square: **\*nix & Network**

&#x20; :small\_orange\_diamond: [**nixCraft**](https://www.cyberciti.biz/) - linux and unix tutorials for new and seasoned sysadmin.\
&#x20; :small\_orange\_diamond: [**TecMint**](https://www.tecmint.com/) - the ideal Linux blog for Sysadmins & Geeks.\
&#x20; :small\_orange\_diamond: [**Omnisecu**](http://www.omnisecu.com/index.php) - free Networking, System Administration and Security tutorials.\
&#x20; :small\_orange\_diamond: [**linux-cheat**](https://github.com/cirosantilli/linux-cheat) - Linux tutorials and cheatsheets. Minimal examples. Mostly user-land CLI utilities.\
&#x20; :small\_orange\_diamond: [**linuxupskillchallenge**](https://github.com/snori74/linuxupskillchallenge) - learn the skills required to sysadmin.\
&#x20; :small\_orange\_diamond: [**Unix Toolbox**](http://cb.vu/unixtoolbox.xhtml) - Unix/Linux/BSD commands and tasks which are useful for IT work or for advanced users.\
&#x20; :small\_orange\_diamond: [**Linux Kernel Teaching**](https://linux-kernel-labs.github.io/refs/heads/master/index.html) - is a collection of lectures and labs Linux kernel topics.\
&#x20; :small\_orange\_diamond: [**htop explained**](https://peteris.rocks/blog/htop/) - explanation of everything you can see in htop/top on Linux.\
&#x20; :small\_orange\_diamond: [**Linux Guide and Hints**](https://linuxguideandhints.com/) - tutorials on system administration in Fedora and CentOS.\
&#x20; :small\_orange\_diamond: [**strace-little-book**](https://github.com/NanXiao/strace-little-book) - a little book which introduces strace.\
&#x20; :small\_orange\_diamond: [**linux-tracing-workshop**](https://github.com/goldshtn/linux-tracing-workshop) - examples and hands-on labs for Linux tracing tools workshops.\
&#x20; :small\_orange\_diamond: [**http2-explained**](https://github.com/bagder/http2-explained) - a detailed document explaining and documenting HTTP/2.\
&#x20; :small\_orange\_diamond: [**http3-explained**](https://github.com/bagder/http3-explained) - a document describing the HTTP/3 and QUIC protocols.\
&#x20; :small\_orange\_diamond: [**HTTP/2 in Action**](https://www.manning.com/books/http2-in-action) - an excellent introduction to the new HTTP/2 standard.\
&#x20; :small\_orange\_diamond: [**Let's code a TCP/IP stack**](https://www.saminiir.com/lets-code-tcp-ip-stack-1-ethernet-arp/) - great stuff to learn network and system programming at a deeper level.\
&#x20; :small\_orange\_diamond: [**Nginx Admin's Handbook**](https://github.com/trimstray/nginx-admins-handbook) - how to improve NGINX performance, security and other important things.\
&#x20; :small\_orange\_diamond: [**nginxconfig.io**](https://github.com/digitalocean/nginxconfig.io) - NGINX config generator on steroids.\
&#x20; :small\_orange\_diamond: [**openssh guideline**](https://infosec.mozilla.org/guidelines/openssh) - is to help operational teams with the configuration of OpenSSH server and client.\
&#x20; :small\_orange\_diamond: [**SSH Handshake Explained**](https://gravitational.com/blog/ssh-handshake-explained/) - is a relatively brief description of the SSH handshake.\
&#x20; :small\_orange\_diamond: [**ISC's Knowledgebase**](https://kb.isc.org/docs/using-this-knowledgebase) - you'll find some general information about BIND 9, ISC DHCP, and Kea DHCP.\
&#x20; :small\_orange\_diamond: [**PacketLife.net**](https://packetlife.net/) - a place to record notes while studying for Cisco's CCNP certification.\


:black\_small\_square: **Microsoft**

&#x20; :small\_orange\_diamond: [**AD-Attack-Defense**](https://github.com/infosecn1nja/AD-Attack-Defense) - attack and defend active directory using modern post exploitation activity.\


:black\_small\_square: **Large-scale systems**

&#x20; :small\_orange\_diamond: [**The System Design Primer**](https://github.com/donnemartin/system-design-primer) - learn how to design large-scale systems.\
&#x20; :small\_orange\_diamond: [**Awesome Scalability**](https://github.com/binhnguyennus/awesome-scalability) - best practices in building High Scalability, High Availability, High Stability, and more.\
&#x20; :small\_orange\_diamond: [**Web Architecture 101**](https://engineering.videoblocks.com/web-architecture-101-a3224e126947?gi=a896808d22a) - the basic architecture concepts.\


:black\_small\_square: **System hardening**

&#x20; :small\_orange\_diamond: [**CIS Benchmarks**](https://www.cisecurity.org/cis-benchmarks/) - secure configuration settings for over 100 technologies, available as a free PDF.\
&#x20; :small\_orange\_diamond: [**Security Harden CentOS 7**](https://highon.coffee/blog/security-harden-centos-7/) - this walks you through the steps required to security harden CentOS.\
&#x20; :small\_orange\_diamond: [**CentOS 7 Server Hardening Guide**](https://www.lisenet.com/2017/centos-7-server-hardening-guide/) - great guide for hardening CentOS; familiar with OpenSCAP.\
&#x20; :small\_orange\_diamond: [**awesome-security-hardening**](https://github.com/decalage2/awesome-security-hardening) - is a collection of security hardening guides, tools and other resources.\
&#x20; :small\_orange\_diamond: [**The Practical Linux Hardening Guide**](https://github.com/trimstray/the-practical-linux-hardening-guide) - provides a high-level overview of hardening GNU/Linux systems.\
&#x20; :small\_orange\_diamond: [**Linux Hardening Guide**](https://madaidans-insecurities.github.io/guides/linux-hardening.html) - how to harden Linux as much as possible for security and privacy.\


:black\_small\_square: **Security & Privacy**

&#x20; :small\_orange\_diamond: [**Hacking Articles**](https://www.hackingarticles.in/) - LRaj Chandel's Security & Hacking Blog.\
&#x20; :small\_orange\_diamond: [**AWS security tools**](https://github.com/toniblyx/my-arsenal-of-aws-security-tools) - make your AWS cloud environment more secure.\
&#x20; :small\_orange\_diamond: [**Rawsec's CyberSecurity Inventory**](https://inventory.rawsec.ml/index.html) - an inventory of tools and resources about CyberSecurity.\
&#x20; :small\_orange\_diamond: [**The Illustrated TLS Connection**](https://tls.ulfheim.net/) - every byte of a TLS connection explained and reproduced.\
&#x20; :small\_orange\_diamond: [**SSL Research**](https://github.com/ssllabs/research/wiki/SSL-and-TLS-Deployment-Best-Practices) - SSL and TLS Deployment Best Practices by SSL Labs.\
&#x20; :small\_orange\_diamond: [**SELinux Game**](http://selinuxgame.org/index.html) - learn SELinux by doing. Solve Puzzles, show skillz.\
&#x20; :small\_orange\_diamond: [**Certificates and PKI**](https://smallstep.com/blog/everything-pki.html) - everything you should know about certificates and PKI but are too afraid to ask.\
&#x20; :small\_orange\_diamond: [**The Art of Subdomain Enumeration**](https://appsecco.com/books/subdomain-enumeration/) - a reference for subdomain enumeration techniques.\
&#x20; :small\_orange\_diamond: [**Quitting Google**](https://lifehacker.com/the-comprehensive-guide-to-quitting-google-1830001964) - the comprehensive guide to quitting Google.\


:black\_small\_square: **Web Apps**

&#x20; :small\_orange\_diamond: [**OWASP**](https://www.owasp.org/index.php/Main_Page) - worldwide not-for-profit charitable organization focused on improving the security of software.\
&#x20; :small\_orange\_diamond: [**OWASP ASVS 3.0.1**](https://www.owasp.org/index.php/Category:OWASP_Application_Security_Verification_Standard_Project) - OWASP Application Security Verification Standard Project.\
&#x20; :small\_orange\_diamond: [**OWASP ASVS 3.0.1 Web App**](https://github.com/Santandersecurityresearch/asvs) - simple web app that helps developers understand the ASVS requirements.\
&#x20; :small\_orange\_diamond: [**OWASP ASVS 4.0**](https://github.com/OWASP/ASVS/tree/master/4.0) - is a list of application security requirements or tests.\
&#x20; :small\_orange\_diamond: [**OWASP Testing Guide v4**](https://www.owasp.org/index.php/OWASP_Testing_Project) - includes a "best practice" penetration testing framework.\
&#x20; :small\_orange\_diamond: [**OWASP Dev Guide**](https://github.com/OWASP/DevGuide) - this is the development version of the OWASP Developer Guide.\
&#x20; :small\_orange\_diamond: [**OWASP WSTG**](https://github.com/OWASP/wstg) - is a comprehensive open source guide to testing the security of web apps.\
&#x20; :small\_orange\_diamond: [**OWASP API Security Project**](https://www.owasp.org/index.php/OWASP_API_Security_Project) - focuses specifically on the top ten vulnerabilities in API security.\
&#x20; :small\_orange\_diamond: [**Mozilla Web Security**](https://infosec.mozilla.org/guidelines/web_security.html) - help operational teams with creating secure web applications.\
&#x20; :small\_orange\_diamond: [**security-bulletins**](https://github.com/Netflix/security-bulletins) - security bulletins that relate to Netflix Open Source.\
&#x20; :small\_orange\_diamond: [**API-Security-Checklist**](https://github.com/shieldfy/API-Security-Checklist) - security countermeasures when designing, testing, and releasing your API.\
&#x20; :small\_orange\_diamond: [**Enable CORS**](https://enable-cors.org/index.html) - enable cross-origin resource sharing.\
&#x20; :small\_orange\_diamond: [**Application Security Wiki**](https://appsecwiki.com/#/) - is an initiative to provide all application security related resources at one place.\
&#x20; :small\_orange\_diamond: [**Weird Proxies**](https://github.com/GrrrDog/weird_proxies/wiki) - reverse proxy related attacks; it is a result of analysis of various proxies.\
&#x20; :small\_orange\_diamond: [**Webshells**](https://dfir.it/blog/2015/08/12/webshell-every-time-the-same-purpose/) - great series about malicious payloads.\
&#x20; :small\_orange\_diamond: [**Practical Web Cache Poisoning**](https://portswigger.net/blog/practical-web-cache-poisoning) - show you how to compromise websites by using esoteric web features.\
&#x20; :small\_orange\_diamond: [**Hidden directories and files**](https://github.com/bl4de/research/tree/master/hidden_directories_leaks) - as a source of sensitive information about web application.\
&#x20; :small\_orange\_diamond: [**Explosive blog**](https://bo0om.ru/en/) - great blog about cybersec and pentests.\
&#x20; :small\_orange\_diamond: [**Security Cookies**](https://www.netsparker.com/security-cookies-whitepaper/) - this paper will take a close look at cookie security.\
&#x20; :small\_orange\_diamond: [**APISecurityBestPractices**](https://github.com/GitGuardian/APISecurityBestPractices) - help you keep secrets (API keys, db credentials, certificates) out of source code.\


:black\_small\_square: **All-in-one**

&#x20; :small\_orange\_diamond: [**LZone Cheat Sheets**](https://lzone.de/cheat-sheet/) - all cheat sheets.\
&#x20; :small\_orange\_diamond: [**Dan’s Cheat Sheets’s**](https://github.com/rstacruz/cheatsheets) - massive cheat sheets documentation.\
&#x20; :small\_orange\_diamond: [**Rico's cheatsheets**](https://devhints.io/) - this is a modest collection of cheatsheets.\
&#x20; :small\_orange\_diamond: [**DevDocs API**](https://devdocs.io/) - combines multiple API documentations in a fast, organized, and searchable interface.\
&#x20; :small\_orange\_diamond: [**cheat.sh**](https://cheat.sh/) - the only cheat sheet you need.\
&#x20; :small\_orange\_diamond: [**gnulinux.guru**](https://gnulinux.guru/) - collection of cheat sheets about bash, vim and networking.\


:black\_small\_square: **Ebooks**

&#x20; :small\_orange\_diamond: [**free-programming-books**](https://github.com/EbookFoundation/free-programming-books) - list of free learning resources in many languages.\


:black\_small\_square: **Other**

&#x20; :small\_orange\_diamond: [**CTF Series : Vulnerable Machines**](https://bitvijays.github.io/LFC-VulnerableMachines.html) - the steps below could be followed to find vulnerabilities and exploits.\
&#x20; :small\_orange\_diamond: [**50M\_CTF\_Writeup**](https://github.com/manoelt/50M_CTF_Writeup) - $50 million CTF from Hackerone - writeup.\
&#x20; :small\_orange\_diamond: [**ctf-tasks**](https://github.com/j00ru/ctf-tasks) - an archive of low-level CTF challenges developed over the years.\
&#x20; :small\_orange\_diamond: [**How to start RE/malware analysis?**](https://hshrzd.wordpress.com/how-to-start/) - collection of some hints and useful links for the beginners.\
&#x20; :small\_orange\_diamond: [**The C10K problem**](http://www.kegel.com/c10k.html) - it's time for web servers to handle ten thousand clients simultaneously, don't you think?\
&#x20; :small\_orange\_diamond: [**How 1500 bytes became the MTU of the internet**](https://blog.benjojo.co.uk/post/why-is-ethernet-mtu-1500) - great story about the Maximum Transmission Unit.\
&#x20; :small\_orange\_diamond: [**poor man's profiler**](http://poormansprofiler.org/) - like dtrace's don't really provide methods to see what programs are blocking on.\
&#x20; :small\_orange\_diamond: [**HTTPS on Stack Overflow**](https://nickcraver.com/blog/2017/05/22/https-on-stack-overflow/) - this is the story of a long journey regarding the implementation of SSL.\
&#x20; :small\_orange\_diamond: [**Julia's Drawings**](https://drawings.jvns.ca/) - some drawings about programming and unix world, zines about systems & debugging tools.\
&#x20; :small\_orange\_diamond: [**Hash collisions**](https://github.com/corkami/collisions) - this great repository is focused on hash collisions exploitation.\
&#x20; :small\_orange\_diamond: [**sha256-animation**](https://github.com/in3rsha/sha256-animation) - animation of the SHA-256 hash function in your terminal.\
&#x20; :small\_orange\_diamond: [**BGP Meets Cat**](https://labs.ripe.net/Members/cteusche/bgp-meets-cat) - after 3072 hours of manipulating BGP, Job Snijders has succeeded in drawing a Nyancat.\
&#x20; :small\_orange\_diamond: [**bgp-battleships**](https://github.com/benjojo/bgp-battleships) - playing battleships over BGP.\
&#x20; :small\_orange\_diamond: [**What happens when...**](https://github.com/alex/what-happens-when) - you type google.com into your browser and press enter?\
&#x20; :small\_orange\_diamond: [**how-web-works**](https://github.com/vasanthk/how-web-works) - based on the 'What happens when...' repository.\
&#x20; :small\_orange\_diamond: [**HTTPS in the real world**](https://robertheaton.com/2018/11/28/https-in-the-real-world/) - great tutorial explain how HTTPS works in the real world.\
&#x20; :small\_orange\_diamond: [**Gitlab and NFS bug**](https://about.gitlab.com/2018/11/14/how-we-spent-two-weeks-hunting-an-nfs-bug/) - how we spent two weeks hunting an NFS bug in the Linux kernel.\
&#x20; :small\_orange\_diamond: [**Gitlab melts down**](https://about.gitlab.com/2017/02/10/postmortem-of-database-outage-of-january-31/) - postmortem on the database outage of January 31 2017 with the lessons we learned.\
&#x20; :small\_orange\_diamond: [**How To Become A Hacker**](http://www.catb.org/esr/faqs/hacker-howto.html) - if you want to be a hacker, keep reading.\
&#x20; :small\_orange\_diamond: [**Operation Costs in CPU**](http://ithare.com/infographics-operation-costs-in-cpu-clock-cycles/) - should help to estimate costs of certain operations in CPU clocks.\
&#x20; :small\_orange\_diamond: [**Let's Build a Simple Database**](https://cstack.github.io/db_tutorial/) - writing a sqlite clone from scratch in C.\
&#x20; :small\_orange\_diamond: [**simple-computer**](https://djhworld.github.io/post/2019/05/21/i-dont-know-how-cpus-work-so-i-simulated-one-in-code/) - great resource to understand how computers work under the hood.\
&#x20; :small\_orange\_diamond: [**The story of "Have I been pwned?"**](https://www.troyhunt.com/working-with-154-million-records-on/) - working with 154 million records on Azure Table Storage.\
&#x20; :small\_orange\_diamond: [**TOP500 Supercomputers**](https://www.top500.org/) - shows the 500 most powerful commercially available computer systems known to us.\
&#x20; :small\_orange\_diamond: [**How to build a 8 GPU password cracker**](https://www.shellntel.com/blog/2017/2/8/how-to-build-a-8-gpu-password-cracker) - any "black magic" or hours of frustration like desktop components do.\
&#x20; :small\_orange\_diamond: [**CERN Data Centre**](https://home.cern/science/computing) - 3D visualizations of the CERN computing environments (and more).\
&#x20; :small\_orange\_diamond: [**How fucked is my database**](http://howfuckedismydatabase.com/) - evaluate how fucked your database is with this handy website.\
&#x20; :small\_orange\_diamond: [**Linux Troubleshooting 101 , 2016 Edition**](https://krisbuytaert.be/blog/linux-troubleshooting-101-2016-edition/index.html) - everything is a DNS Problem...\
&#x20; :small\_orange\_diamond: [**Five Whys**](https://open.buffer.com/5-whys-process/) - you know what the problem is, but you cannot solve it?\
&#x20; :small\_orange\_diamond: [**Maersk, me & notPetya**](https://gvnshtn.com/maersk-me-notpetya/) - how did ransomware successfully hijack hundreds of domain controllers?\
&#x20; :small\_orange\_diamond: [**howhttps.works**](https://howhttps.works/) - how HTTPS works ...in a comic!\
&#x20; :small\_orange\_diamond: [**howdns.works**](https://howdns.works/) - a fun and colorful explanation of how DNS works.\
&#x20; :small\_orange\_diamond: [**POSTGRESQLCO.NF**](https://postgresqlco.nf/en/doc/param/) - your postgresql.conf documentation and recommendations.\


**Inspiring Lists  \[TOC]**

:black\_small\_square: **SysOps/DevOps**

&#x20; :small\_orange\_diamond: [**Awesome Sysadmin**](https://github.com/kahun/awesome-sysadmin) - amazingly awesome open source sysadmin resources.\
&#x20; :small\_orange\_diamond: [**Awesome Shell**](https://github.com/alebcay/awesome-shell) - awesome command-line frameworks, toolkits, guides and gizmos.\
&#x20; :small\_orange\_diamond: [**Command-line-text-processing**](https://github.com/learnbyexample/Command-line-text-processing) - finding text to search and replace, sorting to beautifying, and more.\
&#x20; :small\_orange\_diamond: [**Awesome Pcaptools**](https://github.com/caesar0301/awesome-pcaptools) - collection of tools developed by other researchers to process network traces.\
&#x20; :small\_orange\_diamond: [**awesome-ebpf**](https://github.com/zoidbergwill/awesome-ebpf) - a curated list of awesome projects related to eBPF.\
&#x20; :small\_orange\_diamond: [**Linux Network Performance**](https://github.com/leandromoreira/linux-network-performance-parameters) - where some of the network sysctl variables fit into the Linux/Kernel network flow.\
&#x20; :small\_orange\_diamond: [**Awesome Postgres**](https://github.com/dhamaniasad/awesome-postgres) - list of awesome PostgreSQL software, libraries, tools and resources.\
&#x20; :small\_orange\_diamond: [**quick-SQL-cheatsheet**](https://github.com/enochtangg/quick-SQL-cheatsheet) - a quick reminder of all SQL queries and examples on how to use them.\
&#x20; :small\_orange\_diamond: [**Awesome-Selfhosted**](https://github.com/Kickball/awesome-selfhosted) - list of Free Software network services and web applications which can be hosted locally.\
&#x20; :small\_orange\_diamond: [**List of applications**](https://wiki.archlinux.org/index.php/List_of_applications) - huge list of apps sorted by category, as a reference for those looking for packages.\
&#x20; :small\_orange\_diamond: [**CS-Interview-Knowledge-Map**](https://github.com/InterviewMap/CS-Interview-Knowledge-Map) - build the best interview map.\
&#x20; :small\_orange\_diamond: [**DevOps-Guide**](https://github.com/Tikam02/DevOps-Guide) - DevOps Guide from basic to advanced with Interview Questions and Notes.\
&#x20; :small\_orange\_diamond: [**FreeBSD Journal**](https://issue.freebsdfoundation.org/publication/?m=33057\&l=1\&view=issuelistBrowser) - it is a great list of periodical magazines about FreeBSD and other important things.\
&#x20; :small\_orange\_diamond: [**devops-interview-questions**](https://github.com/bregman-arie/devops-interview-questions) - contains interview questions on various DevOps and SRE related topics.\


:black\_small\_square: **Developers**

&#x20; :small\_orange\_diamond: [**Web Developer Roadmap**](https://github.com/kamranahmedse/developer-roadmap) - roadmaps, articles and resources to help you choose your path, learn and improve.\
&#x20; :small\_orange\_diamond: [**Front-End-Checklist**](https://github.com/thedaviddias/Front-End-Checklist) - the perfect Front-End Checklist for modern websites and meticulous developers.\
&#x20; :small\_orange\_diamond: [**Front-End-Performance-Checklist**](https://github.com/thedaviddias/Front-End-Performance-Checklist) - Front-End Performance Checklist that runs faster than the others.\
&#x20; :small\_orange\_diamond: [**Python's Magic Methods**](https://rszalski.github.io/magicmethods/) - what are magic methods? They're everything in object-oriented Python.\
&#x20; :small\_orange\_diamond: [**wtfpython**](https://github.com/satwikkansal/wtfpython) - a collection of surprising Python snippets and lesser-known features.\
&#x20; :small\_orange\_diamond: [**js-dev-reads**](https://github.com/twhite96/js-dev-reads) - a list of books and articles for the discerning web developer to read.\
&#x20; :small\_orange\_diamond: [**Commit messages guide**](https://github.com/RomuloOliveira/commit-messages-guide) - a guide to understand the importance of commit messages.\


:black\_small\_square: **Security/Pentesting**

&#x20; :small\_orange\_diamond: [**Awesome Web Security**](https://github.com/qazbnm456/awesome-web-security) - a curated list of Web Security materials and resources.\
&#x20; :small\_orange\_diamond: [**awesome-cyber-skills**](https://github.com/joe-shenouda/awesome-cyber-skills) - a curated list of hacking environments where you can train your cyber skills.\
&#x20; :small\_orange\_diamond: [**awesome-devsecops**](https://github.com/devsecops/awesome-devsecops) - an authoritative list of awesome devsecops tools.\
&#x20; :small\_orange\_diamond: [**awesome-osint**](https://github.com/jivoi/awesome-osint) - is a curated list of amazingly awesome OSINT.\
&#x20; :small\_orange\_diamond: [**HolyTips**](https://github.com/HolyBugx/HolyTips) - tips and tutorials on Bug Bounty Hunting and Web App Security.\
&#x20; :small\_orange\_diamond: [**awesome-threat-intelligence**](https://github.com/hslatman/awesome-threat-intelligence) - a curated list of Awesome Threat Intelligence resources.\
&#x20; :small\_orange\_diamond: [**Red-Teaming-Toolkit**](https://github.com/infosecn1nja/Red-Teaming-Toolkit) - a collection of open source and commercial tools that aid in red team operations.\
&#x20; :small\_orange\_diamond: [**awesome-burp-extensions**](https://github.com/snoopysecurity/awesome-burp-extensions) - a curated list of amazingly awesome Burp Extensions.\
&#x20; :small\_orange\_diamond: [**Free Security eBooks**](https://github.com/Hack-with-Github/Free-Security-eBooks) - list of a Free Security and Hacking eBooks.\
&#x20; :small\_orange\_diamond: [**Hacking-Security-Ebooks**](https://github.com/yeahhub/Hacking-Security-Ebooks) - top 100 Hacking & Security E-Books.\
&#x20; :small\_orange\_diamond: [**privacy-respecting**](https://github.com/nikitavoloboev/privacy-respecting) - curated list of privacy respecting services and software.\
&#x20; :small\_orange\_diamond: [**reverse-engineering**](https://github.com/wtsxDev/reverse-engineering) - list of awesome reverse engineering resources.\
&#x20; :small\_orange\_diamond: [**linux-re-101**](https://github.com/michalmalik/linux-re-101) - a collection of resources for linux reverse engineering.\
&#x20; :small\_orange\_diamond: [**reverseengineering-reading-list**](https://github.com/onethawt/reverseengineering-reading-list) - a list of Reverse Engineering articles, books, and papers.\
&#x20; :small\_orange\_diamond: [**Awesome-WAF**](https://github.com/0xInfection/Awesome-WAF) - a curated list of awesome web-app firewall (WAF) stuff.\
&#x20; :small\_orange\_diamond: [**awesome-shodan-queries**](https://github.com/jakejarvis/awesome-shodan-queries) - interesting, funny, and depressing search queries to plug into shodan.io.\
&#x20; :small\_orange\_diamond: [**RobotsDisallowed**](https://github.com/danielmiessler/RobotsDisallowed) - a curated list of the most common and most interesting robots.txt disallowed directories.\
&#x20; :small\_orange\_diamond: [**HackingNeuralNetworks**](https://github.com/Kayzaks/HackingNeuralNetworks) - is a small course on exploiting and defending neural networks.\
&#x20; :small\_orange\_diamond: [**wildcard-certificates**](https://gist.github.com/joepie91/7e5cad8c0726fd6a5e90360a754fc568) - why you probably shouldn't use a wildcard certificate.\
&#x20; :small\_orange\_diamond: [**Don't use VPN services**](https://gist.github.com/joepie91/5a9909939e6ce7d09e29) - which is what every third-party "VPN provider" does.\
&#x20; :small\_orange\_diamond: [**awesome-yara**](https://github.com/InQuest/awesome-yara) - a curated list of awesome YARA rules, tools, and people.\
&#x20; :small\_orange\_diamond: [**macOS-Security-and-Privacy-Guide**](https://github.com/drduh/macOS-Security-and-Privacy-Guide) - guide to securing and improving privacy on macOS.\
&#x20; :small\_orange\_diamond: [**macos\_security**](https://github.com/usnistgov/macos_security) - macOS Security Compliance Project.\
&#x20; :small\_orange\_diamond: [**awesome-sec-talks**](https://github.com/PaulSec/awesome-sec-talks) - is a collected list of awesome security talks.\
&#x20; :small\_orange\_diamond: [**Movies for Hackers**](https://github.com/k4m4/movies-for-hackers) - list of movies every hacker & cyberpunk must watch.\
&#x20; :small\_orange\_diamond: [**Cryptography\_1**](https://github.com/danieldizzy/Cryptography_1) - materials used whilst taking Prof. Dan Boneh Stanford Crypto course.\
&#x20; :small\_orange\_diamond: [**Crypton**](https://github.com/ashutosh1206/Crypton) - library to learn and practice Offensive and Defensive Cryptography.\


:black\_small\_square: **Other**

&#x20; :small\_orange\_diamond: [**Cheatography**](https://www.cheatography.com/) - over 3,000 free cheat sheets, revision aids and quick references.\
&#x20; :small\_orange\_diamond: [**awesome-static-analysis**](https://github.com/mre/awesome-static-analysis) - static analysis tools for all programming languages.\
&#x20; :small\_orange\_diamond: [**computer-science**](https://github.com/ossu/computer-science) - path to a free self-taught education in Computer Science.\
&#x20; :small\_orange\_diamond: [**post-mortems**](https://github.com/danluu/post-mortems) - is a collection of postmortems (config errors, hardware failures, and more).\
&#x20; :small\_orange\_diamond: [**build-your-own-x**](https://github.com/danistefanovic/build-your-own-x) - build your own (insert technology here).\
&#x20; :small\_orange\_diamond: [**Project-Based-Tutorials-in-C**](https://github.com/rby90/Project-Based-Tutorials-in-C) - is a curated list of project-based tutorials in C.\
&#x20; :small\_orange\_diamond: [**The-Documentation-Compendium**](https://github.com/kylelobo/The-Documentation-Compendium) - various README templates & tips on writing high-quality documentation.\
&#x20; :small\_orange\_diamond: [**awesome-python-applications**](https://github.com/mahmoud/awesome-python-applications) - free software that works great, and also happens to be open-source Python.\
&#x20; :small\_orange\_diamond: [**awesome-public-datasets**](https://github.com/awesomedata/awesome-public-datasets) - a topic-centric list of HQ open datasets.\
&#x20; :small\_orange\_diamond: [**machine-learning-algorithms**](https://github.com/Sahith02/machine-learning-algorithms) - a curated list of all machine learning algorithms and concepts.\


**Blogs/Podcasts/Videos  \[TOC]**

:black\_small\_square: **SysOps/DevOps**

&#x20; :small\_orange\_diamond: [**Varnish for PHP developers**](https://www.youtube.com/watch?v=nAFpkV5-vuI) - very interesting presentation of Varnish by Mattias Geniar.\
&#x20; :small\_orange\_diamond: [**A Netflix Guide to Microservices**](https://www.youtube.com/watch?v=CZ3wIuvmHeM) - talks about the chaotic and vibrant world of microservices at Netflix.\


:black\_small\_square: **Developers**

&#x20; :small\_orange\_diamond: [**Comparing C to machine lang**](https://www.youtube.com/watch?v=yOyaJXpAYZQ) - compare a simple C app with the compiled machine code of that program.\


:black\_small\_square: **Geeky Persons**

&#x20; :small\_orange\_diamond: [**Brendan Gregg's Blog**](http://www.brendangregg.com/) - is an industry expert in computing performance and cloud computing.\
&#x20; :small\_orange\_diamond: [**Gynvael "GynDream" Coldwind**](https://gynvael.coldwind.pl/) - is a IT security engineer at Google.\
&#x20; :small\_orange\_diamond: [**Michał "lcamtuf" Zalewski**](http://lcamtuf.coredump.cx/) - white hat hacker, computer security expert.\
&#x20; :small\_orange\_diamond: [**Mattias Geniar**](https://ma.ttias.be/) - developer, sysadmin, blogger, podcaster and public speaker.\
&#x20; :small\_orange\_diamond: [**Nick Craver**](https://nickcraver.com/) - software developer and systems administrator for Stack Exchange.\
&#x20; :small\_orange\_diamond: [**Scott Helme**](https://scotthelme.co.uk/) - security researcher, speaker and founder of securityheaders.com and report-uri.com.\
&#x20; :small\_orange\_diamond: [**Brian Krebs**](https://krebsonsecurity.com/) - The Washington Post and now an Independent investigative journalist.\
&#x20; :small\_orange\_diamond: [**Bruce Schneier**](https://www.schneier.com/) - is an internationally renowned security technologist, called a "security guru".\
&#x20; :small\_orange\_diamond: [**Chrissy Morgan**](https://chrissymorgan.co.uk/) - advocate of practical learning, Chrissy also takes part in bug bounty programs.\
&#x20; :small\_orange\_diamond: [**Andy Gill**](https://blog.zsec.uk/) - is a hacker at heart who works as a senior penetration tester.\
&#x20; :small\_orange\_diamond: [**Daniel Miessler**](https://danielmiessler.com/) - cybersecurity expert and writer.\
&#x20; :small\_orange\_diamond: [**Samy Kamkar**](https://samy.pl/) - is an American privacy and security researcher, computer hacker.\
&#x20; :small\_orange\_diamond: [**Javvad Malik**](https://www.j4vv4d.com/) - is a security advocate at AlienVault, a blogger event speaker and industry commentator.\
&#x20; :small\_orange\_diamond: [**Graham Cluley**](https://www.grahamcluley.com/) - public speaker and independent computer security analyst.\
&#x20; :small\_orange\_diamond: [**Kacper Szurek**](https://security.szurek.pl/) - detection engineer at ESET.\
&#x20; :small\_orange\_diamond: [**Troy Hunt**](https://www.troyhunt.com/) - web security expert known for public education and outreach on security topics.\
&#x20; :small\_orange\_diamond: [**raymii.org**](https://raymii.org/s/index.html) - sysadmin specializing in building high availability cloud environments.\
&#x20; :small\_orange\_diamond: [**Robert Penz**](https://robert.penz.name/) - IT security expert.\


:black\_small\_square: **Geeky Blogs**

&#x20; :small\_orange\_diamond: [**Linux Audit**](https://linux-audit.com/) - the Linux security blog about auditing, hardening and compliance by Michael Boelen.\
&#x20; :small\_orange\_diamond: [**Linux Security Expert**](https://linuxsecurity.expert/) - trainings, howtos, checklists, security tools, and more.\
&#x20; :small\_orange\_diamond: [**The Grymoire**](http://www.grymoire.com/) - collection of useful incantations for wizards, be you computer wizards, magicians, or whatever.\
&#x20; :small\_orange\_diamond: [**Secjuice**](https://www.secjuice.com) - is the only non-profit, independent and volunteer led publication in the information security space.\
&#x20; :small\_orange\_diamond: [**Decipher**](https://duo.com/decipher) - security news that informs and inspires.\


:black\_small\_square: **Geeky Vendor Blogs**

&#x20; :small\_orange\_diamond: [**Tenable Podcast**](https://www.tenable.com/podcast) - conversations and interviews related to Cyber Exposure, and more.\
&#x20; :small\_orange\_diamond: [**Sophos**](https://nakedsecurity.sophos.com/) - threat news room, giving you news, opinion, advice and research on computer security issues.\
&#x20; :small\_orange\_diamond: [**Tripwire State of Security**](https://www.tripwire.com/state-of-security/) - blog featuring the latest news, trends and insights on current security issues.\
&#x20; :small\_orange\_diamond: [**Malwarebytes Labs Blog**](https://blog.malwarebytes.com/) - security blog aims to provide insider news about cybersecurity.\
&#x20; :small\_orange\_diamond: [**TrustedSec**](https://www.trustedsec.com/category/articles/) - latest news, and trends about cybersecurity.\
&#x20; :small\_orange\_diamond: [**PortSwigger Web Security Blog**](https://portswigger.net/blog) - about web app security vulns and top tips from our team of web security.\
&#x20; :small\_orange\_diamond: [**AT\&T Cybersecurity blog**](https://www.alienvault.com/blogs) - news on emerging threats and practical advice to simplify threat detection.\
&#x20; :small\_orange\_diamond: [**Thycotic**](https://thycotic.com/company/blog/) - where CISOs and IT Admins come to learn about industry trends, IT security, and more.\


:black\_small\_square: **Geeky Cybersecurity Podcasts**

&#x20; :small\_orange\_diamond: [**Risky Business**](https://risky.biz/netcasts/risky-business/) - is a weekly information security podcast featuring news and in-depth interviews.\
&#x20; :small\_orange\_diamond: [**Cyber, by Motherboard**](https://www.vice.com/en_us/topic/cyber) - stories, and focus on the ideas about cybersecurity.\
&#x20; :small\_orange\_diamond: [**Tenable Podcast**](https://www.tenable.com/podcast) - conversations and interviews related to Cyber Exposure, and more.\
&#x20; :small\_orange\_diamond: [**Cybercrime Investigations**](https://podcasts.apple.com/gb/podcast/cybercrime-investigations/id1428801405) - podcast by Geoff White about cybercrimes.\
&#x20; :small\_orange\_diamond: [**The many hats club**](https://themanyhats.club/tag/episodes/) - featuring stories from a wide range of Infosec people (Whitehat, Greyhat and Blackhat).\
&#x20; :small\_orange\_diamond: [**Darknet Diaries**](https://darknetdiaries.com/) - true stories from the dark side of the Internet.\
&#x20; :small\_orange\_diamond: [**OSINTCurious Webcasts**](https://www.youtube.com/playlist?list=PL423I_gHbWUXah3dmt_q_XNp0NlGAKjis) - is the investigative curiosity that helps people be successful in OSINT.\
&#x20; :small\_orange\_diamond: [**Security Weekly**](https://www.youtube.com/user/SecurityWeeklyTV) - the latest information security and hacking news.\


:black\_small\_square: **Geeky Cybersecurity Video Blogs**

&#x20; :small\_orange\_diamond: [**rev3rse security**](https://www.youtube.com/channel/UCzvJStjySZVvOBsPl-Vgj0g) - offensive, binary exploitation, web app security, hardening, red team, blue team.\
&#x20; :small\_orange\_diamond: [**LiveOverflow**](https://www.youtube.com/channel/UClcE-kVhqyiHCcjYwcpfj9w) - a lot more advanced topics than what is typically offered in paid online courses - but for free.\
&#x20; :small\_orange\_diamond: [**J4vv4D**](https://www.youtube.com/infoseccynic) - the important information regarding our internet security.\
&#x20; :small\_orange\_diamond: [**CyberTalks**](https://cybertalks.co.uk/) - talks, interviews, and article about cybersecurity.\


:black\_small\_square: **Best Personal Twitter Accounts**

&#x20; :small\_orange\_diamond: [**@blackroomsec**](https://twitter.com/blackroomsec) - a white-hat hacker/pentester. Intergalactic Minesweeper Champion 1990.\
&#x20; :small\_orange\_diamond: [**@MarcoCiappelli**](https://twitter.com/MarcoCiappelli) - Co-Founder @ITSPmagazine, at the intersection of IT security and society.\
&#x20; :small\_orange\_diamond: [**@binitamshah**](https://twitter.com/binitamshah) - Linux Evangelist. Malwares. Kernel Dev. Security Enthusiast.\
&#x20; :small\_orange\_diamond: [**@joe\_carson**](https://twitter.com/joe_carson) - an InfoSec Professional and Tech Geek.\
&#x20; :small\_orange\_diamond: [**@mikko**](https://twitter.com/mikko) - CRO at F-Secure, Reverse Engineer, TED Speaker, Supervillain.\
&#x20; :small\_orange\_diamond: [**@esrtweet**](https://twitter.com/esrtweet) - often referred to as ESR, is an American software developer, and open-source software advocate.\
&#x20; :small\_orange\_diamond: [**@gynvael**](https://twitter.com/gynvael) - security researcher/programmer, @DragonSectorCTF founder/player, technical streamer.\
&#x20; :small\_orange\_diamond: [**@x0rz**](https://twitter.com/x0rz) - Security Researcher & Cyber Observer.\
&#x20; :small\_orange\_diamond: [**@hasherezade**](https://twitter.com/hasherezade) - programmer, malware analyst. Author of PEbear, PEsieve, libPeConv.\
&#x20; :small\_orange\_diamond: [**@TinkerSec**](https://twitter.com/TinkerSec) - tinkerer, cypherpunk, hacker.\
&#x20; :small\_orange\_diamond: [**@alisaesage**](https://twitter.com/alisaesage) - independent hacker and researcher.\
&#x20; :small\_orange\_diamond: [**@SwiftOnSecurity**](https://twitter.com/SwiftOnSecurity) - systems security, industrial safety, sysadmin, author of decentsecurity.com.\
&#x20; :small\_orange\_diamond: [**@dakami**](https://twitter.com/dakami) - is one of just seven people with the authority to restore the DNS root keys.\
&#x20; :small\_orange\_diamond: [**@samykamkar**](https://twitter.com/samykamkar) - is a famous "grey hat" hacker, security researcher, creator of the MySpace "Samy" worm.\
&#x20; :small\_orange\_diamond: [**@securityweekly**](https://twitter.com/securityweekly) - founder & CTO of Security Weekly podcast network.\
&#x20; :small\_orange\_diamond: [**@jack\_daniel**](https://twitter.com/jack_daniel) - @SecurityBSides co-founder.\
&#x20; :small\_orange\_diamond: [**@thegrugq**](https://twitter.com/thegrugq) - Security Researcher.\
&#x20; :small\_orange\_diamond: [**@matthew\_d\_green**](https://twitter.com/matthew_d_green) - a cryptographer and professor at Johns Hopkins University.\


:black\_small\_square: **Best Commercial Twitter Accounts**

&#x20; :small\_orange\_diamond: [**@haveibeenpwned**](https://twitter.com/haveibeenpwned) - check if you have an account that has been compromised in a data breach.\
&#x20; :small\_orange\_diamond: [**@bugcrowd**](https://twitter.com/bugcrowd) - trusted by more of the Fortune 500 than any other crowdsourced security platform.\
&#x20; :small\_orange\_diamond: [**@Malwarebytes**](https://twitter.com/Malwarebytes) - most trusted security company. Unmatched threat visibility.\
&#x20; :small\_orange\_diamond: [**@sansforensics**](https://twitter.com/sansforensics) - the world's leading Digital Forensics and Incident Response provider.\
&#x20; :small\_orange\_diamond: [**@attcyber**](https://twitter.com/attcyber) - AT\&T Cybersecurity’s Edge-to-Edge technologies provide threat intelligence, and more.\
&#x20; :small\_orange\_diamond: [**@TheManyHatsClub**](https://twitter.com/TheManyHatsClub) - an information security focused podcast and group of individuals from all walks of life.\
&#x20; :small\_orange\_diamond: [**@hedgehogsec**](https://twitter.com/hedgehogsec) - Hedgehog Cyber. Gibraltar and Manchester's top boutique information security firm.\
&#x20; :small\_orange\_diamond: [**@NCSC**](https://twitter.com/NCSC) - the National Cyber Security Centre. Helping to make the UK the safest place to live and work online.\
&#x20; :small\_orange\_diamond: [**@Synacktiv**](https://twitter.com/Synacktiv) - IT security experts.\


:black\_small\_square: **A piece of history**

&#x20; :small\_orange\_diamond: [**How to Do Things at ARL**](http://ftp.arl.army.mil/~mike/howto/) - how to configure modems, scan images, record CD-ROMs, and other.**\***\


:black\_small\_square: **Other**

&#x20; :small\_orange\_diamond: [**Diffie-Hellman Key Exchange (short version)**](https://www.youtube.com/watch?v=3QnD2c4Xovk) - how Diffie-Hellman Key Exchange worked.\


**Hacking/Penetration Testing  \[TOC]**

:black\_small\_square: **Pentesters arsenal tools**

&#x20; :small\_orange\_diamond: [**Sandcat Browser**](http://www.syhunt.com/sandcat/) - a penetration-oriented browser with plenty of advanced functionality already built in.\
&#x20; :small\_orange\_diamond: [**Metasploit**](https://www.metasploit.com/) - tool and framework for pentesting system, web and many more, contains a lot a ready to use exploit.\
&#x20; :small\_orange\_diamond: [**Burp Suite**](https://portswigger.net/burp) - tool for testing web app security, intercepting proxy to replay, inject, scan and fuzz.\
&#x20; :small\_orange\_diamond: [**OWASP Zed Attack Proxy**](https://www.owasp.org/index.php/OWASP_Zed_Attack_Proxy_Project) - intercepting proxy to replay, inject, scan and fuzz HTTP requests.\
&#x20; :small\_orange\_diamond: [**w3af**](http://w3af.org/) - is a Web Application Attack and Audit Framework.\
&#x20; :small\_orange\_diamond: [**mitmproxy**](https://mitmproxy.org/) - an interactive TLS-capable intercepting HTTP proxy for penetration testers.\
&#x20; :small\_orange\_diamond: [**Nikto2**](https://cirt.net/Nikto2) - web server scanner which performs comprehensive tests against web servers for multiple items.\
&#x20; :small\_orange\_diamond: [**sqlmap**](http://sqlmap.org/) - tool that automates the process of detecting and exploiting SQL injection flaws.\
&#x20; :small\_orange\_diamond: [**Recon-ng**](https://github.com/lanmaster53/recon-ng) - is a full-featured Web Reconnaissance framework written in Python.\
&#x20; :small\_orange\_diamond: [**AutoRecon**](https://github.com/Tib3rius/AutoRecon) - is a network reconnaissance tool which performs automated enumeration of services.\
&#x20; :small\_orange\_diamond: [**Faraday**](https://www.faradaysec.com/) - an Integrated Multiuser Pentest Environment.\
&#x20; :small\_orange\_diamond: [**Photon**](https://github.com/s0md3v/Photon) - incredibly fast crawler designed for OSINT.\
&#x20; :small\_orange\_diamond: [**XSStrike**](https://github.com/s0md3v/XSStrike) - most advanced XSS detection suite.\
&#x20; :small\_orange\_diamond: [**Sn1per**](https://github.com/1N3/Sn1per) - automated pentest framework for offensive security experts.\
&#x20; :small\_orange\_diamond: [**vuls**](https://github.com/future-architect/vuls) - is an agent-less vulnerability scanner for Linux, FreeBSD, and other.\
&#x20; :small\_orange\_diamond: [**tsunami**](https://github.com/google/tsunami-security-scanner) - is a general purpose network security scanner with an extensible plugin system.\
&#x20; :small\_orange\_diamond: [**aquatone**](https://github.com/michenriksen/aquatone) - a tool for domain flyovers.\
&#x20; :small\_orange\_diamond: [**BillCipher**](https://github.com/GitHackTools/BillCipher) - information gathering tool for a website or IP address.\
&#x20; :small\_orange\_diamond: [**WhatWaf**](https://github.com/Ekultek/WhatWaf) - detect and bypass web application firewalls and protection systems.\
&#x20; :small\_orange\_diamond: [**Corsy**](https://github.com/s0md3v/Corsy) - CORS misconfiguration scanner.\
&#x20; :small\_orange\_diamond: [**Raccoon**](https://github.com/evyatarmeged/Raccoon) - is a high performance offensive security tool for reconnaissance and vulnerability scanning.\
&#x20; :small\_orange\_diamond: [**dirhunt**](https://github.com/Nekmo/dirhunt) - find web directories without bruteforce.\
&#x20; :small\_orange\_diamond: [**John The Ripper**](https://www.openwall.com/john/) - is a fast password cracker, currently available for many flavors of Unix, Windows, and other.\
&#x20; :small\_orange\_diamond: [**hashcat**](https://hashcat.net/hashcat/) - world's fastest and most advanced password recovery utility.\
&#x20; :small\_orange\_diamond: [**p0f**](http://lcamtuf.coredump.cx/p0f3/) - is a tool to identify the players behind any incidental TCP/IP communications.\
&#x20; :small\_orange\_diamond: [**ssh\_scan**](https://github.com/mozilla/ssh_scan) - a prototype SSH configuration and policy scanner.\
&#x20; :small\_orange\_diamond: [**LeakLooker**](https://github.com/woj-ciech/LeakLooker) - find open databases - powered by Binaryedge.io\
&#x20; :small\_orange\_diamond: [**exploitdb**](https://github.com/offensive-security/exploitdb) - searchable archive from The Exploit Database.\
&#x20; :small\_orange\_diamond: [**getsploit**](https://github.com/vulnersCom/getsploit) - is a command line utility for searching and downloading exploits.\
&#x20; :small\_orange\_diamond: [**ctf-tools**](https://github.com/zardus/ctf-tools) - some setup scripts for security research tools.\
&#x20; :small\_orange\_diamond: [**pwntools**](https://github.com/Gallopsled/pwntools) - CTF framework and exploit development library.\
&#x20; :small\_orange\_diamond: [**security-tools**](https://github.com/bl4de/security-tools) - collection of small security tools created mostly in Python. CTFs, pentests and so on.\
&#x20; :small\_orange\_diamond: [**pentestpackage**](https://github.com/leonteale/pentestpackage) - is a package of Pentest scripts.\
&#x20; :small\_orange\_diamond: [**python-pentest-tools**](https://github.com/dloss/python-pentest-tools) - python tools for penetration testers.\
&#x20; :small\_orange\_diamond: [**fuzzdb**](https://github.com/fuzzdb-project/fuzzdb) - dictionary of attack patterns and primitives for black-box application fault injection.\
&#x20; :small\_orange\_diamond: [**AFL**](https://github.com/google/AFL) - is a free software fuzzer maintained by Google.\
&#x20; :small\_orange\_diamond: [**AFL++**](https://github.com/AFLplusplus/AFLplusplus) - is AFL with community patches.\
&#x20; :small\_orange\_diamond: [**syzkaller**](https://github.com/google/syzkaller) - is an unsupervised, coverage-guided kernel fuzzer.\
&#x20; :small\_orange\_diamond: [**pwndbg**](https://github.com/pwndbg/pwndbg) - exploit development and reverse engineering with GDB made easy.\
&#x20; :small\_orange\_diamond: [**GDB PEDA**](https://github.com/longld/peda) - Python Exploit Development Assistance for GDB.\
&#x20; :small\_orange\_diamond: [**IDA**](https://www.hex-rays.com/products/ida/index.shtml) - multi-processor disassembler and debugger useful for reverse engineering malware.\
&#x20; :small\_orange\_diamond: [**radare2**](https://github.com/radare/radare2) - framework for reverse-engineering and analyzing binaries.\
&#x20; :small\_orange\_diamond: [**routersploit**](https://github.com/threat9/routersploit) - exploitation framework for embedded devices.\
&#x20; :small\_orange\_diamond: [**Ghidra**](https://github.com/NationalSecurityAgency/ghidra) - is a software reverse engineering (SRE) framework.\
&#x20; :small\_orange\_diamond: [**Cutter**](https://cutter.re/) - is an SRE platform integrating Ghidra's decompiler.\
&#x20; :small\_orange\_diamond: [**Vulnreport**](https://github.com/salesforce/vulnreport) - open-source pentesting management and automation platform by Salesforce Product Security.\
&#x20; :small\_orange\_diamond: [**Mentalist**](https://github.com/sc0tfree/mentalist) - is a graphical tool for custom wordlist generation.\
&#x20; :small\_orange\_diamond: [**archerysec**](https://github.com/archerysec/archerysec) - vulnerability assessment and management helps to perform scans and manage vulnerabilities.\
&#x20; :small\_orange\_diamond: [**Osmedeus**](https://github.com/j3ssie/Osmedeus) - fully automated offensive security tool for reconnaissance and vulnerability scanning.\
&#x20; :small\_orange\_diamond: [**beef**](https://github.com/beefproject/beef) - the browser exploitation framework project.\
&#x20; :small\_orange\_diamond: [**AutoSploit**](https://github.com/NullArray/AutoSploit) - automated mass exploiter.\
&#x20; :small\_orange\_diamond: [**SUDO\_KILLER**](https://github.com/TH3xACE/SUDO_KILLER) - is a tool to identify and exploit sudo rules' misconfigurations and vulnerabilities.\
&#x20; :small\_orange\_diamond: [**yara**](https://github.com/VirusTotal/yara) - the pattern matching swiss knife.\
&#x20; :small\_orange\_diamond: [**mimikatz**](https://github.com/gentilkiwi/mimikatz) - a little tool to play with Windows security.\
&#x20; :small\_orange\_diamond: [**sherlock**](https://github.com/sherlock-project/sherlock) - hunt down social media accounts by username across social networks.\
&#x20; :small\_orange\_diamond: [**OWASP Threat Dragon**](https://owasp.org/www-project-threat-dragon/) - is a tool used to create threat model diagrams and to record possible threats.\


:black\_small\_square: **Pentests bookmarks collection**

&#x20; :small\_orange\_diamond: [**PTES**](http://www.pentest-standard.org/index.php/Main_Page) - the penetration testing execution standard.\
&#x20; :small\_orange\_diamond: [**Pentests MindMap**](https://www.amanhardikar.com/mindmaps/Practice.html) - amazing mind map with vulnerable apps and systems.\
&#x20; :small\_orange\_diamond: [**WebApps Security Tests MindMap**](https://www.amanhardikar.com/mindmaps/webapptest.html) - incredible mind map for WebApps security tests.\
&#x20; :small\_orange\_diamond: [**Brute XSS**](https://brutelogic.com.br/blog/) - master the art of Cross Site Scripting.\
&#x20; :small\_orange\_diamond: [**XSS cheat sheet**](https://portswigger.net/web-security/cross-site-scripting/cheat-sheet) - contains many vectors that can help you bypass WAFs and filters.\
&#x20; :small\_orange\_diamond: [**Offensive Security Bookmarks**](https://jivoi.github.io/2015/07/03/offensive-security-bookmarks/) - security bookmarks collection, all things that author need to pass OSCP.\
&#x20; :small\_orange\_diamond: [**Awesome Pentest Cheat Sheets**](https://github.com/coreb1t/awesome-pentest-cheat-sheets) - collection of the cheat sheets useful for pentesting.\
&#x20; :small\_orange\_diamond: [**Awesome Hacking by HackWithGithub**](https://github.com/Hack-with-Github/Awesome-Hacking) - awesome lists for hackers, pentesters and security researchers.\
&#x20; :small\_orange\_diamond: [**Awesome Hacking by carpedm20**](https://github.com/carpedm20/awesome-hacking) - a curated list of awesome hacking tutorials, tools and resources.\
&#x20; :small\_orange\_diamond: [**Awesome Hacking Resources**](https://github.com/vitalysim/Awesome-Hacking-Resources) - collection of hacking/penetration testing resources to make you better.\
&#x20; :small\_orange\_diamond: [**Awesome Pentest**](https://github.com/enaqx/awesome-pentest) - collection of awesome penetration testing resources, tools and other shiny things.\
&#x20; :small\_orange\_diamond: [**Awesome-Hacking-Tools**](https://github.com/m4ll0k/Awesome-Hacking-Tools) - is a curated list of awesome Hacking Tools.\
&#x20; :small\_orange\_diamond: [**Hacking Cheat Sheet**](https://github.com/ksanchezcld/Hacking_Cheat_Sheet) - author hacking and pentesting notes.\
&#x20; :small\_orange\_diamond: [**blackhat-arsenal-tools**](https://github.com/toolswatch/blackhat-arsenal-tools) - official Black Hat arsenal security tools repository.\
&#x20; :small\_orange\_diamond: [**Penetration Testing and WebApp Cheat Sheets**](https://www.peerlyst.com/posts/the-complete-list-of-infosec-related-cheat-sheets-claus-cramon) - the complete list of Infosec related cheat sheets.\
&#x20; :small\_orange\_diamond: [**Cyber Security Resources**](https://github.com/The-Art-of-Hacking/h4cker) - includes thousands of cybersecurity-related references and resources.\
&#x20; :small\_orange\_diamond: [**Pentest Bookmarks**](https://github.com/jhaddix/pentest-bookmarks) - there are a LOT of pentesting blogs.\
&#x20; :small\_orange\_diamond: [**Cheatsheet-God**](https://github.com/OlivierLaflamme/Cheatsheet-God) - Penetration Testing Reference Bank - OSCP/PTP & PTX Cheatsheet.\
&#x20; :small\_orange\_diamond: [**ThreatHunter-Playbook**](https://github.com/Cyb3rWard0g/ThreatHunter-Playbook) - to aid the development of techniques and hypothesis for hunting campaigns.\
&#x20; :small\_orange\_diamond: [**Beginner-Network-Pentesting**](https://github.com/hmaverickadams/Beginner-Network-Pentesting) - notes for beginner network pentesting course.\
&#x20; :small\_orange\_diamond: [**OSCPRepo**](https://github.com/rewardone/OSCPRepo) - is a list of resources that author have been gathering in preparation for the OSCP.\
&#x20; :small\_orange\_diamond: [**PayloadsAllTheThings**](https://github.com/swisskyrepo/PayloadsAllTheThings) - a list of useful payloads and bypass for Web Application Security and Pentest/CTF.\
&#x20; :small\_orange\_diamond: [**payloads**](https://github.com/foospidy/payloads) - git all the Payloads! A collection of web attack payloads.\
&#x20; :small\_orange\_diamond: [**command-injection-payload-list**](https://github.com/payloadbox/command-injection-payload-list) - command injection payload list.\
&#x20; :small\_orange\_diamond: [**Awesome Shodan Search Queries**](https://github.com/jakejarvis/awesome-shodan-queries) - great search queries to plug into Shodan.\
&#x20; :small\_orange\_diamond: [**AwesomeXSS**](https://github.com/s0md3v/AwesomeXSS) - is a collection of Awesome XSS resources.\
&#x20; :small\_orange\_diamond: [**php-webshells**](https://github.com/JohnTroony/php-webshells) - common php webshells.\
&#x20; :small\_orange\_diamond: [**Pentesting Tools Cheat Sheet**](https://highon.coffee/blog/penetration-testing-tools-cheat-sheet/) - a quick reference high level overview for typical penetration testing.\
&#x20; :small\_orange\_diamond: [**OWASP Cheat Sheet Series**](https://cheatsheetseries.owasp.org/) - is a collection of high value information on specific application security topics.\
&#x20; :small\_orange\_diamond: [**OWASP dependency-check**](https://jeremylong.github.io/DependencyCheck/index.html) - is an open source solution the OWASP Top 10 2013 entry.\
&#x20; :small\_orange\_diamond: [**OWASP ProActive Controls**](https://www.owasp.org/index.php/OWASP_Proactive_Controls) - OWASP Top 10 Proactive Controls 2018.\
&#x20; :small\_orange\_diamond: [**PENTESTING-BIBLE**](https://github.com/blaCCkHatHacEEkr/PENTESTING-BIBLE) - hacking & penetration testing & red team & cyber security resources.\
&#x20; :small\_orange\_diamond: [**pentest-wiki**](https://github.com/nixawk/pentest-wiki) - is a free online security knowledge library for pentesters/researchers.\
&#x20; :small\_orange\_diamond: [**DEF CON Media Server**](https://media.defcon.org/) - great stuff from DEFCON.\
&#x20; :small\_orange\_diamond: [**Awesome Malware Analysis**](https://github.com/rshipp/awesome-malware-analysis) - a curated list of awesome malware analysis tools and resources.\
&#x20; :small\_orange\_diamond: [**SQL Injection Cheat Sheet**](https://www.netsparker.com/blog/web-security/sql-injection-cheat-sheet/) - detailed technical stuff about the many different variants of the SQL Injection.\
&#x20; :small\_orange\_diamond: [**Entersoft Knowledge Base**](http://kb.entersoft.co.in/) - great and detailed reference about vulnerabilities.\
&#x20; :small\_orange\_diamond: [**HTML5 Security Cheatsheet**](http://html5sec.org/) - a collection of HTML5 related XSS attack vectors.\
&#x20; :small\_orange\_diamond: [**XSS String Encoder**](http://evuln.com/tools/xss-encoder/) - for generating XSS code to check your input validation filters against XSS.\
&#x20; :small\_orange\_diamond: [**GTFOBins**](https://gtfobins.github.io/) - list of Unix binaries that can be exploited by an attacker to bypass local security restrictions.\
&#x20; :small\_orange\_diamond: [**Guifre Ruiz Notes**](https://guif.re/) - collection of security, system, network and pentest cheatsheets.\
&#x20; :small\_orange\_diamond: [**SSRF Tips**](http://blog.safebuff.com/2016/07/03/SSRF-Tips/index.html) - a collection of SSRF Tips.\
&#x20; :small\_orange\_diamond: [**shell-storm repo CTF**](http://shell-storm.org/repo/CTF/) - great archive of CTFs.\
&#x20; :small\_orange\_diamond: [**ctf**](https://github.com/bl4de/ctf) - CTF (Capture The Flag) writeups, code snippets, notes, scripts.\
&#x20; :small\_orange\_diamond: [**My-CTF-Web-Challenges**](https://github.com/orangetw/My-CTF-Web-Challenges) - collection of CTF Web challenges.\
&#x20; :small\_orange\_diamond: [**MSTG**](https://github.com/OWASP/owasp-mstg) - The Mobile Security Testing Guide (MSTG) is a comprehensive manual for mobile app security testing.\
&#x20; :small\_orange\_diamond: [**Internal-Pentest-Playbook**](https://github.com/sdcampbell/Internal-Pentest-Playbook) - notes on the most common things for an Internal Network Penetration Test.\
&#x20; :small\_orange\_diamond: [**KeyHacks**](https://github.com/streaak/keyhacks) - shows quick ways in which API keys leaked by a bug bounty program can be checked.\
&#x20; :small\_orange\_diamond: [**securitum/research**](https://github.com/securitum/research) - various Proof of Concepts of security research performed by Securitum.\
&#x20; :small\_orange\_diamond: [**public-pentesting-reports**](https://github.com/juliocesarfort/public-pentesting-reports) - is a list of public pentest reports released by several consulting security groups.\
&#x20; :small\_orange\_diamond: [**awesome-bug-bounty**](https://github.com/djadmin/awesome-bug-bounty) - is a comprehensive curated list of available Bug Bounty.\
&#x20; :small\_orange\_diamond: [**bug-bounty-reference**](https://github.com/ngalongc/bug-bounty-reference) - is a list of bug bounty write-ups.\
&#x20; :small\_orange\_diamond: [**Awesome-Bugbounty-Writeups**](https://github.com/devanshbatham/Awesome-Bugbounty-Writeups) - is a curated list of bugbounty writeups.\
&#x20; :small\_orange\_diamond: [**Bug bounty writeups**](https://pentester.land/list-of-bug-bounty-writeups.html) - list of bug bounty writeups (2012-2020).\
&#x20; :small\_orange\_diamond: [**hackso.me**](https://hackso.me/) - a great journey into security.\


:black\_small\_square: **Backdoors/exploits**

&#x20; :small\_orange\_diamond: [**PHP-backdoors**](https://github.com/bartblaze/PHP-backdoors) - a collection of PHP backdoors. For educational or testing purposes only.\


:black\_small\_square: **Wordlists and Weak passwords**

&#x20; :small\_orange\_diamond: [**Weakpass**](https://weakpass.com/) - for any kind of bruteforce find wordlists or unleash the power of them all at once!\
&#x20; :small\_orange\_diamond: [**Hashes.org**](https://hashes.org/) - is a free online hash resolving service incorporating many unparalleled techniques.\
&#x20; :small\_orange\_diamond: [**SecLists**](https://github.com/danielmiessler/SecLists) - collection of multiple types of lists used during security assessments, collected in one place.\
&#x20; :small\_orange\_diamond: [**Probable-Wordlists**](https://github.com/berzerk0/Probable-Wordlists) - sorted by probability originally created for password generation and testing.\
&#x20; :small\_orange\_diamond: [**skullsecurity passwords**](https://wiki.skullsecurity.org/index.php?title=Passwords) - password dictionaries and leaked passwords repository.\
&#x20; :small\_orange\_diamond: [**Polish PREMIUM Dictionary**](https://bezpieka.org/polski-slownik-premium-polish-wordlist) - official dictionary created by the team on the forum bezpieka.org.**\*** [1](https://sourceforge.net/projects/kali-linux/files/Wordlist/)[\
&#x20; :small\_orange\_diamond: ](https://sourceforge.net/projects/kali-linux/files/Wordlist/)[**statistically-likely-usernames**](https://github.com/insidetrust/statistically-likely-usernames) - wordlists for creating statistically likely username lists.\


:black\_small\_square: **Bounty platforms**

&#x20; :small\_orange\_diamond: [**YesWeHack**](https://www.yeswehack.com/) - bug bounty platform with infosec jobs.\
&#x20; :small\_orange\_diamond: [**Openbugbounty**](https://www.openbugbounty.org/) - allows any security researcher reporting a vulnerability on any website.\
&#x20; :small\_orange\_diamond: [**hackerone**](https://www.hackerone.com/) - global hacker community to surface the most relevant security issues.\
&#x20; :small\_orange\_diamond: [**bugcrowd**](https://www.bugcrowd.com/) - crowdsourced cybersecurity for the enterprise.\
&#x20; :small\_orange\_diamond: [**Crowdshield**](https://crowdshield.com/) - crowdsourced security & bug bounty management.\
&#x20; :small\_orange\_diamond: [**Synack**](https://www.synack.com/) - crowdsourced security & bug bounty programs, crowd security intelligence platform, and more.\
&#x20; :small\_orange\_diamond: [**Hacktrophy**](https://hacktrophy.com/en/) - bug bounty platform.\


:black\_small\_square: **Web Training Apps (local installation)**

&#x20; :small\_orange\_diamond: [**OWASP-VWAD**](https://www.owasp.org/index.php/OWASP_Vulnerable_Web_Applications_Directory_Project) - comprehensive and well maintained registry of all known vulnerable web applications.\
&#x20; :small\_orange\_diamond: [**DVWA**](http://www.dvwa.co.uk/) - PHP/MySQL web application that is damn vulnerable.\
&#x20; :small\_orange\_diamond: [**metasploitable2**](https://metasploit.help.rapid7.com/docs/metasploitable-2) - vulnerable web application amongst security researchers.\
&#x20; :small\_orange\_diamond: [**metasploitable3**](https://github.com/rapid7/metasploitable3) - is a VM that is built from the ground up with a large amount of security vulnerabilities.\
&#x20; :small\_orange\_diamond: [**DSVW**](https://github.com/stamparm/DSVW) - is a deliberately vulnerable web application written in under 100 lines of code.\
&#x20; :small\_orange\_diamond: [**OWASP Mutillidae II**](https://sourceforge.net/projects/mutillidae/) - free, open source, deliberately vulnerable web-application.\
&#x20; :small\_orange\_diamond: [**OWASP Juice Shop Project**](https://www.owasp.org/index.php/OWASP_Juice_Shop_Project) - the most bug-free vulnerable application in existence.\
&#x20; :small\_orange\_diamond: [**OWASP Node js Goat Project**](https://www.owasp.org/index.php/Projects/OWASP_Node_js_Goat_Project) - OWASP Top 10 security risks apply to web apps developed using Node.js.\
&#x20; :small\_orange\_diamond: [**juicy-ctf**](https://github.com/iteratec/juicy-ctf) - run Capture the Flags and Security Trainings with OWASP Juice Shop.\
&#x20; :small\_orange\_diamond: [**SecurityShepherd**](https://github.com/OWASP/SecurityShepherd) - web and mobile application security training platform.\
&#x20; :small\_orange\_diamond: [**Security Ninjas**](https://github.com/opendns/Security_Ninjas_AppSec_Training) - open source application security training program.\
&#x20; :small\_orange\_diamond: [**hackazon**](https://github.com/rapid7/hackazon) - a modern vulnerable web app.\
&#x20; :small\_orange\_diamond: [**dvna**](https://github.com/appsecco/dvna) - damn vulnerable NodeJS application.\
&#x20; :small\_orange\_diamond: [**django-DefectDojo**](https://github.com/DefectDojo/django-DefectDojo) - is an open-source application vulnerability correlation and security orchestration tool.\
&#x20; :small\_orange\_diamond: [**Google Gruyere**](https://google-gruyere.appspot.com/) - web application exploits and defenses.\
&#x20; :small\_orange\_diamond: [**Bodhi**](https://github.com/amolnaik4/bodhi) - is a playground focused on learning the exploitation of client-side web vulnerabilities.\
&#x20; :small\_orange\_diamond: [**Websploit**](https://websploit.h4cker.org/) - single vm lab with the purpose of combining several vulnerable appliations in one environment.\
&#x20; :small\_orange\_diamond: [**vulhub**](https://github.com/vulhub/vulhub) - pre-built Vulnerable Environments based on docker-compose.\
&#x20; :small\_orange\_diamond: [**CloudGoat 2**](https://rhinosecuritylabs.com/aws/introducing-cloudgoat-2/) - the new & improved "Vulnerable by Design" AWS deployment tool.\
&#x20; :small\_orange\_diamond: [**secDevLabs**](https://github.com/globocom/secDevLabs) - is a laboratory for learning secure web development in a practical manner.\
&#x20; :small\_orange\_diamond: [**CORS-vulnerable-Lab**](https://github.com/incredibleindishell/CORS-vulnerable-Lab) - sample vulnerable code and its exploit code.\
&#x20; :small\_orange\_diamond: [**RootTheBox**](https://github.com/moloch--/RootTheBox) - a Game of Hackers (CTF Scoreboard & Game Manager).\
&#x20; :small\_orange\_diamond: [**KONTRA**](https://application.security/) - application security training (OWASP Top Web & Api).\


:black\_small\_square: **Labs (ethical hacking platforms/trainings/CTFs)**

&#x20; :small\_orange\_diamond: [**Offensive Security**](https://www.offensive-security.com/) - true performance-based penetration testing training for over a decade.\
&#x20; :small\_orange\_diamond: [**Hack The Box**](https://www.hackthebox.eu/) - online platform allowing you to test your penetration testing skills.\
&#x20; :small\_orange\_diamond: [**Hacking-Lab**](https://www.hacking-lab.com/index.html) - online ethical hacking, computer network and security challenge platform.\
&#x20; :small\_orange\_diamond: [**pwnable.kr**](http://pwnable.kr/index.php) - non-commercial wargame site which provides various pwn challenges.\
&#x20; :small\_orange\_diamond: [**Pwnable.tw**](https://pwnable.tw/) - is a wargame site for hackers to test and expand their binary exploiting skills.\
&#x20; :small\_orange\_diamond: [**picoCTF**](https://picoctf.com/) - is a free computer security game targeted at middle and high school students.\
&#x20; :small\_orange\_diamond: [**CTFlearn**](https://ctflearn.com/) - is an online platform built to help ethical hackers learn and practice their cybersecurity knowledge.\
&#x20; :small\_orange\_diamond: [**ctftime**](https://ctftime.org/) - CTF archive and a place, where you can get some another CTF-related info.\
&#x20; :small\_orange\_diamond: [**Silesia Security Lab**](https://silesiasecuritylab.com/) - high quality security testing services.\
&#x20; :small\_orange\_diamond: [**Practical Pentest Labs**](https://practicalpentestlabs.com/) - pentest lab, take your Hacking skills to the next level.\
&#x20; :small\_orange\_diamond: [**Root Me**](https://www.root-me.org/?lang=en) - the fast, easy, and affordable way to train your hacking skills.\
&#x20; :small\_orange\_diamond: [**rozwal.to**](https://rozwal.to/login) - a great platform to train your pentesting skills.\
&#x20; :small\_orange\_diamond: [**TryHackMe**](https://tryhackme.com/) - learning Cyber Security made easy.\
&#x20; :small\_orange\_diamond: [**hackxor**](https://hackxor.net/) - is a realistic web application hacking game, designed to help players of all abilities develop their skills.\
&#x20; :small\_orange\_diamond: [**Hack Yourself First**](http://hack-yourself-first.com/) - it's full of nasty app sec holes.\
&#x20; :small\_orange\_diamond: [**OverTheWire**](http://overthewire.org/wargames/) - can help you to learn and practice security concepts in the form of fun-filled games.\
&#x20; :small\_orange\_diamond: [**Wizard Labs**](https://labs.wizard-security.net/) - is an online Penetration Testing Lab.\
&#x20; :small\_orange\_diamond: [**PentesterLab**](https://pentesterlab.com/) - provides vulnerable systems that can be used to test and understand vulnerabilities.\
&#x20; :small\_orange\_diamond: [**RingZer0**](https://ringzer0ctf.com/) - tons of challenges designed to test and improve your hacking skills.\
&#x20; :small\_orange\_diamond: [**try2hack**](http://www.try2hack.nl/) - several security-oriented challenges for your entertainment.\
&#x20; :small\_orange\_diamond: [**Ubeeri**](https://www.ubeeri.com/preconfig-labs) - preconfigured lab environments.\
&#x20; :small\_orange\_diamond: [**Pentestit**](https://lab.pentestit.ru/) - emulate IT infrastructures of real companies for legal pen testing and improving pentest skills.\
&#x20; :small\_orange\_diamond: [**Microcorruption**](https://microcorruption.com/login) - reversal challenges done in the web interface.\
&#x20; :small\_orange\_diamond: [**Crackmes**](https://crackmes.one/) - download crackmes to help improve your reverse engineering skills.\
&#x20; :small\_orange\_diamond: [**DomGoat**](https://domgo.at/cxss/intro) - DOM XSS security learning and practicing platform.\
&#x20; :small\_orange\_diamond: [**Stereotyped Challenges**](https://chall.stypr.com) - upgrade your web hacking techniques today!\
&#x20; :small\_orange\_diamond: [**Vulnhub**](https://www.vulnhub.com/) - allows anyone to gain practical 'hands-on' experience in digital security.\
&#x20; :small\_orange\_diamond: [**W3Challs**](https://w3challs.com/) - is a penetration testing training platform, which offers various computer challenges.\
&#x20; :small\_orange\_diamond: [**RingZer0 CTF**](https://ringzer0ctf.com/challenges) - offers you tons of challenges designed to test and improve your hacking skills.\
&#x20; :small\_orange\_diamond: [**Hack.me**](https://hack.me/) - a platform where you can build, host and share vulnerable web apps for educational purposes.\
&#x20; :small\_orange\_diamond: [**HackThis!**](https://www.hackthis.co.uk/levels/) - discover how hacks, dumps and defacements are performed and secure your website.\
&#x20; :small\_orange\_diamond: [**Enigma Group WebApp Training**](https://www.enigmagroup.org) - these challenges cover the exploits listed in the OWASP Top 10 Project.\
&#x20; :small\_orange\_diamond: [**Reverse Engineering Challenges**](https://challenges.re/) - challenges, exercises, problems and tasks - by level, by type, and more.\
&#x20; :small\_orange\_diamond: [**0x00sec**](https://0x00sec.org/) - the home of the Hacker - Malware, Reverse Engineering, and Computer Science.\
&#x20; :small\_orange\_diamond: [**We Chall**](https://www.wechall.net/challs) - there are exist a lots of different challenge types.\
&#x20; :small\_orange\_diamond: [**Hacker Gateway**](https://www.hackergateway.com/) - is the go-to place for hackers who want to test their skills.\
&#x20; :small\_orange\_diamond: [**Hacker101**](https://www.hacker101.com/) - is a free class for web security.\
&#x20; :small\_orange\_diamond: [**contained.af**](https://contained.af/) - a stupid game for learning about containers, capabilities, and syscalls.\
&#x20; :small\_orange\_diamond: [**flAWS challenge!**](http://flaws.cloud/) - a series of levels you'll learn about common mistakes and gotchas when using AWS.\
&#x20; :small\_orange\_diamond: [**CyberSec WTF**](https://cybersecurity.wtf) - provides web hacking challenges derived from bounty write-ups.\
&#x20; :small\_orange\_diamond: [**CTF Challenge**](https://ctfchallenge.co.uk/login) - CTF Web App challenges.\
&#x20; :small\_orange\_diamond: [**gCTF**](https://capturetheflag.withgoogle.com) - most of the challenges used in the Google CTF 2017.\
&#x20; :small\_orange\_diamond: [**Hack This Site**](https://www.hackthissite.org/pages/index/index.php) - is a free, safe and legal training ground for hackers.\
&#x20; :small\_orange\_diamond: [**Attack & Defense**](https://attackdefense.com) - is a browser-based cloud labs.\
&#x20; :small\_orange\_diamond: [**Cryptohack**](https://cryptohack.org/) - a fun platform for learning modern cryptography.\
&#x20; :small\_orange\_diamond: [**Cryptopals**](https://cryptopals.com/) - the cryptopals crypto challenges.\


:black\_small\_square: **CTF platforms**

&#x20; :small\_orange\_diamond: [**fbctf**](https://github.com/facebook/fbctf) - platform to host Capture the Flag competitions.\
&#x20; :small\_orange\_diamond: [**ctfscoreboard**](https://github.com/google/ctfscoreboard) - scoreboard for Capture The Flag competitions.\


:black\_small\_square: **Other resources**

&#x20; :small\_orange\_diamond: [**Bugcrowd University**](https://github.com/bugcrowd/bugcrowd_university) - open source education content for the researcher community.\
&#x20; :small\_orange\_diamond: [**OSCPRepo**](https://github.com/rewardone/OSCPRepo) - a list of resources and scripts that I have been gathering in preparation for the OSCP.\
&#x20; :small\_orange\_diamond: [**OWASP Top 10: Real-World Examples**](https://medium.com/@cxosmo/owasp-top-10-real-world-examples-part-1-a540c4ea2df5) - test your web apps with real-world examples (two-part series).\
&#x20; :small\_orange\_diamond: [**phrack.org**](http://phrack.org/index.html) - an awesome collection of articles from several respected hackers and other thinkers.\
&#x20; :small\_orange\_diamond: [**Practical-Ethical-Hacking-Resources**](https://github.com/Gr1mmie/Practical-Ethical-Hacking-Resources) - compilation of resources from TCM's Udemy Course.\


**Your daily knowledge and news  \[TOC]**

:black\_small\_square: **RSS Readers**

&#x20; :small\_orange\_diamond: [**Feedly**](https://feedly.com/) - organize, read and share what matters to you.\
&#x20; :small\_orange\_diamond: [**Inoreader**](https://www.inoreader.com/) - similar to feedly with a support for filtering what you fetch from rss.\


:black\_small\_square: **IRC Channels**

&#x20; :small\_orange\_diamond: [**#hackerspaces**](https://wiki.hackerspaces.org/IRC_Channel) - hackerspace IRC channels.\


:black\_small\_square: **Security**

&#x20; :small\_orange\_diamond: [**The Hacker News**](https://thehackernews.com/) - leading news source dedicated to promoting awareness for security experts and hackers.\
&#x20; :small\_orange\_diamond: [**Latest Hacking News**](https://latesthackingnews.com/) - provides the latest hacking news, exploits and vulnerabilities for ethical hackers.\
&#x20; :small\_orange\_diamond: [**Security Newsletter**](https://securitynewsletter.co/) - security news as a weekly digest (email notifications).\
&#x20; :small\_orange\_diamond: [**Google Online Security Blog**](https://security.googleblog.com/) - the latest news and insights from Google on security and safety on the Internet.\
&#x20; :small\_orange\_diamond: [**Qualys Blog**](https://blog.qualys.com/) - expert network security guidance and news.\
&#x20; :small\_orange\_diamond: [**DARKReading**](https://www.darkreading.com/) - connecting the Information Security Community.\
&#x20; :small\_orange\_diamond: [**Darknet**](https://www.darknet.org.uk/) - latest hacking tools, hacker news, cybersecurity best practices, ethical hacking & pen-testing.\
&#x20; :small\_orange\_diamond: [**publiclyDisclosed**](https://twitter.com/disclosedh1) - public disclosure watcher who keeps you up to date about the recently disclosed bugs.\
&#x20; :small\_orange\_diamond: [**Reddit - Hacking**](https://www.reddit.com/r/hacking/) - a subreddit dedicated to hacking and hackers.\
&#x20; :small\_orange\_diamond: [**Packet Storm**](https://packetstormsecurity.com/) - information security services, news, files, tools, exploits, advisories and whitepapers.\
&#x20; :small\_orange\_diamond: [**Sekurak**](https://sekurak.pl/) - about security, penetration tests, vulnerabilities and many others (PL/EN).\
&#x20; :small\_orange\_diamond: [**nf.sec**](https://nfsec.pl/) - basic aspects and mechanisms of Linux operating system security (PL).\


:black\_small\_square: **Other/All-in-one**

&#x20; :small\_orange\_diamond: [**Changelog**](https://changelog.com/) - is a community of hackers; news & podcasts for developers and hackers.\


**Other Cheat Sheets  \[TOC]**

**Build your own DNS Servers**

&#x20; :small\_orange\_diamond: [**Unbound DNS Tutorial**](https://calomel.org/unbound_dns.html) - a validating, recursive, and caching DNS server.\
&#x20; :small\_orange\_diamond: [**Knot Resolver on Fedora**](https://www.ctrl.blog/entry/knot-dns-resolver-tutorial.html) - how to get faster and more secure DNS resolution with Knot Resolver on Fedora.\
&#x20; :small\_orange\_diamond: [**DNS-over-HTTPS**](https://www.aaflalo.me/2018/10/tutorial-setup-dns-over-https-server/) - tutorial to setup your own DNS-over-HTTPS (DoH) server.\
&#x20; :small\_orange\_diamond: [**dns-over-https**](https://hacks.mozilla.org/2018/05/a-cartoon-intro-to-dns-over-https/) - a cartoon intro to DNS over HTTPS.\
&#x20; :small\_orange\_diamond: [**DNS-over-TLS**](https://www.aaflalo.me/2019/03/dns-over-tls/) - following to your DoH server, setup your DNS-over-TLS (DoT) server.\
&#x20; :small\_orange\_diamond: [**DNS Servers**](https://zwischenzugs.com/2018/01/26/how-and-why-i-run-my-own-dns-servers/) - how (and why) i run my own DNS Servers.\


**Build your own Certificate Authority**

&#x20; :small\_orange\_diamond: [**OpenSSL Certificate Authority**](https://jamielinux.com/docs/openssl-certificate-authority/) - build your own certificate authority (CA) using the OpenSSL tools.\
&#x20; :small\_orange\_diamond: [**step-ca Certificate Authority**](https://github.com/smallstep/certificates) - build your own certificate authority (CA) using open source step-ca.\


**Build your own System/Virtual Machine**

&#x20; :small\_orange\_diamond: [**os-tutorial**](https://github.com/cfenollosa/os-tutorial) - how to create an OS from scratch.\
&#x20; :small\_orange\_diamond: [**Write your Own Virtual Machine**](https://justinmeiners.github.io/lc3-vm/) - how to write your own virtual machine (VM).\
&#x20; :small\_orange\_diamond: [**x86 Bare Metal Examples**](https://github.com/cirosantilli/x86-bare-metal-examples) - dozens of minimal operating systems to learn x86 system programming.\
&#x20; :small\_orange\_diamond: [**simple-computer**](https://github.com/djhworld/simple-computer) - the scott CPU from "But How Do It Know?" by J. Clark Scott.\
&#x20; :small\_orange\_diamond: [**littleosbook**](https://littleosbook.github.io/) - the little book about OS development.\


**DNS Servers list (privacy)**

| **IP**               | **URL**                                                                                 |
| -------------------- | --------------------------------------------------------------------------------------- |
| **`84.200.69.80`**   | [dns.watch](https://dns.watch/)                                                         |
| **`94.247.43.254`**  | [opennic.org](https://www.opennic.org/)                                                 |
| **`64.6.64.6`**      | [verisign.com](https://www.verisign.com/en_US/security-services/public-dns/index.xhtml) |
| **`89.233.43.71`**   | [censurfridns.dk](https://blog.uncensoreddns.org/)                                      |
| **`1.1.1.1`**        | [cloudflare.com](https://1.1.1.1/)                                                      |
| **`94.130.110.185`** | [dnsprivacy.at](https://dnsprivacy.at/)                                                 |

**TOP Browser extensions**

| **Extension name**       | **Description**                                                               |
| ------------------------ | ----------------------------------------------------------------------------- |
| **`IPvFoo`**             | Display the server IP address and HTTPS information across all page elements. |
| **`FoxyProxy`**          | Simplifies configuring browsers to access proxy-servers.                      |
| **`HTTPS Everywhere`**   | Automatically use HTTPS security on many sites.                               |
| **`uMatrix`**            | Point & click to forbid/allow any class of requests made by your browser.     |
| **`uBlock Origin`**      | An efficient blocker: easy on memory and CPU footprint.                       |
| **`Session Buddy`**      | Manage browser tabs and bookmarks with ease.                                  |
| **`SuperSorter`**        | Sort bookmarks recursively, delete duplicates, merge folders, and more.       |
| **`Clear Cache`**        | Clear your cache and browsing data.                                           |
| **`d3coder`**            | Encoding/Decoding plugin for various types of encoding.                       |
| **`Web Developer`**      | Adds a toolbar button with various web developer tools.                       |
| **`ThreatPinch Lookup`** | Add threat intelligence hover tool tips.                                      |

**TOP Burp extensions**

| **Extension name**                   | **Description**                                                                 |
| ------------------------------------ | ------------------------------------------------------------------------------- |
| **`Active Scan++`**                  | Extends Burp's active and passive scanning capabilities.                        |
| **`Autorize`**                       | Automatically detects authorization enforcement.                                |
| **`AuthMatrix`**                     | A simple matrix grid to define the desired levels of access privilege.          |
| **`Logger++`**                       | Logs requests and responses for all Burp tools in a sortable table.             |
| **`Bypass WAF`**                     | Adds headers useful for bypassing some WAF devices.                             |
| **`JSON Beautifier`**                | Beautifies JSON content in the HTTP message viewer.                             |
| **`JSON Web Tokens`**                | Enables Burp to decode and manipulate JSON web tokens.                          |
| **`CSP Auditor`**                    | Displays CSP headers for responses, and passively reports CSP weaknesses.       |
| **`CSP-Bypass`**                     | Passively scans for CSP headers that contain known bypasses.                    |
| **`Hackvertor`**                     | Converts data using a tag-based configuration to apply various encoding.        |
| **`HTML5 Auditor`**                  | Scans for usage of risky HTML5 features.                                        |
| **`Software Vulnerability Scanner`** | Vulnerability scanner based on vulners.com audit API.                           |
| **`Turbo Intruder`**                 | Is a powerful bruteforcing tool.                                                |
| **`Upload Scanner`**                 | Upload a number of different file types, laced with different forms of payload. |

**Hack Mozilla Firefox address bar**

In Firefox's address bar, you can limit results by typing special characters before or after your term:

* `^` - for matches in your browsing history
* `*` - for matches in your bookmarks.
* `%` - for matches in your currently open tabs.
* `#` - for matches in page titles.
* `@` - for matches in web addresses.

**Chrome hidden commands**

* `chrome://chrome-urls` - list of all commands
* `chrome://flags` - enable experiments and development features
* `chrome://interstitials` - errors and warnings
* `chrome://net-internals` - network internals (events, dns, cache)
* `chrome://network-errors` - network errors
* `chrome://net-export` - start logging future network activity to a file
* `chrome://safe-browsing` - safe browsing options
* `chrome://user-actions` - record all user actions
* `chrome://restart` - restart chrome
* `chrome://dino` - ERR\_INTERNET\_DISCONNECTED...
* `cache:<website-address>` - view the cached version of the web page

**Bypass WAFs by Shortening IP Address (by** [**0xInfection**](https://twitter.com/0xInfection)**)**

IP addresses can be shortened by dropping the zeroes:

```
http://1.0.0.1 → http://1.1
http://127.0.0.1 → http://127.1
http://192.168.0.1 → http://192.168.1

http://0xC0A80001 or http://3232235521 → 192.168.0.1
http://192.168.257 → 192.168.1.1
http://192.168.516 → 192.168.2.4
```

> This bypasses WAF filters for SSRF, open-redirect, etc where any IP as input gets blacklisted.

For more information please see [How to Obscure Any URL](http://www.pc-help.org/obscure.htm) and [Magic IP Address Shortcuts](https://stuff-things.net/2014/09/25/magic-ip-address-shortcuts/).

**Hashing, encryption and encoding (by** [**Michal Špaček**](https://twitter.com/spazef0rze)**)**

_Hashing_

plaintext :arrow\_right: hash\
hash :no\_entry: plaintext

_Symmetric encryption_

plaintext :arrow\_right: :key: :arrow\_right: ciphertext\
plaintext :arrow\_left: :key: :arrow\_left: ciphertext\
(:key: shared key)

_Asymmetric encryption_

plaintext :arrow\_right: :key: :arrow\_right: ciphertext\
plaintext :arrow\_left: :part\_alternation\_mark: :arrow\_left: ciphertext\
(:key: public key, :part\_alternation\_mark: private key)\


_Encoding_

text :arrow\_right: encoded\
text :arrow\_left: encoded

**One-liners  \[TOC]**

**Table of Contents**

* terminal
* busybox
* mount
* fuser
* lsof
* ps
* top
* vmstat
* iostat
* strace
* kill
* find
* diff
* vimdiff
* tail
* cpulimit
* pwdx
* tr
* chmod
* who
* last
* screen
* script
* du
* inotifywait
* openssl
* secure-delete
* dd
* gpg
* system-other
* curl
* httpie
* ssh
* linux-dev
* tcpdump
* tcpick
* ngrep
* hping3
* nmap
* netcat
* socat
* p0f
* gnutls-cli
* netstat
* rsync
* host
* dig
* certbot
* network-other
* git
* awk
* sed
* grep
* perl

**Tool:** [**terminal**](https://en.wikipedia.org/wiki/Linux_console)

**Reload shell without exit**

```bash
exec $SHELL -l
```

**Close shell keeping all subprocess running**

```bash
disown -a && exit
```

**Exit without saving shell history**

```bash
kill -9 $$
unset HISTFILE && exit
```

**Perform a branching conditional**

```bash
true && echo success
false || echo failed
```

**Pipe stdout and stderr to separate commands**

```bash
some_command > >(/bin/cmd_for_stdout) 2> >(/bin/cmd_for_stderr)
```

**Redirect stdout and stderr each to separate files and print both to the screen**

```bash
(some_command 2>&1 1>&3 | tee errorlog ) 3>&1 1>&2 | tee stdoutlog
```

**List of commands you use most often**

```bash
history | \
awk '{CMD[$2]++;count++;}END { for (a in CMD)print CMD[a] " " CMD[a]/count*100 "% " a;}' | \
grep -v "./" | \
column -c3 -s " " -t | \
sort -nr | nl |  head -n 20
```

**Sterilize bash history**

```bash
function sterile() {

  history | awk '$2 != "history" { $1=""; print $0 }' | egrep -vi "\
curl\b+.*(-E|--cert)\b+.*\b*|\
curl\b+.*--pass\b+.*\b*|\
curl\b+.*(-U|--proxy-user).*:.*\b*|\
curl\b+.*(-u|--user).*:.*\b*
.*(-H|--header).*(token|auth.*)\b+.*|\
wget\b+.*--.*password\b+.*\b*|\
http.?://.+:.+@.*\
" > $HOME/histbuff; history -r $HOME/histbuff;

}

export PROMPT_COMMAND="sterile"
```

> Look also: [A naive utility to censor credentials in command history](https://github.com/lbonanomi/go/blob/master/revisionist.go).

**Quickly backup a file**

```bash
cp filename{,.orig}
```

**Empty a file (truncate to 0 size)**

```bash
>filename
```

**Delete all files in a folder that don't match a certain file extension**

```bash
rm !(*.foo|*.bar|*.baz)
```

**Pass multi-line string to a file**

```bash
# cat  >filename ... - overwrite the file
# cat >>filename ... - append to a file
cat > filename << __EOF__
data data data
__EOF__
```

**Edit a file on a remote host using vim**

```bash
vim scp://user@host//etc/fstab
```

**Create a directory and change into it at the same time**

```bash
mkd() { mkdir -p "$@" && cd "$@"; }
```

**Convert uppercase files to lowercase files**

```bash
rename 'y/A-Z/a-z/' *
```

**Print a row of characters across the terminal**

```bash
printf "%`tput cols`s" | tr ' ' '#'
```

**Show shell history without line numbers**

```bash
history | cut -c 8-
fc -l -n 1 | sed 's/^\s*//'
```

**Run command(s) after exit session**

```bash
cat > /etc/profile << __EOF__
_after_logout() {

  username=$(whoami)

  for _pid in $(ps afx | grep sshd | grep "$username" | awk '{print $1}') ; do

    kill -9 $_pid

  done

}
trap _after_logout EXIT
__EOF__
```

**Generate a sequence of numbers**

```bash
for ((i=1; i<=10; i+=2)) ; do echo $i ; done
# alternative: seq 1 2 10

for ((i=5; i<=10; ++i)) ; do printf '%02d\n' $i ; done
# alternative: seq -w 5 10

for i in {1..10} ; do echo $i ; done
```

**Simple Bash filewatching**

```bash
unset MAIL; export MAILCHECK=1; export MAILPATH='$FILE_TO_WATCH?$MESSAGE'
```

***

**Tool:** [**busybox**](https://www.busybox.net/)

**Static HTTP web server**

```bash
busybox httpd -p $PORT -h $HOME [-c httpd.conf]
```

***

**Tool:** [**mount**](https://en.wikipedia.org/wiki/Mount_\(Unix\))

**Mount a temporary ram partition**

```bash
mount -t tmpfs tmpfs /mnt -o size=64M
```

* `-t` - filesystem type
* `-o` - mount options

**Remount a filesystem as read/write**

```bash
mount -o remount,rw /
```

***

**Tool:** [**fuser**](https://en.wikipedia.org/wiki/Fuser_\(Unix\))

**Show which processes use the files/directories**

```bash
fuser /var/log/daemon.log
fuser -v /home/supervisor
```

**Kills a process that is locking a file**

```bash
fuser -ki filename
```

* `-i` - interactive option

**Kills a process that is locking a file with specific signal**

```bash
fuser -k -HUP filename
```

* `--list-signals` - list available signal names

**Show what PID is listening on specific port**

```bash
fuser -v 53/udp
```

**Show all processes using the named filesystems or block device**

```bash
fuser -mv /var/www
```

***

**Tool:** [**lsof**](https://en.wikipedia.org/wiki/Lsof)

**Show process that use internet connection at the moment**

```bash
lsof -P -i -n
```

**Show process that use specific port number**

```bash
lsof -i tcp:443
```

**Lists all listening ports together with the PID of the associated process**

```bash
lsof -Pan -i tcp -i udp
```

**List all open ports and their owning executables**

```bash
lsof -i -P | grep -i "listen"
```

**Show all open ports**

```bash
lsof -Pnl -i
```

**Show open ports (LISTEN)**

```bash
lsof -Pni4 | grep LISTEN | column -t
```

**List all files opened by a particular command**

```bash
lsof -c "process"
```

**View user activity per directory**

```bash
lsof -u username -a +D /etc
```

**Show 10 largest open files**

```bash
lsof / | \
awk '{ if($7 > 1048576) print $7/1048576 "MB" " " $9 " " $1 }' | \
sort -n -u | tail | column -t
```

**Show current working directory of a process**

```bash
lsof -p <PID> | grep cwd
```

***

**Tool:** [**ps**](https://en.wikipedia.org/wiki/Ps_\(Unix\))

**Show a 4-way scrollable process tree with full details**

```bash
ps awwfux | less -S
```

**Processes per user counter**

```bash
ps hax -o user | sort | uniq -c | sort -r
```

**Show all processes by name with main header**

```bash
ps -lfC nginx
```

***

**Tool:** [**find**](https://en.wikipedia.org/wiki/Find_\(Unix\))

**Find files that have been modified on your system in the past 60 minutes**

```bash
find / -mmin 60 -type f
```

**Find all files larger than 20M**

```bash
find / -type f -size +20M
```

**Find duplicate files (based on MD5 hash)**

```bash
find -type f -exec md5sum '{}' ';' | sort | uniq --all-repeated=separate -w 33
```

**Change permission only for files**

```bash
cd /var/www/site && find . -type f -exec chmod 766 {} \;
cd /var/www/site && find . -type f -exec chmod 664 {} +
```

**Change permission only for directories**

```bash
cd /var/www/site && find . -type d -exec chmod g+x {} \;
cd /var/www/site && find . -type d -exec chmod g+rwx {} +
```

**Find files and directories for specific user/group**

```bash
# User:
find . -user <username> -print
find /etc -type f -user <username> -name "*.conf"

# Group:
find /opt -group <group>
find /etc -type f -group <group> -iname "*.conf"
```

**Find files and directories for all without specific user/group**

```bash
# User:
find . \! -user <username> -print

# Group:
find . \! -group <group>
```

**Looking for files/directories that only have certain permission**

```bash
# User
find . -user <username> -perm -u+rw # -rw-r--r--
find /home -user $(whoami) -perm 777 # -rwxrwxrwx

# Group:
find /home -type d -group <group> -perm 755 # -rwxr-xr-x
```

**Delete older files than 60 days**

```bash
find . -type f -mtime +60 -delete
```

**Recursively remove all empty sub-directories from a directory**

```bash
find . -depth  -type d  -empty -exec rmdir {} \;
```

**How to find all hard links to a file**

```bash
find </path/to/dir> -xdev -samefile filename
```

**Recursively find the latest modified files**

```bash
find . -type f -exec stat --format '%Y :%y %n' "{}" \; | sort -nr | cut -d: -f2- | head
```

**Recursively find/replace of a string with sed**

```bash
find . -not -path '*/\.git*' -type f -print0 | xargs -0 sed -i 's/foo/bar/g'
```

**Recursively find/replace of a string in directories and file names**

```bash
find . -depth -name '*test*' -execdir bash -c 'mv -v "$1" "${1//foo/bar}"' _ {} \;
```

**Recursively find suid executables**

```bash
find / \( -perm -4000 -o -perm -2000 \) -type f -exec ls -la {} \;
```

***

**Tool:** [**top**](https://en.wikipedia.org/wiki/Top_\(software\))

**Use top to monitor only all processes with the specific string**

```bash
top -p $(pgrep -d , <str>)
```

* `<str>` - process containing string (eg. nginx, worker)

***

**Tool:** [**vmstat**](https://en.wikipedia.org/wiki/Vmstat)

**Show current system utilization (fields in kilobytes)**

```bash
vmstat 2 20 -t -w
```

* `2` - number of times with a defined time interval (delay)
* `20` - each execution of the command (count)
* `-t` - show timestamp
* `-w` - wide output
* `-S M` - output of the fields in megabytes instead of kilobytes

**Show current system utilization will get refreshed every 5 seconds**

```bash
vmstat 5 -w
```

**Display report a summary of disk operations**

```bash
vmstat -D
```

**Display report of event counters and memory stats**

```bash
vmstat -s
```

**Display report about kernel objects stored in slab layer cache**

```bash
vmstat -m
```

**Tool:** [**iostat**](https://en.wikipedia.org/wiki/Iostat)

**Show information about the CPU usage, and I/O statistics about all the partitions**

```bash
iostat 2 10 -t -m
```

* `2` - number of times with a defined time interval (delay)
* `10` - each execution of the command (count)
* `-t` - show timestamp
* `-m` - fields in megabytes (`-k` - in kilobytes, default)

**Show information only about the CPU utilization**

```bash
iostat 2 10 -t -m -c
```

**Show information only about the disk utilization**

```bash
iostat 2 10 -t -m -d
```

**Show information only about the LVM utilization**

```bash
iostat -N
```

***

**Tool:** [**strace**](https://en.wikipedia.org/wiki/Strace)

**Track with child processes**

```bash
# 1)
strace -f -p $(pidof glusterfsd)

# 2)
strace -f $(pidof php-fpm | sed 's/\([0-9]*\)/\-p \1/g')
```

**Track process with 30 seconds limit**

```bash
timeout 30 strace $(< /var/run/zabbix/zabbix_agentd.pid)
```

**Track processes and redirect output to a file**

```bash
ps auxw | grep '[a]pache' | awk '{print " -p " $2}' | \
xargs strace -o /tmp/strace-apache-proc.out
```

**Track with print time spent in each syscall and limit length of print strings**

```bash
ps auxw | grep '[i]init_policy' | awk '{print " -p " $2}' | \
xargs strace -f -e trace=network -T -s 10000
```

**Track the open request of a network port**

```bash
strace -f -e trace=bind nc -l 80
```

**Track the open request of a network port (show TCP/UDP)**

```bash
strace -f -e trace=network nc -lu 80
```

***

**Tool:** [**kill**](https://en.wikipedia.org/wiki/Kill_\(command\))

**Kill a process running on port**

```bash
kill -9 $(lsof -i :<port> | awk '{l=$2} END {print l}')
```

***

**Tool:** [**diff**](https://en.wikipedia.org/wiki/Diff)

**Compare two directory trees**

```bash
diff <(cd directory1 && find | sort) <(cd directory2 && find | sort)
```

**Compare output of two commands**

```bash
diff <(cat /etc/passwd) <(cut -f2 /etc/passwd)
```

***

**Tool:** [**vimdiff**](http://vimdoc.sourceforge.net/htmldoc/diff.html)

**Highlight the exact differences, based on characters and words**

```bash
vimdiff file1 file2
```

**Compare two JSON files**

```bash
vimdiff <(jq -S . A.json) <(jq -S . B.json)
```

**Compare Hex dump**

```bash
d(){ vimdiff <(f $1) <(f $2);};f(){ hexdump -C $1|cut -d' ' -f3-|tr -s ' ';}; d ~/bin1 ~/bin2
```

**diffchar**

Save [diffchar](https://raw.githubusercontent.com/vim-scripts/diffchar.vim/master/plugin/diffchar.vim) @ `~/.vim/plugins`

Click `F7` to switch between diff modes

Usefull `vimdiff` commands:

* `qa` to exit all windows
* `:vertical resize 70` to resize window
* set window width `Ctrl+W [N columns]+(Shift+)<\>`

***

**Tool:** [**tail**](https://en.wikipedia.org/wiki/Tail_\(Unix\))

**Annotate tail -f with timestamps**

```bash
tail -f file | while read ; do echo "$(date +%T.%N) $REPLY" ; done
```

**Analyse an Apache access log for the most common IP addresses**

```bash
tail -10000 access_log | awk '{print $1}' | sort | uniq -c | sort -n | tail
```

**Analyse web server log and show only 5xx http codes**

```bash
tail -n 100 -f /path/to/logfile | grep "HTTP/[1-2].[0-1]\" [5]"
```

***

**Tool:** [**tar**](https://en.wikipedia.org/wiki/Tar_\(computing\))

**System backup with exclude specific directories**

```bash
cd /
tar -czvpf /mnt/system$(date +%d%m%Y%s).tgz --directory=/ \
--exclude=proc/* --exclude=sys/* --exclude=dev/* --exclude=mnt/* .
```

**System backup with exclude specific directories (pigz)**

```bash
cd /
tar cvpf /backup/snapshot-$(date +%d%m%Y%s).tgz --directory=/ \
--exclude=proc/* --exclude=sys/* --exclude=dev/* \
--exclude=mnt/* --exclude=tmp/* --use-compress-program=pigz .
```

***

**Tool:** [**dump**](https://en.wikipedia.org/wiki/Dump_\(program\))

**System backup to file**

```bash
dump -y -u -f /backup/system$(date +%d%m%Y%s).lzo /
```

**Restore system from lzo file**

```bash
cd /
restore -rf /backup/system$(date +%d%m%Y%s).lzo
```

***

**Tool:** [**cpulimit**](http://cpulimit.sourceforge.net/)

**Limit the cpu usage of a process**

```bash
cpulimit -p pid -l 50
```

***

**Tool:** [**pwdx**](https://www.cyberciti.biz/faq/unix-linux-pwdx-command-examples-usage-syntax/)

**Show current working directory of a process**

```bash
pwdx <pid>
```

***

**Tool:** [**taskset**](https://www.cyberciti.biz/faq/taskset-cpu-affinity-command/)

**Start a command on only one CPU core**

```bash
taskset -c 0 <command>
```

***

**Tool:** [**tr**](https://en.wikipedia.org/wiki/Tr_\(Unix\))

**Show directories in the PATH, one per line**

```bash
tr : '\n' <<<$PATH
```

***

**Tool:** [**chmod**](https://en.wikipedia.org/wiki/Chmod)

**Remove executable bit from all files in the current directory**

```bash
chmod -R -x+X *
```

**Restore permission for /bin/chmod**

```bash
# 1:
cp /bin/ls chmod.01
cp /bin/chmod chmod.01
./chmod.01 700 file

# 2:
/bin/busybox chmod 0700 /bin/chmod

# 3:
setfacl --set u::rwx,g::---,o::--- /bin/chmod
```

***

**Tool:** [**who**](https://en.wikipedia.org/wiki/Who_\(Unix\))

**Find last reboot time**

```bash
who -b
```

**Detect a user sudo-su'd into the current shell**

```bash
[[ $(who -m | awk '{ print $1 }') == $(whoami) ]] || echo "You are su-ed to $(whoami)"
```

***

**Tool:** [**last**](https://www.howtoforge.com/linux-last-command/)

**Was the last reboot a panic?**

```bash
(last -x -f $(ls -1t /var/log/wtmp* | head -2 | tail -1); last -x -f /var/log/wtmp) | \
grep -A1 reboot | head -2 | grep -q shutdown && echo "Expected reboot" || echo "Panic reboot"
```

***

**Tool:** [**screen**](https://en.wikipedia.org/wiki/GNU_Screen)

**Start screen in detached mode**

```bash
screen -d -m <command>
```

**Attach to an existing screen session**

```bash
screen -r -d <pid>
```

***

**Tool:** [**script**](https://en.wikipedia.org/wiki/Script_\(Unix\))

**Record and replay terminal session**

```bash
### Record session
# 1)
script -t 2>~/session.time -a ~/session.log

# 2)
script --timing=session.time session.log

### Replay session
scriptreplay --timing=session.time session.log
```

***

**Tool:** [**du**](https://en.wikipedia.org/wiki/GNU_Screen)

**Show 20 biggest directories with 'K M G'**

```bash
du | \
sort -r -n | \
awk '{split("K M G",v); s=1; while($1>1024){$1/=1024; s++} print int($1)" "v[s]"\t"$2}' | \
head -n 20
```

***

**Tool:** [**inotifywait**](https://en.wikipedia.org/wiki/GNU_Screen)

**Init tool everytime a file in a directory is modified**

```bash
while true ; do inotifywait -r -e MODIFY dir/ && ls dir/ ; done;
```

***

**Tool:** [**openssl**](https://www.openssl.org/)

**Testing connection to the remote host**

```bash
echo | openssl s_client -connect google.com:443 -showcerts
```

**Testing connection to the remote host (debug mode)**

```bash
echo | openssl s_client -connect google.com:443 -showcerts -tlsextdebug -status
```

**Testing connection to the remote host (with SNI support)**

```bash
echo | openssl s_client -showcerts -servername google.com -connect google.com:443
```

**Testing connection to the remote host with specific ssl version**

```bash
openssl s_client -tls1_2 -connect google.com:443
```

**Testing connection to the remote host with specific ssl cipher**

```bash
openssl s_client -cipher 'AES128-SHA' -connect google.com:443
```

**Verify 0-RTT**

```bash
_host="example.com"

cat > req.in << __EOF__
HEAD / HTTP/1.1
Host: $_host
Connection: close
__EOF__

openssl s_client -connect ${_host}:443 -tls1_3 -sess_out session.pem -ign_eof < req.in
openssl s_client -connect ${_host}:443 -tls1_3 -sess_in session.pem -early_data req.in
```

**Generate private key without passphrase**

```bash
# _len: 2048, 4096
( _fd="private.key" ; _len="2048" ; \
openssl genrsa -out ${_fd} ${_len} )
```

**Generate private key with passphrase**

```bash
# _ciph: des3, aes128, aes256
# _len: 2048, 4096
( _ciph="aes128" ; _fd="private.key" ; _len="2048" ; \
openssl genrsa -${_ciph} -out ${_fd} ${_len} )
```

**Remove passphrase from private key**

```bash
( _fd="private.key" ; _fd_unp="private_unp.key" ; \
openssl rsa -in ${_fd} -out ${_fd_unp} )
```

**Encrypt existing private key with a passphrase**

```bash
# _ciph: des3, aes128, aes256
( _ciph="aes128" ; _fd="private.key" ; _fd_pass="private_pass.key" ; \
openssl rsa -${_ciph} -in ${_fd} -out ${_fd_pass}
```

**Check private key**

```bash
( _fd="private.key" ; \
openssl rsa -check -in ${_fd} )
```

**Get public key from private key**

```bash
( _fd="private.key" ; _fd_pub="public.key" ; \
openssl rsa -pubout -in ${_fd} -out ${_fd_pub} )
```

**Generate private key and CSR**

```bash
( _fd="private.key" ; _fd_csr="request.csr" ; _len="2048" ; \
openssl req -out ${_fd_csr} -new -newkey rsa:${_len} -nodes -keyout ${_fd} )
```

**Generate CSR**

```bash
( _fd="private.key" ; _fd_csr="request.csr" ; \
openssl req -out ${_fd_csr} -new -key ${_fd} )
```

**Generate CSR (metadata from existing certificate)**

> Where `private.key` is the existing private key. As you can see you do not generate this CSR from your certificate (public key). Also you do not generate the "same" CSR, just a new one to request a new certificate.

```bash
( _fd="private.key" ; _fd_csr="request.csr" ; _fd_crt="cert.crt" ; \
openssl x509 -x509toreq -in ${_fd_crt} -out ${_fd_csr} -signkey ${_fd} )
```

**Generate CSR with -config param**

```bash
( _fd="private.key" ; _fd_csr="request.csr" ; \
openssl req -new -sha256 -key ${_fd} -out ${_fd_csr} \
-config <(
cat << __EOF__
[req]
default_bits        = 2048
default_md          = sha256
prompt              = no
distinguished_name  = dn
req_extensions      = req_ext

[ dn ]
C   = "<two-letter ISO abbreviation for your country>"
ST  = "<state or province where your organisation is legally located>"
L   = "<city where your organisation is legally located>"
O   = "<legal name of your organisation>"
OU  = "<section of the organisation>"
CN  = "<fully qualified domain name>"

[ req_ext ]
subjectAltName = @alt_names

[ alt_names ]
DNS.1 = <fully qualified domain name>
DNS.2 = <next domain>
DNS.3 = <next domain>
__EOF__
))
```

Other values in `[ dn ]`:

```
countryName            = "DE"                     # C=
stateOrProvinceName    = "Hessen"                 # ST=
localityName           = "Keller"                 # L=
postalCode             = "424242"                 # L/postalcode=
postalAddress          = "Keller"                 # L/postaladdress=
streetAddress          = "Crater 1621"            # L/street=
organizationName       = "apfelboymschule"        # O=
organizationalUnitName = "IT Department"          # OU=
commonName             = "example.com"            # CN=
emailAddress           = "webmaster@example.com"  # CN/emailAddress=
```

Example of `oids` (you'll probably also have to make OpenSSL know about the new fields required for EV by adding the following under `[new_oids]`):

```
[req]
...
oid_section         = new_oids

[ new_oids ]
postalCode = 2.5.4.17
streetAddress = 2.5.4.9
```

Full example:

```bash
( _fd="private.key" ; _fd_csr="request.csr" ; \
openssl req -new -sha256 -key ${_fd} -out ${_fd_csr} \
-config <(
cat << __EOF__
[req]
default_bits        = 2048
default_md          = sha256
prompt              = no
distinguished_name  = dn
req_extensions      = req_ext
oid_section         = new_oids

[ new_oids ]
serialNumber = 2.5.4.5
streetAddress = 2.5.4.9
postalCode = 2.5.4.17
businessCategory = 2.5.4.15

[ dn ]
serialNumber=00001111
businessCategory=Private Organization
jurisdictionC=DE
C=DE
ST=Hessen
L=Keller
postalCode=424242
streetAddress=Crater 1621
O=AV Company
OU=IT
CN=example.com

[ req_ext ]
subjectAltName = @alt_names

[ alt_names ]
DNS.1 = example.com
__EOF__
))
```

For more information please look at these great explanations:

* [RFC 5280](https://tools.ietf.org/html/rfc5280)
* [How to create multidomain certificates using config files](https://apfelboymchen.net/gnu/notes/openssl%20multidomain%20with%20config%20files.html)
* [Generate a multi domains certificate using config files](https://gist.github.com/romainnorberg/464758a6620228b977212a3cf20c3e08)
* [Your OpenSSL CSR command is out of date](https://expeditedsecurity.com/blog/openssl-csr-command/)
* [OpenSSL example configuration file](https://www.tbs-certificats.com/openssl-dem-server-cert.cnf)
* [Object Identifiers (OIDs)](https://www.alvestrand.no/objectid/)
* [openssl objects.txt](https://github.com/openssl/openssl/blob/master/crypto/objects/objects.txt)

**List available EC curves**

```bash
openssl ecparam -list_curves
```

**Print ECDSA private and public keys**

```bash
( _fd="private.key" ; \
openssl ec -in ${_fd} -noout -text )

# For x25519 only extracting public key
( _fd="private.key" ; _fd_pub="public.key" ; \
openssl pkey -in ${_fd} -pubout -out ${_fd_pub} )
```

**Generate ECDSA private key**

```bash
# _curve: prime256v1, secp521r1, secp384r1
( _fd="private.key" ; _curve="prime256v1" ; \
openssl ecparam -out ${_fd} -name ${_curve} -genkey )

# _curve: X25519
( _fd="private.key" ; _curve="x25519" ; \
openssl genpkey -algorithm ${_curve} -out ${_fd} )
```

**Generate private key and CSR (ECC)**

```bash
# _curve: prime256v1, secp521r1, secp384r1
( _fd="domain.com.key" ; _fd_csr="domain.com.csr" ; _curve="prime256v1" ; \
openssl ecparam -out ${_fd} -name ${_curve} -genkey ; \
openssl req -new -key ${_fd} -out ${_fd_csr} -sha256 )
```

**Generate self-signed certificate**

```bash
# _len: 2048, 4096
( _fd="domain.key" ; _fd_out="domain.crt" ; _len="2048" ; _days="365" ; \
openssl req -newkey rsa:${_len} -nodes \
-keyout ${_fd} -x509 -days ${_days} -out ${_fd_out} )
```

**Generate self-signed certificate from existing private key**

```bash
# _len: 2048, 4096
( _fd="domain.key" ; _fd_out="domain.crt" ; _days="365" ; \
openssl req -key ${_fd} -nodes \
-x509 -days ${_days} -out ${_fd_out} )
```

**Generate self-signed certificate from existing private key and csr**

```bash
# _len: 2048, 4096
( _fd="domain.key" ; _fd_csr="domain.csr" ; _fd_out="domain.crt" ; _days="365" ; \
openssl x509 -signkey ${_fd} -nodes \
-in ${_fd_csr} -req -days ${_days} -out ${_fd_out} )
```

**Generate DH public parameters**

```bash
( _dh_size="2048" ; \
openssl dhparam -out /etc/nginx/ssl/dhparam_${_dh_size}.pem "$_dh_size" )
```

**Display DH public parameters**

```bash
openssl pkeyparam -in dhparam.pem -text
```

**Extract private key from pfx**

```bash
( _fd_pfx="cert.pfx" ; _fd_key="key.pem" ; \
openssl pkcs12 -in ${_fd_pfx} -nocerts -nodes -out ${_fd_key} )
```

**Extract private key and certs from pfx**

```bash
( _fd_pfx="cert.pfx" ; _fd_pem="key_certs.pem" ; \
openssl pkcs12 -in ${_fd_pfx} -nodes -out ${_fd_pem} )
```

**Extract certs from p7b**

```bash
# PKCS#7 file doesn't include private keys.
( _fd_p7b="cert.p7b" ; _fd_pem="cert.pem" ; \
openssl pkcs7 -inform DER -outform PEM -in ${_fd_p7b} -print_certs > ${_fd_pem})
# or:
openssl pkcs7 -print_certs -in -in ${_fd_p7b} -out ${_fd_pem})
```

**Convert DER to PEM**

```bash
( _fd_der="cert.crt" ; _fd_pem="cert.pem" ; \
openssl x509 -in ${_fd_der} -inform der -outform pem -out ${_fd_pem} )
```

**Convert PEM to DER**

```bash
( _fd_der="cert.crt" ; _fd_pem="cert.pem" ; \
openssl x509 -in ${_fd_pem} -outform der -out ${_fd_der} )
```

**Verification of the private key**

```bash
( _fd="private.key" ; \
openssl rsa -noout -text -in ${_fd} )
```

**Verification of the public key**

```bash
# 1)
( _fd="public.key" ; \
openssl pkey -noout -text -pubin -in ${_fd} )

# 2)
( _fd="private.key" ; \
openssl rsa -inform PEM -noout -in ${_fd} &> /dev/null ; \
if [ $? = 0 ] ; then echo -en "OK\n" ; fi )
```

**Verification of the certificate**

```bash
( _fd="certificate.crt" ; # format: pem, cer, crt \
openssl x509 -noout -text -in ${_fd} )
```

**Verification of the CSR**

```bash
( _fd_csr="request.csr" ; \
openssl req -text -noout -in ${_fd_csr} )
```

**Check the private key and the certificate are match**

```bash
(openssl rsa -noout -modulus -in private.key | openssl md5 ; \
openssl x509 -noout -modulus -in certificate.crt | openssl md5) | uniq
```

**Check the private key and the CSR are match**

```bash
(openssl rsa -noout -modulus -in private.key | openssl md5 ; \
openssl req -noout -modulus -in request.csr | openssl md5) | uniq
```

***

**Tool:** [**secure-delete**](https://wiki.archlinux.org/index.php/Securely_wipe_disk)

**Secure delete with shred**

```bash
shred -vfuz -n 10 file
shred --verbose --random-source=/dev/urandom -n 1 /dev/sda
```

**Secure delete with scrub**

```bash
scrub -p dod /dev/sda
scrub -p dod -r file
```

**Secure delete with badblocks**

```bash
badblocks -s -w -t random -v /dev/sda
badblocks -c 10240 -s -w -t random -v /dev/sda
```

**Secure delete with secure-delete**

```bash
srm -vz /tmp/file
sfill -vz /local
sdmem -v
swapoff /dev/sda5 && sswap -vz /dev/sda5
```

***

**Tool:** [**dd**](https://en.wikipedia.org/wiki/Dd_\(Unix\))

**Show dd status every so often**

```bash
dd <dd_params> status=progress
watch --interval 5 killall -USR1 dd
```

**Redirect output to a file with dd**

```bash
echo "string" | dd of=filename
```

***

**Tool:** [**gpg**](https://www.gnupg.org/)

**Export public key**

```bash
gpg --export --armor "<username>" > username.pkey
```

* `--export` - export all keys from all keyrings or specific key
* `-a|--armor` - create ASCII armored output

**Encrypt file**

```bash
gpg -e -r "<username>" dump.sql
```

* `-e|--encrypt` - encrypt data
* `-r|--recipient` - encrypt for specific

**Decrypt file**

```bash
gpg -o dump.sql -d dump.sql.gpg
```

* `-o|--output` - use as output file
* `-d|--decrypt` - decrypt data (default)

**Search recipient**

```bash
gpg --keyserver hkp://keyserver.ubuntu.com --search-keys "<username>"
```

* `--keyserver` - set specific key server
* `--search-keys` - search for keys on a key server

**List all of the packets in an encrypted file**

```bash
gpg --batch --list-packets archive.gpg
gpg2 --batch --list-packets archive.gpg
```

***

**Tool:** [**system-other**](https://github.com/trimstray/the-book-of-secret-knowledge#tool-system-other)

**Reboot system from init**

```bash
exec /sbin/init 6
```

**Init system from single user mode**

```bash
exec /sbin/init
```

**Show current working directory of a process**

```bash
readlink -f /proc/<PID>/cwd
```

**Show actual pathname of the executed command**

```bash
readlink -f /proc/<PID>/exe
```

**Tool:** [**curl**](https://curl.haxx.se)

```bash
curl -Iks https://www.google.com
```

* `-I` - show response headers only
* `-k` - insecure connection when using ssl
* `-s` - silent mode (not display body)

```bash
curl -Iks --location -X GET -A "x-agent" https://www.google.com
```

* `--location` - follow redirects
* `-X` - set method
* `-A` - set user-agent

```bash
curl -Iks --location -X GET -A "x-agent" --proxy http://127.0.0.1:16379 https://www.google.com
```

* `--proxy [socks5://|http://]` - set proxy server

```bash
curl -o file.pdf -C - https://example.com/Aiju2goo0Ja2.pdf
```

* `-o` - write output to file
* `-C` - resume the transfer

**Find your external IP address (external services)**

```bash
curl ipinfo.io
curl ipinfo.io/ip
curl icanhazip.com
curl ifconfig.me/ip ; echo
```

**Repeat URL request**

```bash
# URL sequence substitution with a dummy query string:
curl -ks https://example.com/?[1-20]

# With shell 'for' loop:
for i in {1..20} ; do curl -ks https://example.com/ ; done
```

**Check DNS and HTTP trace with headers for specific domains**

```bash
### Set domains and external dns servers.
_domain_list=(google.com) ; _dns_list=("8.8.8.8" "1.1.1.1")

for _domain in "${_domain_list[@]}" ; do

  printf '=%.0s' {1..48}

  echo

  printf "[\\e[1;32m+\\e[m] resolve: %s\\n" "$_domain"

  for _dns in "${_dns_list[@]}" ; do

    # Resolve domain.
    host "${_domain}" "${_dns}"

    echo

  done

  for _proto in http https ; do

    printf "[\\e[1;32m+\\e[m] trace + headers: %s://%s\\n" "$_proto" "$_domain"

    # Get trace and http headers.
    curl -Iks -A "x-agent" --location "${_proto}://${_domain}"

    echo

  done

done

unset _domain_list _dns_list
```

***

**Tool:** [**httpie**](https://httpie.org/)

```bash
http -p Hh https://www.google.com
```

* `-p` - print request and response headers
  * `H` - request headers
  * `B` - request body
  * `h` - response headers
  * `b` - response body

```bash
http -p Hh https://www.google.com --follow --verify no
```

* `-F, --follow` - follow redirects
* `--verify no` - skip SSL verification

```bash
http -p Hh https://www.google.com --follow --verify no \
--proxy http:http://127.0.0.1:16379
```

* `--proxy [http:]` - set proxy server

**Tool:** [**ssh**](https://www.openssh.com/)

**Escape Sequence**

```
# Supported escape sequences:
~.  - terminate connection (and any multiplexed sessions)
~B  - send a BREAK to the remote system
~C  - open a command line
~R  - Request rekey (SSH protocol 2 only)
~^Z - suspend ssh
~#  - list forwarded connections
~&  - background ssh (when waiting for connections to terminate)
~?  - this message
~~  - send the escape character by typing it twice
```

**Compare a remote file with a local file**

```bash
ssh user@host cat /path/to/remotefile | diff /path/to/localfile -
```

**SSH connection through host in the middle**

```bash
ssh -t reachable_host ssh unreachable_host
```

**Run command over SSH on remote host**

```bash
cat > cmd.txt << __EOF__
cat /etc/hosts
__EOF__

ssh host -l user $(<cmd.txt)
```

**Get public key from private key**

```bash
ssh-keygen -y -f ~/.ssh/id_rsa
```

**Get all fingerprints**

```bash
ssh-keygen -l -f .ssh/known_hosts
```

**SSH authentication with user password**

```bash
ssh -o PreferredAuthentications=password -o PubkeyAuthentication=no user@remote_host
```

**SSH authentication with publickey**

```bash
ssh -o PreferredAuthentications=publickey -o PubkeyAuthentication=yes -i id_rsa user@remote_host
```

**Simple recording SSH session**

```bash
function _ssh_sesslog() {

  _sesdir="<path/to/session/logs>"

  mkdir -p "${_sesdir}" && \
  ssh $@ 2>&1 | tee -a "${_sesdir}/$(date +%Y%m%d).log"

}

# Alias:
alias ssh='_ssh_sesslog'
```

**Using Keychain for SSH logins**

```bash
### Delete all of ssh-agent's keys.
function _scl() {

  /usr/bin/keychain --clear

}

### Add key to keychain.
function _scg() {

  /usr/bin/keychain /path/to/private-key
  source "$HOME/.keychain/$HOSTNAME-sh"

}
```

**SSH login without processing any login scripts**

```bash
ssh -tt user@host bash
```

**SSH local port forwarding**

Example 1:

```bash
# Forwarding our local 2250 port to nmap.org:443 from localhost through localhost
host1> ssh -L 2250:nmap.org:443 localhost

# Connect to the service:
host1> curl -Iks --location -X GET https://localhost:2250
```

Example 2:

```bash
# Forwarding our local 9051 port to db.d.x:5432 from localhost through node.d.y
host1> ssh -nNT -L 9051:db.d.x:5432 node.d.y

# Connect to the service:
host1> psql -U db_user -d db_dev -p 9051 -h localhost
```

* `-n` - redirects stdin from `/dev/null`
* `-N` - do not execute a remote command
* `-T` - disable pseudo-terminal allocation

**SSH remote port forwarding**

```bash
# Forwarding our local 9051 port to db.d.x:5432 from host2 through node.d.y
host1> ssh -nNT -R 9051:db.d.x:5432 node.d.y

# Connect to the service:
host2> psql -U postgres -d postgres -p 8000 -h localhost
```

***

**Tool:** [**linux-dev**](https://www.tldp.org/LDP/abs/html/devref1.html)

**Testing remote connection to port**

```bash
timeout 1 bash -c "</dev/<proto>/<host>/<port>" >/dev/null 2>&1 ; echo $?
```

* `<proto` - set protocol (tcp/udp)
* `<host>` - set remote host
* `<port>` - set destination port

**Read and write to TCP or UDP sockets with common bash tools**

```bash
exec 5<>/dev/tcp/<host>/<port>; cat <&5 & cat >&5; exec 5>&-
```

***

**Tool:** [**tcpdump**](http://www.tcpdump.org/)

**Filter incoming (on interface) traffic (specific** [**ip:port**](ip:port)**)**

```bash
tcpdump -ne -i eth0 -Q in host 192.168.252.1 and port 443
```

* `-n` - don't convert addresses (`-nn` will not resolve hostnames or ports)
* `-e` - print the link-level headers
* `-i [iface|any]` - set interface
* `-Q|-D [in|out|inout]` - choose send/receive direction (`-D` - for old tcpdump versions)
* `host [ip|hostname]` - set host, also `[host not]`
* `[and|or]` - set logic
* `port [1-65535]` - set port number, also `[port not]`

**Filter incoming (on interface) traffic (specific** [**ip:port**](ip:port)**) and write to a file**

```bash
tcpdump -ne -i eth0 -Q in host 192.168.252.1 and port 443 -c 5 -w tcpdump.pcap
```

* `-c [num]` - capture only num number of packets
* `-w [filename]` - write packets to file, `-r [filename]` - reading from file

**Capture all ICMP packets**

```bash
tcpdump -nei eth0 icmp
```

**Check protocol used (TCP or UDP) for service**

```bash
tcpdump -nei eth0 tcp port 22 -vv -X | egrep "TCP|UDP"
```

**Display ASCII text (to parse the output using grep or other)**

```bash
tcpdump -i eth0 -A -s0 port 443
```

**Grab everything between two keywords**

```bash
tcpdump -i eth0 port 80 -X | sed -n -e '/username/,/=ldap/ p'
```

**Grab user and pass ever plain http**

```bash
tcpdump -i eth0  port http -l -A | egrep -i \
'pass=|pwd=|log=|login=|user=|username=|pw=|passw=|passwd=|password=|pass:|user:|username:|password:|login:|pass |user ' \
--color=auto --line-buffered -B20
```

**Extract HTTP User Agent from HTTP request header**

```bash
tcpdump -ei eth0 -nn -A -s1500 -l | grep "User-Agent:"
```

**Capture only HTTP GET and POST packets**

```bash
tcpdump -ei eth0 -s 0 -A -vv \
'tcp[((tcp[12:1] & 0xf0) >> 2):4] = 0x47455420' or 'tcp[((tcp[12:1] & 0xf0) >> 2):4] = 0x504f5354'
```

or simply:

```bash
tcpdump -ei eth0 -s 0 -v -n -l | egrep -i "POST /|GET /|Host:"
```

**Rotate capture files**

```bash
tcpdump -ei eth0 -w /tmp/capture-%H.pcap -G 3600 -C 200
```

* `-G <num>` - pcap will be created every `<num>` seconds
* `-C <size>` - close the current pcap and open a new one if is larger than `<size>`

**Top hosts by packets**

```bash
tcpdump -ei enp0s25 -nnn -t -c 200 | cut -f 1,2,3,4 -d '.' | sort | uniq -c | sort -nr | head -n 20
```

**Excludes any RFC 1918 private address**

```bash
tcpdump -nei eth0 'not (src net (10 or 172.16/12 or 192.168/16) and dst net (10 or 172.16/12 or 192.168/16))'
```

***

**Tool:** [**tcpick**](http://tcpick.sourceforge.net/)

**Analyse packets in real-time**

```bash
while true ; do tcpick -a -C -r dump.pcap ; sleep 2 ; clear ; done
```

***

**Tool:** [**ngrep**](http://ngrep.sourceforge.net/usage.html)

```bash
ngrep -d eth0 "www.domain.com" port 443
```

* `-d [iface|any]` - set interface
* `[domain]` - set hostname
* `port [1-65535]` - set port number

```bash
ngrep -d eth0 "www.domain.com" src host 10.240.20.2 and port 443
```

* `(host [ip|hostname])` - filter by ip or hostname
* `(port [1-65535])` - filter by port number

```bash
ngrep -d eth0 -qt -O ngrep.pcap "www.domain.com" port 443
```

* `-q` - quiet mode (only payloads)
* `-t` - added timestamps
* `-O [filename]` - save output to file, `-I [filename]` - reading from file

```bash
ngrep -d eth0 -qt 'HTTP' 'tcp'
```

* `HTTP` - show http headers
* `tcp|udp` - set protocol
* `[src|dst] host [ip|hostname]` - set direction for specific node

```bash
ngrep -l -q -d eth0 -i "User-Agent: curl*"
```

* `-l` - stdout line buffered
* `-i` - case-insensitive search

***

**Tool:** [**hping3**](http://www.hping.org/)

```bash
hping3 -V -p 80 -s 5050 <scan_type> www.google.com
```

* `-V|--verbose` - verbose mode
* `-p|--destport` - set destination port
* `-s|--baseport` - set source port
* `<scan_type>` - set scan type
  * `-F|--fin` - set FIN flag, port open if no reply
  * `-S|--syn` - set SYN flag
  * `-P|--push` - set PUSH flag
  * `-A|--ack` - set ACK flag (use when ping is blocked, RST response back if the port is open)
  * `-U|--urg` - set URG flag
  * `-Y|--ymas` - set Y unused flag (0x80 - nullscan), port open if no reply
  * `-M 0 -UPF` - set TCP sequence number and scan type (URG+PUSH+FIN), port open if no reply

```bash
hping3 -V -c 1 -1 -C 8 www.google.com
```

* `-c [num]` - packet count
* `-1` - set ICMP mode
* `-C|--icmptype [icmp-num]` - set icmp type (default icmp-echo = 8)

```bash
hping3 -V -c 1000000 -d 120 -S -w 64 -p 80 --flood --rand-source <remote_host>
```

* `--flood` - sent packets as fast as possible (don't show replies)
* `--rand-source` - random source address mode
* `-d --data` - data size
* `-w|--win` - winsize (default 64)

***

**Tool:** [**nmap**](https://nmap.org/)

**Ping scans the network**

```bash
nmap -sP 192.168.0.0/24
```

**Show only open ports**

```bash
nmap -F --open 192.168.0.0/24
```

**Full TCP port scan using with service version detection**

```bash
nmap -p 1-65535 -sV -sS -T4 192.168.0.0/24
```

**Nmap scan and pass output to Nikto**

```bash
nmap -p80,443 192.168.0.0/24 -oG - | nikto.pl -h -
```

**Recon specific ip:service with Nmap NSE scripts stack**

```bash
# Set variables:
_hosts="192.168.250.10"
_ports="80,443"

# Set Nmap NSE scripts stack:
_nmap_nse_scripts="+dns-brute,\
                   +http-auth-finder,\
                   +http-chrono,\
                   +http-cookie-flags,\
                   +http-cors,\
                   +http-cross-domain-policy,\
                   +http-csrf,\
                   +http-dombased-xss,\
                   +http-enum,\
                   +http-errors,\
                   +http-git,\
                   +http-grep,\
                   +http-internal-ip-disclosure,\
                   +http-jsonp-detection,\
                   +http-malware-host,\
                   +http-methods,\
                   +http-passwd,\
                   +http-phpself-xss,\
                   +http-php-version,\
                   +http-robots.txt,\
                   +http-sitemap-generator,\
                   +http-shellshock,\
                   +http-stored-xss,\
                   +http-title,\
                   +http-unsafe-output-escaping,\
                   +http-useragent-tester,\
                   +http-vhosts,\
                   +http-waf-detect,\
                   +http-waf-fingerprint,\
                   +http-xssed,\
                   +traceroute-geolocation.nse,\
                   +ssl-enum-ciphers,\
                   +whois-domain,\
                   +whois-ip"

# Set Nmap NSE script params:
_nmap_nse_scripts_args="dns-brute.domain=${_hosts},http-cross-domain-policy.domain-lookup=true,"
_nmap_nse_scripts_args+="http-waf-detect.aggro,http-waf-detect.detectBodyChanges,"
_nmap_nse_scripts_args+="http-waf-fingerprint.intensive=1"

# Perform scan:
nmap --script="$_nmap_nse_scripts" --script-args="$_nmap_nse_scripts_args" -p "$_ports" "$_hosts"
```

***

**Tool:** [**netcat**](http://netcat.sourceforge.net/)

```bash
nc -kl 5000
```

* `-l` - listen for an incoming connection
* `-k` - listening after client has disconnected
* `>filename.out` - save receive data to file (optional)

```bash
nc 192.168.0.1 5051 < filename.in
```

* `< filename.in` - send data to remote host

```bash
nc -vz 10.240.30.3 5000
```

* `-v` - verbose output
* `-z` - scan for listening daemons

```bash
nc -vzu 10.240.30.3 1-65535
```

* `-u` - scan only udp ports

**Transfer data file (archive)**

```bash
server> nc -l 5000 | tar xzvfp -
client> tar czvfp - /path/to/dir | nc 10.240.30.3 5000
```

**Launch remote shell**

```bash
# 1)
server> nc -l 5000 -e /bin/bash
client> nc 10.240.30.3 5000

# 2)
server> rm -f /tmp/f; mkfifo /tmp/f
server> cat /tmp/f | /bin/bash -i 2>&1 | nc -l 127.0.0.1 5000 > /tmp/f
client> nc 10.240.30.3 5000
```

**Simple file server**

```bash
while true ; do nc -l 5000 | tar -xvf - ; done
```

**Simple minimal HTTP Server**

```bash
while true ; do nc -l -p 1500 -c 'echo -e "HTTP/1.1 200 OK\n\n $(date)"' ; done
```

**Simple HTTP Server**

> Restarts web server after each request - remove `while` condition for only single connection.

```bash
cat > index.html << __EOF__
<!doctype html>
    <head>
        <meta charset="utf-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
        <title></title>
        <meta name="description" content="">
        <meta name="viewport" content="width=device-width, initial-scale=1">
    </head>
    <body>

    <p>

      Hello! It's a site.

    </p>

    </body>
</html>
__EOF__
```

```bash
server> while : ; do \
(echo -ne "HTTP/1.1 200 OK\r\nContent-Length: $(wc -c <index.html)\r\n\r\n" ; cat index.html;) | \
nc -l -p 5000 \
; done
```

* `-p` - port number

**Simple HTTP Proxy (single connection)**

```bash
#!/usr/bin/env bash

if [[ $# != 2 ]] ; then
  printf "%s\\n" \
         "usage: ./nc-proxy listen-port bk_host:bk_port"
fi

_listen_port="$1"
_bk_host=$(echo "$2" | cut -d ":" -f1)
_bk_port=$(echo "$2" | cut -d ":" -f2)

printf "  lport: %s\\nbk_host: %s\\nbk_port: %s\\n\\n" \
       "$_listen_port" "$_bk_host" "$_bk_port"

_tmp=$(mktemp -d)
_back="$_tmp/pipe.back"
_sent="$_tmp/pipe.sent"
_recv="$_tmp/pipe.recv"

trap 'rm -rf "$_tmp"' EXIT

mkfifo -m 0600 "$_back" "$_sent" "$_recv"

sed "s/^/=> /" <"$_sent" &
sed "s/^/<=  /" <"$_recv" &

nc -l -p "$_listen_port" <"$_back" | \
tee "$_sent" | \
nc "$_bk_host" "$_bk_port" | \
tee "$_recv" >"$_back"
```

```bash
server> chmod +x nc-proxy && ./nc-proxy 8080 192.168.252.10:8000
  lport: 8080
bk_host: 192.168.252.10
bk_port: 8000

client> http -p h 10.240.30.3:8080
HTTP/1.1 200 OK
Accept-Ranges: bytes
Cache-Control: max-age=31536000
Content-Length: 2748
Content-Type: text/html; charset=utf-8
Date: Sun, 01 Jul 2018 20:12:08 GMT
Last-Modified: Sun, 01 Apr 2018 21:53:37 GMT
```

**Create a single-use TCP or UDP proxy**

```bash
### TCP -> TCP
nc -l -p 2000 -c "nc [ip|hostname] 3000"

### TCP -> UDP
nc -l -p 2000 -c "nc -u [ip|hostname] 3000"

### UDP -> UDP
nc -l -u -p 2000 -c "nc -u [ip|hostname] 3000"

### UDP -> TCP
nc -l -u -p 2000 -c "nc [ip|hostname] 3000"
```

***

**Tool:** [**gnutls-cli**](https://gnutls.org/manual/html_node/gnutls_002dcli-Invocation.html)

**Testing connection to remote host (with SNI support)**

```bash
gnutls-cli -p 443 google.com
```

**Testing connection to remote host (without SNI support)**

```bash
gnutls-cli --disable-sni -p 443 google.com
```

***

**Tool:** [**socat**](http://www.dest-unreach.org/socat/doc/socat.html)

**Testing remote connection to port**

```bash
socat - TCP4:10.240.30.3:22
```

* `-` - standard input (STDIO)
* `TCP4:<params>` - set tcp4 connection with specific params
  * `[hostname|ip]` - set hostname/ip
  * `[1-65535]` - set port number

**Redirecting TCP-traffic to a UNIX domain socket under Linux**

```bash
socat TCP-LISTEN:1234,bind=127.0.0.1,reuseaddr,fork,su=nobody,range=127.0.0.0/8 UNIX-CLIENT:/tmp/foo
```

* `TCP-LISTEN:<params>` - set tcp listen with specific params
  * `[1-65535]` - set port number
  * `bind=[hostname|ip]` - set bind hostname/ip
  * `reuseaddr` - allows other sockets to bind to an address
  * `fork` - keeps the parent process attempting to produce more connections
  * `su=nobody` - set user
  * `range=[ip-range]` - ip range
* `UNIX-CLIENT:<params>` - communicates with the specified peer socket
  * `filename` - define socket

***

**Tool:** [**p0f**](http://lcamtuf.coredump.cx/p0f3/)

**Set iface in promiscuous mode and dump traffic to the log file**

```bash
p0f -i enp0s25 -p -d -o /dump/enp0s25.log
```

* `-i` - listen on the specified interface
* `-p` - set interface in promiscuous mode
* `-d` - fork into background
* `-o` - output file

***

**Tool:** [**netstat**](https://en.wikipedia.org/wiki/Netstat)

**Graph # of connections for each hosts**

```bash
netstat -an | awk '/ESTABLISHED/ { split($5,ip,":"); if (ip[1] !~ /^$/) print ip[1] }' | \
sort | uniq -c | awk '{ printf("%s\t%s\t",$2,$1) ; for (i = 0; i < $1; i++) {printf("*")}; print "" }'
```

**Monitor open connections for specific port including listen, count and sort it per IP**

```bash
watch "netstat -plan | grep :443 | awk {'print \$5'} | cut -d: -f 1 | sort | uniq -c | sort -nk 1"
```

**Grab banners from local IPv4 listening ports**

```bash
netstat -nlt | grep 'tcp ' | grep -Eo "[1-9][0-9]*" | xargs -I {} sh -c "echo "" | nc -v -n -w1 127.0.0.1 {}"
```

***

**Tool:** [**rsync**](https://en.wikipedia.org/wiki/Rsync)

**Rsync remote data as root using sudo**

```bash
rsync --rsync-path 'sudo rsync' username@hostname:/path/to/dir/ /local/
```

***

**Tool:** [**host**](https://en.wikipedia.org/wiki/Host_\(Unix\))

**Resolves the domain name (using external dns server)**

```bash
host google.com 9.9.9.9
```

**Checks the domain administrator (SOA record)**

```bash
host -t soa google.com 9.9.9.9
```

***

**Tool:** [**dig**](https://en.wikipedia.org/wiki/Dig_\(command\))

**Resolves the domain name (short output)**

```bash
dig google.com +short
```

**Lookup NS record for specific domain**

```bash
dig @9.9.9.9 google.com NS
```

**Query only answer section**

```bash
dig google.com +nocomments +noquestion +noauthority +noadditional +nostats
```

**Query ALL DNS Records**

```bash
dig google.com ANY +noall +answer
```

**DNS Reverse Look-up**

```bash
dig -x 172.217.16.14 +short
```

***

**Tool:** [**certbot**](https://certbot.eff.org/)

**Generate multidomain certificate**

```bash
certbot certonly -d example.com -d www.example.com
```

**Generate wildcard certificate**

```bash
certbot certonly --manual --preferred-challenges=dns -d example.com -d *.example.com
```

**Generate certificate with 4096 bit private key**

```bash
certbot certonly -d example.com -d www.example.com --rsa-key-size 4096
```

***

**Tool:** [**network-other**](https://github.com/trimstray/the-book-of-secret-knowledge#tool-network-other)

**Get all subnets for specific AS (Autonomous system)**

```bash
AS="AS32934"
whois -h whois.radb.net -- "-i origin ${AS}" | \
grep "^route:" | \
cut -d ":" -f2 | \
sed -e 's/^[ \t]//' | \
sort -n -t . -k 1,1 -k 2,2 -k 3,3 -k 4,4 | \
cut -d ":" -f2 | \
sed -e 's/^[ \t]/allow /' | \
sed 's/$/;/' | \
sed 's/allow  */subnet -> /g'
```

**Resolves domain name from dns.google.com with curl and jq**

```bash
_dname="google.com" ; curl -s "https://dns.google.com/resolve?name=${_dname}&type=A" | jq .
```

**Tool:** [**git**](https://git-scm.com/)

**Log alias for a decent view of your repo**

```bash
# 1)
git log --oneline --decorate --graph --all

# 2)
git log --graph \
--pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' \
--abbrev-commit
```

***

**Tool:** [**python**](https://www.python.org/)

**Static HTTP web server**

```bash
# Python 3.x
python3 -m http.server 8000 --bind 127.0.0.1

# Python 2.x
python -m SimpleHTTPServer 8000
```

**Static HTTP web server with SSL support**

```bash
# Python 3.x
from http.server import HTTPServer, BaseHTTPRequestHandler
import ssl

httpd = HTTPServer(('localhost', 4443), BaseHTTPRequestHandler)

httpd.socket = ssl.wrap_socket (httpd.socket,
        keyfile="path/to/key.pem",
        certfile='path/to/cert.pem', server_side=True)

httpd.serve_forever()

# Python 2.x
import BaseHTTPServer, SimpleHTTPServer
import ssl

httpd = BaseHTTPServer.HTTPServer(('localhost', 4443),
        SimpleHTTPServer.SimpleHTTPRequestHandler)

httpd.socket = ssl.wrap_socket (httpd.socket,
        keyfile="path/tp/key.pem",
        certfile='path/to/cert.pem', server_side=True)

httpd.serve_forever()
```

**Encode base64**

```bash
python -m base64 -e <<< "sample string"
```

**Decode base64**

```bash
python -m base64 -d <<< "dGhpcyBpcyBlbmNvZGVkCg=="
```

**Tool:** [**awk**](http://www.grymoire.com/Unix/Awk.html)

**Search for matching lines**

```bash
# egrep foo
awk '/foo/' filename
```

**Search non matching lines**

```bash
# egrep -v foo
awk '!/foo/' filename
```

**Print matching lines with numbers**

```bash
# egrep -n foo
awk '/foo/{print FNR,$0}' filename
```

**Print the last column**

```bash
awk '{print $NF}' filename
```

**Find all the lines longer than 80 characters**

```bash
awk 'length($0)>80{print FNR,$0}' filename
```

**Print only lines of less than 80 characters**

```bash
awk 'length < 80' filename
```

**Print double new lines a file**

```bash
awk '1; { print "" }' filename
```

**Print line numbers**

```bash
awk '{ print FNR "\t" $0 }' filename
awk '{ printf("%5d : %s\n", NR, $0) }' filename   # in a fancy manner
```

**Print line numbers for only non-blank lines**

```bash
awk 'NF { $0=++a " :" $0 }; { print }' filename
```

**Print the line and the next two (i=5) lines after the line matching regexp**

```bash
awk '/foo/{i=5+1;}{if(i){i--; print;}}' filename
```

**Print the lines starting at the line matching 'server {' until the line matching '}'**

```bash
awk '/server {/,/}/' filename
```

**Print multiple columns with separators**

```bash
awk -F' ' '{print "ip:\t" $2 "\n port:\t" $3' filename
```

**Remove empty lines**

```bash
awk 'NF > 0' filename

# alternative:
awk NF filename
```

**Delete trailing white space (spaces, tabs)**

```bash
awk '{sub(/[ \t]*$/, "");print}' filename
```

**Delete leading white space**

```bash
awk '{sub(/^[ \t]+/, ""); print}' filename
```

**Remove duplicate consecutive lines**

```bash
# uniq
awk 'a !~ $0{print}; {a=$0}' filename
```

**Remove duplicate entries in a file without sorting**

```bash
awk '!x[$0]++' filename
```

**Exclude multiple columns**

```bash
awk '{$1=$3=""}1' filename
```

**Substitute foo for bar on lines matching regexp**

```bash
awk '/regexp/{gsub(/foo/, "bar")};{print}' filename
```

**Add some characters at the beginning of matching lines**

```bash
awk '/regexp/{sub(/^/, "++++"); print;next;}{print}' filename
```

**Get the last hour of Apache logs**

```bash
awk '/'$(date -d "1 hours ago" "+%d\\/%b\\/%Y:%H:%M")'/,/'$(date "+%d\\/%b\\/%Y:%H:%M")'/ { print $0 }' \
/var/log/httpd/access_log
```

***

**Tool:** [**sed**](http://www.grymoire.com/Unix/Sed.html)

**Print a specific line from a file**

```bash
sed -n 10p /path/to/file
```

**Remove a specific line from a file**

```bash
sed -i 10d /path/to/file
# alternative (BSD): sed -i'' 10d /path/to/file
```

**Remove a range of lines from a file**

```bash
sed -i <file> -re '<start>,<end>d'
```

**Replace newline(s) with a space**

```bash
sed ':a;N;$!ba;s/\n/ /g' /path/to/file

# cross-platform compatible syntax:
sed -e ':a' -e 'N' -e '$!ba' -e 's/\n/ /g' /path/to/file
```

* `:a` create a label `a`
* `N` append the next line to the pattern space
* `$!` if not the last line, ba branch (go to) label `a`
* `s` substitute, `/\n/` regex for new line, `/ /` by a space, `/g` global match (as many times as it can)

Alternatives:

```bash
# perl version (sed-like speed):
perl -p -e 's/\n/ /' /path/to/file

# bash version (slow):
while read line ; do printf "%s" "$line " ; done < file
```

**Delete string +N next lines**

```bash
sed '/start/,+4d' /path/to/file
```

***

**Tool:** [**grep**](http://www.grymoire.com/Unix/Grep.html)

**Search for a "pattern" inside all files in the current directory**

```bash
grep -rn "pattern"
grep -RnisI "pattern" *
fgrep "pattern" * -R
```

**Show only for multiple patterns**

```bash
grep 'INFO*'\''WARN' filename
grep 'INFO\|WARN' filename
grep -e INFO -e WARN filename
grep -E '(INFO|WARN)' filename
egrep "INFO|WARN" filename
```

**Except multiple patterns**

```bash
grep -vE '(error|critical|warning)' filename
```

**Show data from file without comments**

```bash
grep -v ^[[:space:]]*# filename
```

**Show data from file without comments and new lines**

```bash
egrep -v '#|^$' filename
```

**Show strings with a dash/hyphen**

```bash
grep -e -- filename
grep -- -- filename
grep "\-\-" filename
```

**Remove blank lines from a file and save output to new file**

```bash
grep . filename > newfilename
```

**Tool:** [**perl**](https://www.perl.org/)

**Search and replace (in place)**

```bash
perl -i -pe's/SEARCH/REPLACE/' filename
```

**Edit of `*.conf` files changing all foo to bar (and backup original)**

```bash
perl -p -i.orig -e 's/\bfoo\b/bar/g' *.conf
```

**Prints the first 20 lines from `*.conf` files**

```bash
perl -pe 'exit if $. > 20' *.conf
```

**Search lines 10 to 20**

```bash
perl -ne 'print if 10 .. 20' filename
```

**Delete first 10 lines (and backup original)**

```bash
perl -i.orig -ne 'print unless 1 .. 10' filename
```

**Delete all but lines between foo and bar (and backup original)**

```bash
perl -i.orig -ne 'print unless /^foo$/ .. /^bar$/' filename
```

**Reduce multiple blank lines to a single line**

```bash
perl -p -i -00pe0 filename
```

**Convert tabs to spaces (1t = 2sp)**

```bash
perl -p -i -e 's/\t/  /g' filename
```

**Read input from a file and report number of lines and characters**

```bash
perl -lne '$i++; $in += length($_); END { print "$i lines, $in characters"; }' filename
```

**Shell functions  \[TOC]**

**Table of Contents**

* Domain resolve
* Get ASN

**Domain resolve**

```bash
# Dependencies:
#   - curl
#   - jq

function DomainResolve() {

  local _host="$1"

  local _curl_base="curl --request GET"
  local _timeout="15"

  _host_ip=$($_curl_base -ks -m "$_timeout" "https://dns.google.com/resolve?name=${_host}&type=A" | \
  jq '.Answer[0].data' | tr -d "\"" 2>/dev/null)

  if [[ -z "$_host_ip" ]] || [[ "$_host_ip" == "null" ]] ; then

    echo -en "Unsuccessful domain name resolution.\\n"

  else

    echo -en "$_host > $_host_ip\\n"

  fi

}
```

Example:

```bash
shell> DomainResolve nmap.org
nmap.org > 45.33.49.119

shell> DomainResolve nmap.org
Unsuccessful domain name resolution.
```

**Get ASN**

```bash
# Dependencies:
#   - curl

function GetASN() {

  local _ip="$1"

  local _curl_base="curl --request GET"
  local _timeout="15"

  _asn=$($_curl_base -ks -m "$_timeout" "http://ip-api.com/line/${_ip}?fields=as")

  _state=$(echo $?)

  if [[ -z "$_ip" ]] || [[ "$_ip" == "null" ]] || [[ "$_state" -ne 0 ]]; then

    echo -en "Unsuccessful ASN gathering.\\n"

  else

    echo -en "$_ip > $_asn\\n"

  fi

}
```

Example:

```bash
shell> GetASN 1.1.1.1
1.1.1.1 > AS13335 Cloudflare, Inc.

shell> GetASN 0.0.0.0
Unsuccessful ASN gathering.
```
