security: agent browser pages can still reach local addresses through public names that resolve to them
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 35/100
- Issue type
- Bug
- Clarity
- Mostly clear
- Activity status
- Active
- Tech stack
- electron, typescript
Research direction
Start with BrowserService.allowsRequest, which filters by hostname and literal address only, and with tools/net_proxy.ts, the existing filtering proxy the issue wants the agent session routed through via session.setProxy. The fix must check the resolved address, either in the proxy policy or by cancelling on details.ip in webRequest.onResponseStarted. Done means a test with a resolver stub, where a public-looking name resolves to a local server, shows that the server receives no request.
Written by the indexing model from the issue text.
Description
Follow-up to #235.
Problem
The agent browser's request filter (BrowserService.allowsRequest) refuses requests from a public page to local hostnames and address literals. It does not see what a name resolves to: a public name that resolves to 127.0.0.1, a LAN address or 169.254.169.254 (a DNS rebinding service, or an attacker's own DNS) still reaches the local service from a frame or fetch, and a screenshot or console output can pass it on.
Fix
Route the agent session through the existing filtering proxy (tools/net_proxy.ts, via session.setProxy) with a policy that allows public destinations and refuses local ones after resolving, or cancel on the resolved details.ip (webRequest.onResponseStarted) and stop the page.
Test
A page on a public-looking test host (resolver stub) frames a name that resolves to a local server; the server gets no request.
- Dominant language
- TypeScript
- Stars
- 2
- Forks
- 2
- Avg merge
- 8h 28m
- Merged PRs (30d)
- 26
Getting set up
- No Dockerfile or Docker Compose file
- No pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from PierrunoYT/patch
-
enhancement priority: low severity: low
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
PierrunoYT/patch#305 ·
Maintainers usually reply within 1 day
-
security: isAppPageUrl checks devRendererUrl with startsWith instead of comparing parsed URL originsOpenpriority: low security severity: low
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
PierrunoYT/patch#300 ·
Maintainers usually reply within 1 day
-
Claude Code chats: tool calls made inside Claude Code subagents leave cards that end as "(stopped)"Openbug priority: low severity: low
Difficulty 2/5 1-3 hours Newbie friendliness 83/100
PierrunoYT/patch#289 ·
Maintainers usually reply within 1 day
-
bug priority: medium severity: low
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
PierrunoYT/patch#285 ·
Maintainers usually reply within 1 day
-
priority: medium security severity: low
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
PierrunoYT/patch#283 ·
Maintainers usually reply within 1 day
All issues in PierrunoYT/patch
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
paperclipai/paperclip#16785 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
code-yeongyu/senpi#3661 ·
Maintainers usually reply within 1 day
-
community first-timers-only good first issue hacktoberfest help wanted low hanging fruit up-for-grabs
Difficulty 1/5 Under an hour Newbie friendliness 78/100
lingdojo/kana-dojo#32731 · 1 comment · 5 reactions ·
Maintainers usually reply within 1 day
-
bug status: needs triage
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
mastra-ai/mastra#27538 · 1 comment ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
Yeachan-Heo/oh-my-codex#3822 ·
Maintainers usually reply within 1 day