Skip to content

httprobe is missing valid HTTP services #66

@MMquant

Description

@MMquant

httprobe doesn't discover live valid HTTP services.

It doesn't output HTTP services which return

curl: (56) OpenSSL SSL_read: Connection reset by peer, errno 104

Consider following curl request

$ curl -kiv https://xxx.xxx.xxx.xxx:443
*   Trying xxx.xxx.xxx.xxx:443...
* Connected to xxx.xxx.xxx.xxx (xxx.xxx.xxx.xxx) port 443 (#0)
...
...
* SSL connection using TLSv1.3 / TLS_AES_128_GCM_SHA256
...
...
> GET / HTTP/1.1
> Host: xxx.xxx.xxx.xxx
> User-Agent: curl/7.81.0
> Accept: */*
> 
* OpenSSL SSL_read: Connection reset by peer, errno 104
* Closing connection 0
* TLSv1.2 (OUT), TLS header, Supplemental data (23):
curl: (56) OpenSSL SSL_read: Connection reset by peer, errno 104

This is live valid HTTP service and actual behaviour of F5 reverse proxies.

The F5 returns a 200 if a valid existing virtual host is passed in the request

$ curl -kiv https://xxx.xxx.xxx.xxx -H 'Host: int-account.xxx.com'
*   Trying xxx.xxx.xxx.xxx:443...
* Connected to xxx.xxx.xxx.xxx (xxx.xxx.xxx.xxx) port 443 (#0)
...
...
* SSL connection using TLSv1.3 / TLS_AES_128_GCM_SHA256
...
...
> GET / HTTP/1.1
> Host: int-account.xxx.com
> User-Agent: curl/7.81.0
> Accept: */*
> 
* TLSv1.2 (IN), TLS header, Supplemental data (23):
* Mark bundle as not supporting multiuse
< HTTP/1.1 200 OK
HTTP/1.1 200 OK
< Date: Tue, 31 Oct 2023 08:14:41 GMT
Date: Tue, 31 Oct 2023 08:14:41 GMT
...
...
...

If I httprobe the xxx.xxx.xxx.xxx:443 the service it's not marked as a valid live HTTP service

$ echo 'xxx.xxx.xxx.xxx:443' | httprobe 
$

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions