- HTTP-сервер с шифрованием TLS на Kali Linux за 5 минут
- HTTP-сервер с шифрованием TLS на Kali Linux
- HackWare.ru
- Этичный хакинг и тестирование на проникновение, информационная безопасность
- Поддержка HTTPS репозиториями Kali Linux
- https://cdimage.kali.org
- https://http.kali.org
- Kali Linux Repository HTTPS Support
- https://cdimage.kali.org
- https://http.kali.org
- Packages and Binaries:
HTTP-сервер с шифрованием TLS на Kali Linux за 5 минут
Хакерам и пентестерам часто требуется передать или получить файлы с удаленного компьютера. Сделать это можно различными способами. Один из них — HTTP-сервер. В сегодняшней статье я покажу простой и быстрый способ создания временного HTTP-сервера с шифрованием TLS на Kali Linux. Для этой цели мы будем использовать Python скрипт SimpleHTTPServer.
HTTP-сервер с шифрованием TLS на Kali Linux
SimpleHTTPServer — это модуль Python, который позволяет быстро создать HTTP-сервер. С помощью SimpleHTTPServer можно превратить любой каталог в простой веб-сервер HTTP. SimpleHTTPServer поддерживает только два метода HTTP – GET и HEAD. Об этом модуле я узнал из книги Red Team Field Manual (RTFM).
Перед созданием HTTP-сервера на Kali Linix нам потребуется SSL-сертификат (закрытый ключ и открытый сертификат). В сети полно инструкций о регистрации и получении бесплатных сертификатов. Для автоматизации можете использовать эту команду:
Итак, у нас есть файл сертификата и закрытый ключ, или с помощью команды вы получили один файл cert.pem.
Я воспользовался командой и у меня есть файл cert.pem.
Если у вас есть закрытый ключ и файл сертификата, тогда вам поможет эта статья.
Следующий шаг — создание файла с именем:
HackWare.ru
Этичный хакинг и тестирование на проникновение, информационная безопасность
Поддержка HTTPS репозиториями Kali Linux
Недавно в инфраструктуре Kali расширена поддержка HTTPS. Хотя страница загрузки Kali Linux и shasums всегда обслуживались через HTTPS, редиректор зеркал не использовал HTTPS. Теперь, когда образы генерируются еженедельно, безопасный доступ к редиректору зеркал стал важным.
https://cdimage.kali.org
Это адрес редиректора зеркал на образы Kali. Этот сервер принимает ваши запросы на загрузку с официальной страницы загрузки Kali Linux, и затем перенаправляет вас для загрузки запрошенного файла с самого географически близкого зеркала. Это также точка загрузки еженедельных сборок Kali – теперь с поддержкой HTTPS. Переход на этот редиректор через HTTPS перенаправит вас на сервер загрузки с включённым SSL, а незашифрованный HTTP запрос перенаправит на сервер с HTTP. Поддержка HTTP не убрана по той причине, что не все зеркала поддерживают HTTPS, поэтому выбор HTTPS в качестве единственной альтернативы может замедлить скорости скачивания. Критично ли для безопасности загружать образ Kali через HTTP? Нет, если вы делаете GPG верификацию скаченного образа.
https://http.kali.org
В качестве побочного продукта включения HTTPS на cdimage.kali.org, теперь также поддерживается доставка apt пакетов через HTTPS. Это означает, что репозитории пакетов Kali могут поддерживать HTTPS – т.е. теперь обновления Kali пересылаются по зашифрованному каналу. Отсутствие HTTPS при обновлении пакетов не является критичной проблемой, поскольку все скаченные обновления в любом случае проверялись на целостность и подлинность, но дополнительный уровень безопасности никогда не бывае лишним. Чтобы включить передачу apt HTTPS убедитесь, что установлен пакет apt-transport-https (он по умолчанию установлен в еженедельные образы и свежие релизы) и включите HTTPS передачу в вашем файле sources.list как это показано ниже:
sudo apt-get install apt-transport-https cat /etc/apt/sources.list deb https://http.kali.org/kali kali-rolling main non-free contrib # deb-src https://http.kali.org/kali kali-rolling main non-free contrib
Теперь информация о новых пакетах и сами обновления будут передаваться с зеркал, на которых включён HTTPS:
sudo apt-get update Сущ:1 https://mirrors.dotsrc.org/kali kali-rolling InRelease Чтение списков пакетов… Готово
Переход на HTTPS не является обязательным. В настоящее время, пока многие зеркала ещё не поддерживают HTTPS, переход на безопасное соединение может замедлить скорость скачивания пакетов.
Kali Linux Repository HTTPS Support
A couple of weeks back we added more HTTPS support to our Kali infrastructure, and wanted to give our users some guidance and point out what’s new. While our Kali Linux download page (and shasums) has always been served via HTTPS, our mirror redirector has not. Now that we generate weekly images, secure access to the mirror redirector has become crucial.
https://cdimage.kali.org
This is our Kali Image Mirror Redirector. This server accepts your download requests from our official download page, and then serves your requested file from the geographically closest mirror. This is also the download point for our Kali Weekly builds — now with fresh and shiny HTTPS support. Hitting this redirector via HTTPS will redirect your request to an SSL enabled download server, while an unencrypted HTTP request will redirect to an HTTP enabled mirror. Where’s the catch? Not all donated mirrors support HTTPS, so choosing this transport may result in slower download speeds. Should downloading a Kali image over HTTP be a security concern? Not if you GPG verify your downloaded image.
https://http.kali.org
As a byproduct of enabling HTTPS on cdimage.kali.org, we now also support apt HTTPS transports. This means that our actual Kali package repositories can support HTTPS — resulting in encrypted Kali updates and upgrades. Surprisingly, this does not add much security to the update / upgrade process (read here if you’re wondering why) — however it *does* add an extra layer of security, so we figured, “why not?”. To enable the apt HTTPS transport, first make sure the apt-transport-https package is installed (it’s installed by default in our weekly images and upcoming releases) and enable the HTTPS transport in your sources.list file as shown below:
[email protected]:~# apt install apt-transport-https [email protected]:~# cat /etc/apt/sources.list deb https://http.kali.org/kali kali-rolling main contrib non-free # deb-src https://http.kali.org/kali kali-rolling main contrib non-free [email protected]:~#
Now any update or upgrade operation preformed against our mirrors will be HTTPS enabled:
[email protected]:~# apt update Hit:1 https://archive-3.kali.org/kali kali-rolling InRelease Reading package lists. Done [email protected]:~#
As not all donated mirrors come with HTTPS support, shifting to the HTTPS transport may result in a less optimized mirror being selected for you, resulting in slower download speeds. As moving to an apt HTTPS transport does not provide much extra security, do so only if you feel you must!
Packages and Binaries:
This package contains the httpX toolkit developed by ProjectDiscovery. It’s a fast and multi-purpose HTTP toolkit allow to run multiple probers using retryablehttp library, it is designed to maintain the result reliability with increased threads.
- Simple and modular code base making it easy to contribute.
- Fast And fully configurable flags to probe multiple elements.
- Supports multiple HTTP based probings.
- Smart auto fallback from https to http as default.
- Supports hosts, URLs and CIDR as input.
- Handles edge cases doing retries, backoffs etc for handling WAFs.
This tool is packaged as ‘httpx-toolkit’ to avoid confusion and conflicts with the package python3-httpx that provides a script /usr/bin/httpx.
Installed size: 11.47 MB
How to install: sudo apt install httpx-toolkit
httpx-toolkit
[email protected]:~# httpx-toolkit -h httpx is a fast and multi-purpose HTTP toolkit allow to run multiple probers using retryablehttp library. Usage: httpx-toolkit [flags] Flags: INPUT: -l, -list string Input file containing list of hosts to process -request string File containing raw request PROBES: -sc, -status-code Display Status Code -td, -tech-detect Display wappalyzer based technology detection -cl, -content-length Display Content-Length -server, -web-server Display Server header -ct, -content-type Display Content-Type header -lc, -line-count Display Response body line count -wc, -word-count Display Response body word count -rt, -response-time Display the response time -title Display page title -location Display Location header -method Display Request method -websocket Display server using websocket -ip Display Host IP -cname Display Host cname -cdn Display if CDN in use -probe Display probe status MATCHERS: -mc, -match-code string Match response with given status code (-mc 200,302) -ml, -match-length string Match response with given content length (-ml 100,102) -ms, -match-string string Match response with given string -mr, -match-regex string Match response with specific regex -er, -extract-regex string Display response content with matched regex -mlc, -match-line-count string Match Response body line count -mwc, -match-word-count string Match Response body word count -mfc, -match-favicon string[] Match response with specific favicon FILTERS: -fc, -filter-code string Filter response with given status code (-fc 403,401) -fl, -filter-length string Filter response with given content length (-fl 23,33) -fs, -filter-string string Filter response with specific string -fe, -filter-regex string Filter response with specific regex -flc, -filter-line-count string Filter Response body line count -fwc, -filter-word-count string Filter Response body word count -ffc, -filter-favicon string[] Filter response with specific favicon RATE-LIMIT: -t, -threads int Number of threads (default 50) -rl, -rate-limit int Maximum requests to send per second (default 150) MISCELLANEOUS: -favicon Probes for favicon ("favicon.ico" as path) and display phythonic hash -tls-grab Perform TLS(SSL) data grabbing -tls-probe Send HTTP probes on the extracted TLS domains -csp-probe Send HTTP probes on the extracted CSP domains -pipeline HTTP1.1 Pipeline probe -http2 HTTP2 probe -vhost VHOST Probe -p, -ports string[] Port to scan (nmap syntax: eg 1,2-10,11) -path string File or comma separated paths to request -paths string File or comma separated paths to request (deprecated) OUTPUT: -o, -output string file to write output results -sr, -store-response store http response to output directory -srd, -store-response-dir string store http response to custom directory -csv store output in CSV format -json store output in JSONL(ines) format -irr, -include-response include http request/response in JSON output (-json only) -include-chain include redirect http chain in JSON output (-json only) -store-chain include http redirect chain in responses (-sr only) CONFIGURATIONS: -r, -resolvers string[] List of custom resolvers (file or comma separated) -allow string[] Allowed list of IP/CIDR's to process (file or comma separated) -deny string[] Denied list of IP/CIDR's to process (file or comma separated) -random-agent Enable Random User-Agent to use (default true) -H, -header string[] Custom Header to send with request -http-proxy, -proxy string HTTP Proxy, eg http://127.0.0.1:8080 -unsafe Send raw requests skipping golang normalization -resume Resume scan using resume.cfg -fr, -follow-redirects Follow HTTP redirects -maxr, -max-redirects int Max number of redirects to follow per host (default 10) -fhr, -follow-host-redirects Follow redirects on the same host -vhost-input Get a list of vhosts as input -x string Request methods to use, use 'all' to probe all HTTP methods -body string Post body to include in HTTP request -s, -stream Stream mode - start elaborating input targets without sorting -sd, -skip-dedupe Disable dedupe input items (only used with stream mode) -pa, -probe-all-ips Probe all the ips associated with same host -ldp, -leave-default-ports Leave default HTTP/HTTPS ports (eg. http://host:80 - https//host:443 DEBUG: -silent Silent mode -v, -verbose Verbose mode -version Display version -nc, -no-color Disable color in output -debug Debug mode -debug-req Show all sent requests -debug-resp Show all received responses -stats Display scan statistic OPTIMIZATIONS: -nf, -no-fallback Display both probbed protocol (HTTPS and HTTP) -nfs, -no-fallback-scheme Probe with input protocol scheme -maxhr, -max-host-error int Max error count per host before skipping remaining path/s (default 30) -ec, -exclude-cdn Skip full port scans for CDNs (only checks for 80,443) -retries int Number of retries -timeout int Timeout in seconds (default 5) -rsts, -response-size-to-save int Max response size to save in bytes (default 2147483647) -rstr, -response-size-to-read int Max response size to read in bytes (default 2147483647)