Repository navigation
Remove the hawk icon; add Recon and Vuln Scan tabs - #6
Merged
Merged
Conversation
Back to plain text title. The icon wasn't landing visually after two rounds of iteration. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01SkupxCaLk9Nnq24YhigdAn
Adds a sixth ZeitHawk tab for domain/IP reconnaissance: - DNS records (A/AAAA/MX/TXT/NS/CNAME/SOA) via DNS-over-HTTPS (dns.google) for domains, reverse DNS (PTR) for IPv4 targets - WHOIS/RDAP lookup via rdap.org's bootstrap redirector, with a parsed summary (registrar, status, key dates, name servers) plus the raw response in a collapsible details block - HTTP reachability check across a handful of common web ports (80/443/8080/8443/8000/3000) — explicitly not a full port scan True ICMP ping, traceroute, and a real port scan need raw sockets no browser exposes, so instead of faking them, Recon generates ready-to-copy ping/traceroute/whois/nmap commands for the user's own terminal. See the new README section for why each of these is a hard technical wall, not a missing feature. Verified with Playwright: all sections render and degrade gracefully when the network calls fail (this sandbox's own proxy blocks dns.google/ rdap.org/arbitrary outbound hosts, so live results need testing in an unrestricted browser). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01SkupxCaLk9Nnq24YhigdAn
Checks for common security headers, flags permissive+credentialed CORS, and probes commonly-exposed sensitive paths (.env, .git/, backup files, etc). Header checks use a three-state model (Present / Not readable cross-origin) rather than a binary Present/Missing, since browsers only expose a small CORS-safelisted set of response headers to cross-origin JS — a header absent from that read is unproven, not confirmed missing. Falls back to a body-embedded <meta> CSP tag and a curl command for ground truth on anything not readable via fetch(). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01SkupxCaLk9Nnq24YhigdAn
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
.title-row/.hawk-iconCSS from the header — back to plain text titledns.google) for domains; reverse DNS (PTR) for IPv4 targetsrdap.org's bootstrap redirector, with a parsed summary (registrar, status, key dates, name servers) plus the raw response in a collapsible blockping/traceroute/whois/nmapcommands, since true ICMP ping, traceroute, and a real port scan need raw sockets no browser exposes.env,.git/HEAD,.git/config,wp-config.php.bak,id_rsa, backup files,phpinfo.php,server-status,.htaccess,.DS_Store,security.txt)<meta>CSP tag when present, and always offers acurlcommand for ground truth.tools/zeithawk/README.mdwith entries and "limits" sections for both new toolsTest plan
Access-Control-Expose-Headersbehavior (Playwright route mocking) — confirmed exposed headers report "Present", non-exposed headers correctly report "Not readable cross-origin" rather than a false "Missing", and exposed-path detection (200/401/403) works as intendedexample.comand a real domain you control, in a normal browser🤖 Generated with Claude Code
https://claude.ai/code/session_01SkupxCaLk9Nnq24YhigdAn