Если вы начинаете с нуля, как начинал я, и эта книга один из первых совершенных вами шагов в мир хакинга, для вас важно буде понимать, как работает интернет. Прежде, чем вы перевернете эту страницу, я хочу сказать, что имею ввиду то, как URL, который вы набираете в адресной строке, связывается с доменом, который направляется на IP-адрес, и так далее.
Одним предложением: Интернет это множество систем, которые связаны вместе и отправляют друг другу сообщения. Некоторые принимают только определенные типы сообщений, другие принимают сообщения только от ограниченного списка других систем, но каждая система в интернете имеет адрес, чтобы люди могли отправлять ей сообщения. Каждая система решает, что ей делать с сообщением и как она будет отвечать.
Чтобы определить структуру этих сообщений, люди задокументировали то, как некоторые из этих систем должны общаться в Requests for Comments (RFC). Например, взгляните на HTTP. HTTP определяет протокол того, как ваш интернетбраузер общается с веб-сервером. Поскольку ваш интернетбраузер и веб-сервер действуют в соответствии с одним и тем же протоколом, они могут общаться.
[ad name=»Responbl»]
Когда вы вводите http://www.google.com в адресной строке своего браузера и нажимаете enter, следующие шаги описывают то, что происходит на высшем уровне:
1 GET / HTTP/1.1 2 Host: www.google.com 3 Connection: keep-alive 4 Accept: application/html, */*
1 HTTP/1.1 200 OK 2 Content-Type: text/html 3 4 <html> 5 <head> 6 <title>Google.com</title> 7 </head> 8 <body> 9 ... 10 </body> 11 </html>
Теперь, когда мы закончили с браузером, интернетом и HTML, как упомянуто ранее, существует сообщение о том, как эти сообщения будут отправляться, включая конкретные используемые методы, и требования к заголовку-запросу для всех HTTP/1.1 запросов, как обозначено в пункте 4. Описанные методы включают GET, HEAD, POST, PUT, DELETE, TRACE, CONNECT и OPTIONS.
[ad name=»Responbl»]
Метод GET означает запрос произвольной информации, обозначенной URI. Термин URI может быть непонятным, особенно в сочетании с указанным ранее URL, но для целей этой книги просто знайте, что URL это как адрес человека, и является типом URI, который подобен имени человека (спасибо, Wikipedia). Хотя HTTP-полиции не существует, обычно GET-запросы не должны быть ассоциированы с какими-либо функциями, изменяющими данные, они просто получают и предоставляют информацию.
Метод HEAD идентичен GET, с единственным отличием: сервер не должен возвращать тело сообщения в ответе. Обычно вы встретите случаев, когда он применяется, но он нередко служит для тестирования гипертекстовых ссылок на валидность, доступность и недавние изменения.
Метод POST используется для вызова некоторой функции, которая будет выполнена на сервере способом, определенным этим сервером. Другими словами, обычно на бэкенде будет выполнено некоторое действие, такое, как создание комментария, регистрация пользователя, удаление аккаунта, и так далее. Действие, выполняемое сервером в ответ на POST, может варьироваться и не обязательно вызывается в результате запроса. Например, если в процессе обработки запроса возникла ошибка.
Метод PUT используется при вызове какой-либо функции, но относится к уже существующей сущности. Например, при обновлении вашего аккаунта, обновлении поста в блоге, и так далее. Опять же, выполняемое действие может варьироваться и не обязательно вызывается в результате запроса
Метод DELETE, как несложно догадаться, используется для вызова запроса на удаление ресурса, идентифицированного через URI, обращенного к серверу.
Метод TRACEеще один необычный метод, в этот раз используемый для отражения сообщения запроса к тому, кто его запросил. Это позволяет отправителю увидеть, что было получено сервером и использовать эту информацию для тестирования и диагностики.
Метод CONNECT зарезервирован для использования с прокси (прокси обычно является сервером, который передает запросы к другим серверам).
Метод *OPTIONS используется для запроса с сервера информации о доступных способах общения. Например, запрос OPTIONS может показать, что сервер принимает GET, POST, PUT, DELETE и OPTIONS, но не HEAD или TRACE.
Теперь, вооруженные базовым пониманием того, как работает интернет, мы можем ознакомиться с разными типами уязвимостей, которые могут быть в нем найдены.
Оглавление:
Базовые знания о HTTP протоколе. Глава 1
Что такое HTML иньекция. Уроки хакинга. Глава 2.
Что такое HPP (HTTP Parameter Pollution) атака? Уроки хакинга. Глава 3
Что такое CRLF инъекция, примеры использования. Уроки хакинга, Глава 4.
Уязвимости в логике приложений. Уроки хакинга. Глава 6
Уязвимости в логике работы приложений. Примеры.
Что такое XSS атака (Cross Site Scripting Attacks). Уроки хакинга. Глава 7.
SQL иньекции. Виды и примеры использования. Уроки хакинга. Глава 8.
Уязвимости Открытого Перенаправления. Уроки хакинга. Глава 9
Чтобы взломать сеть Wi-Fi с помощью Kali Linux, вам нужна беспроводная карта, поддерживающая режим мониторинга…
Работа с консолью считается более эффективной, чем работа с графическим интерфейсом по нескольким причинам.Во-первых, ввод…
Конечно, вы также можете приобрести подписку на соответствующую услугу, но наличие SSH-доступа к компьютеру с…
С тех пор как ChatGPT вышел на арену, возросла потребность в поддержке чата на базе…
Если вы когда-нибудь окажетесь в ситуации, когда вам нужно взглянуть на спектр беспроводной связи, будь…
Elastic Security стремится превзойти противников в инновациях и обеспечить защиту от новейших технологий злоумышленников. В…
View Comments
Спасибо за прекрасные статьи! Вы у меня в закладках уже давно!
Очень хорошо сиасибо Разработчику...