Thread LWP::UserAgent - URL-Splitting löst Boterkennung aus? (7 answers)
Opened by whatever_u_want at 2020-09-16 14:04

guest whatever_u_want
 2020-09-16 23:24
#192511 #192511
Ich habe jetzt noch mal eine Weile dran ohne Erfolg rumdebuggt. Wer's selbst ausprobieren möchte, der kann das hier gepostete Script verwenden; www.cloudflare.com scheint genau das von mir beobachtete Verhalten zu reproduzieren. Um den Proxy nutzen zu können, started man am Besten den Tor Browser und setzt den Port im Script entweder auf 9050 oder 9150 (je nachdem, wo der Service seinen Port öffnet). Mit der Proxy-Zeile bekommt man 403 Forbidden, ohne sie normale 200. Wenn man aber www.cloudflare.com im geöffneten Tor Browser öffnet, erscheint die Seite ohne Fehlermeldung.

Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#!/usr/bin/perl
use strict;
use warnings;
use LWP::UserAgent;
use LWP::Protocol::socks;

my $line = '='x80 . "\n";
my $ua = LWP::UserAgent->new(ssl_opts => {verify_hostname => 1});
$ua->timeout(60);
$ua->proxy(['http','https'],'socks://127.0.0.1:9150/');
$ua->default_header('User-Agent'                => 'Mozilla/5.0 (Windows NT 10.0; rv:68.0) Gecko/20100101 Firefox/68.0');
$ua->default_header('Accept'                    => 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8');
$ua->default_header('Accept-Encoding'           => 'gzip, deflate');
$ua->default_header('Accept-Language'           => 'en-US,en;q=0.5');
$ua->default_header('Connection'                => 'keep-alive');
$ua->default_header('Upgrade-Insecure-Requests' => '1');
$ua->default_header('Cache-Control'             => 'no-cache');
$ua->default_header('Pragma'                    => 'no-cache');

$ua->add_handler( "request_send",  sub {print $line;shift->dump; return } );
$ua->add_handler( "response_done", sub {print $line;shift->dump; return } );

my $response = $ua->get('https://www.cloudflare.com');
$response->{_content} = $response->decoded_content;

print $line;
print $response->{_request}->as_string,"\n\n";
print $line;
print $response->as_string,"\n\n";

Last edited: 2020-09-17 07:23:05 +0200 (CEST)

View full thread LWP::UserAgent - URL-Splitting löst Boterkennung aus?