[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
Re: [tor-bugs] #20006 [Core Tor/Tor]: HSFETCH fails for hidden services which use client authentication
#20006: HSFETCH fails for hidden services which use client authentication
--------------------------+------------------------------------
Reporter: segfault | Owner:
Type: defect | Status: new
Priority: Medium | Milestone:
Component: Core Tor/Tor | Version: Tor: 0.2.9.2-alpha
Severity: Normal | Resolution:
Keywords: | Actual Points:
Parent ID: | Points:
Reviewer: | Sponsor:
--------------------------+------------------------------------
Description changed by segfault:
Old description:
> When using HSFETCH with a hidden service which uses client
> authentication, it does not return the descriptor.
>
> Example:
>
> {{{
> echo "AUTHENTICATE
> HSFETCH prkszpeygn2a3kxo | nc -U /var/run/tor/control
> }}}
>
> Output:
>
> {{{
> 650 OK
> 650 HS_DESC REQUESTED prkszpeygn2a3kxo NO_AUTH
> $4D596DB0B8214621D60183B6CBF73DF67B0A97CD~CrashM
> jvdlgb7c3xkihcww5fypqnbkuv5dfima
> 650 HS_DESC FAILED prkszpeygn2a3kxo NO_AUTH
> $4D596DB0B8214621D60183B6CBF73DF67B0A97CD~CrashM
> rhdhss3jibwpmennesop3sops3mr42du REASON=BAD_DESC
> 650+HS_DESC_CONTENT prkszpeygn2a3kxo jvdlgb7c3xkihcww5fypqnbkuv5dfima
> $4D596DB0B8214621D60183B6CBF73DF67B0A97CD~CrashM
> }}}
>
> log:
>
> {{{Aug 27 13:29:45.000 [warn] Failed to parse introduction points. Either
> the service has published a corrupt descriptor or you have provided
> invalid authorization data.
> Aug 27 13:29:45.000 [warn] Fetching v2 rendezvous descriptor failed.
> Retrying at another directory.}}}
>
> I took a quick look at the code and it seems like HSFETCH simply assumes
> no authentication is used:
>
> {{{
> rend_query = rend_data_client_create(hsaddress, desc_id, NULL,
> REND_NO_AUTH);
> }}}
>
> https://gitweb.torproject.org/tor.git/tree/src/or/control.c#n4095
New description:
When using HSFETCH with a hidden service which uses client authentication,
it does not return the descriptor.
Example:
{{{
echo "AUTHENTICATE
HSFETCH prkszpeygn2a3kxo | nc -U /var/run/tor/control
}}}
Output:
{{{
650 OK
650 HS_DESC REQUESTED prkszpeygn2a3kxo NO_AUTH
$4D596DB0B8214621D60183B6CBF73DF67B0A97CD~CrashM
jvdlgb7c3xkihcww5fypqnbkuv5dfima
650 HS_DESC FAILED prkszpeygn2a3kxo NO_AUTH
$4D596DB0B8214621D60183B6CBF73DF67B0A97CD~CrashM
rhdhss3jibwpmennesop3sops3mr42du REASON=BAD_DESC
650+HS_DESC_CONTENT prkszpeygn2a3kxo jvdlgb7c3xkihcww5fypqnbkuv5dfima
$4D596DB0B8214621D60183B6CBF73DF67B0A97CD~CrashM
}}}
log:
{{{
Aug 27 13:29:45.000 [warn] Failed to parse introduction points. Either the
service has published a corrupt descriptor or you have provided invalid
authorization data.
Aug 27 13:29:45.000 [warn] Fetching v2 rendezvous descriptor failed.
Retrying at another directory.
}}}
I took a quick look at the code and it seems like HSFETCH simply assumes
no authentication is used:
{{{
rend_query = rend_data_client_create(hsaddress, desc_id, NULL,
REND_NO_AUTH);
}}}
https://gitweb.torproject.org/tor.git/tree/src/or/control.c#n4095
--
--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/20006#comment:1>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online
_______________________________________________
tor-bugs mailing list
tor-bugs@xxxxxxxxxxxxxxxxxxxx
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-bugs