Как передать fuzz-логику в заголовок http для perl? - PullRequest
0 голосов
/ 15 июня 2019

Я хочу узнать параметры http, используя perl, как это сделать, просмотрите мой субкод.

Я пробовал метод с использованием head, но получаю ошибку.

Код отстроки от 620 до 624.

sub print_fuzz_methods( ) {
my $ua = LWP::UserAgent->new;
$ua->agent("Mozilla/5.0 (Windows NT 6.1; WOW64; rv:31.0) Gecko/20130401 Firefox/31.0.");
print color("BOLD RED"), "\n\n                              my $res = $ua->head( $url );
my $response = $browser->get(
  '$url',
  'Referer' =>  "<SCRIPT>alert('document.domain='+document.domain)</SCRIPT>",
);

Ошибка: невозможно вызвать метод "get" для неопределенного значения в строке 621 tishna.pl, строка 1

1 Ответ

2 голосов
/ 17 июня 2019

Кажется вероятным, что в вашем коде не включен use strict. Это ошибка. Подавляющее большинство опытных программистов на Perl рекомендуют начинать весь ваш код на Perl с:

use strict;
use warnings;

поскольку эти дополнения расскажут вам об огромном количестве глупых ошибок, которые обычно делают программисты.

Одна из самых важных вещей, которые use strict делает, это заставляет вас объявлять переменные. Это предотвращает ошибки, подобные той, которую вы, похоже, сделали здесь.

Вы создаете объект LWP :: UserAgent в переменной с именем $ua. Затем вы пытаетесь использовать этот объект в переменной с именем $browser. Вы используете несовместимые имена переменных.

(Стоит также отметить, что переменные не раскрываются в строках в одинарных кавычках - вам нужно $ua->get($url, ...), а не $ua->get('$url', ...).)

...