keybase / keybase/keybase-issues

verifying website or domain ownership issues HTTP GET without User-Agent header

Open
#2,356 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
No language data
Stars
899
Forks
40
PR merge metrics
No merged PRs in 30d

Description

Keybase should always specify a `User-Agent` header when making HTTP requests.

Keybase issued the following HTTP request to my web site when I attempted to verify ownership of my domain:

```
GET / HTTP/1.1
host: skepticism.us
Connection: close
```

The lack of a `User-Agent` header caused my firewall to blackhole the source IP address. Which caused the subsequent `GET /keybase.txt HTTP/1.1`, which did include a `User-Agent: keybase-proofs/2.0.48` header, to be rejected. I do this because a legitimate request should always include a user-agent while a lot of malware requests do omit it. Yes, it's a very simplistic rule but it almost never results in a false positive and does catch attacks my other rules might not catch.

Contributor guide

No contributing guide indexed for this repository

Research direction

Locate the code that performs the initial HTTP GET during website or domain ownership verification, then compare it with the subsequent request to /keybase.txt described in the issue. Done means both requests include a User-Agent header and verification works for sites that reject requests without one.

Written by the indexing model from the issue text.

Assessment

Domain
networking
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.