Как получить доступ к URL, который требует http аутентификации в c / c ++ / командной строке? - PullRequest
0 голосов
/ 28 октября 2010
http://admin:123456@192.168.1.178/videostream.cgi

Чтобы получить доступ к URL-адресу, который не требует http-аутентификации, достаточно просто:

telnet 192.168.1.178 80
Get /videostream.cgi HTTP/1.1
Accept: text/html;text/plain

User-agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.13) Gecko/20100914 Firefox/3.5.13
Connection: close

а как указать admin:123456?

Ответы [ 2 ]

1 голос
/ 28 октября 2010

Для базовой аутентификации вы указываете имя пользователя и пароль как username:password, затем кодируете Base64 и используете его в качестве аргумента для заголовка Authentication:

Authorization: Basic YXNkZjoxMjM0

YXNkZjoxMjM0 декодирует до asdf:1234; Я использовал curl -u adsf:1234 (указав имя пользователя "asdf" и пароль "1234") для получения этого результата.

1 голос
/ 28 октября 2010

См. RFC или Эта статья в Википедии .

. Может быть полезно использовать Wireshark или какой-либо другой анализатор LANПосмотрите, что делают браузер и сервер при доступе к URL-адресу со встроенными учетными данными, такими как http://admin:123456@192.168.1.178/videostream.cgi

...