Zastanawialiście się kiedyś, jak wygląda administrowanie botnetem od środka? Dzięki jednemu z moich kolegów z CERT Orange Polska macie tę wyjątkową okazję. W ogóle to sprawa wyszła przypadkiem, podczas analizy kodu źródłowego jednego z popularnych, nieco zmodyfikowanych backdoor'ów, znanego pod nazwą Kaiten.c. W efekcie ekspert trafił na kanał serwera IRCd (kto pamięta co to było? ja się czuję dinozaurem :) ), administrujący botnetem wykorzystującym przejęte routery do ataku na telekomunikacyjnego giganta w USA, Comcast, a tam spotkał cyber-przestępcę we własnej cyber-osobie. Panowie porozmawiali sobie w swoim niezrozumiałym dla normalnych ludzi języku :), zły człowiek puszył się i machał ogonem, by po rozmowie z moim kolegą... pozamykać prawie wszystkie porty w komunikacji z serwerem Command&Control (C&C, serwer kontrolujący botnet), poczynając od 443 za pomocą którego wydawał polecenia botom. Dokładnie rzecz biorąc, serwer wyglądał tak:
W momencie skanowania |
Po rozmowie :) |
Starting Nmap 6.40 ( http://nmap.org ) at 2015-08-18 10:14 CEST
Nmap scan report for xxx.xx.xxx.xxx
Host is up (0.21s latency).
Not shown: 996 closed ports
PORT STATE SERVICE VERSION
22/tcp open ssh OpenSSH 5.3 (protocol 2.0)
311/tcp filtered asip-webadmin
443/tcp open irc Unreal ircd
1141/tcp filtered mxomss
Service Info: Host: Proxys.gov |
Starting Nmap 6.40 ( http://nmap.org ) at 2015-08-18 11:08 CEST
Nmap scan report for xxx.xx.xx.xxx)
Host is up (0.19s latency).
Not shown: 999 closed ports
PORT STATE SERVICE VERSION
22/tcp open ssh OpenSSH 5.3 (protocol 2.0) |
Chyba się przestraszył :)
Tym niemniej - poniżej poszczególne kroki, opisujące, co dzieje się z botnetem, opisane przez autora analizy (jeśli masz problem z odczytaniem treści grafiki, kliknij w nią).
![f7731f70cc7c7c151452feca4b99a342dec](http://biuroprasowe.orange.pl/wp-content/uploads/2015/08/blog/f7731f70cc7c7c151452feca4b99a342dec-237x153.jpg) |
terminal powitalny na serwerze C&C botnetu |
![416681e57ae9c7a9ae7886057351ad1040a](http://biuroprasowe.orange.pl/wp-content/uploads/2015/08/blog/416681e57ae9c7a9ae7886057351ad1040a-237x153.jpg) |
![08cb951677d9fc21e25513097112db6a5d0](http://biuroprasowe.orange.pl/wp-content/uploads/2015/08/blog/08cb951677d9fc21e25513097112db6a5d0-237x153.jpg) |
fragment kodu, przekazujący nam wiele ciekawych rzeczy o konfiguracji botów:
- CHAN "#LA" - nazwa kanału IRC, do którego łączą się zainfekowane urządzenia - PORT 443 - numer portu ircd - AdminUser1 do AdminUser5 - login kont uprawnionych do wydawania poleceń botom - char *servers[] = { "206.72.200.116" - zdefiniowany adres IP serwera C&C |
BotMaster (przestępca zarządzajacy botnetem) wydaje na kanale #LA swojego serwera ircd polecenie aby wszystkie boty atakowały wybrany przez niego adres IP oraz port |
![08cb951677d9fc21e25513097112db6a5d0](http://biuroprasowe.orange.pl/wp-content/uploads/2015/08/blog/08cb951677d9fc21e25513097112db6a5d0-237x153.jpg) |
![08cb951677d9fc21e25513097112db6a5d0](http://biuroprasowe.orange.pl/wp-content/uploads/2015/08/blog/08cb951677d9fc21e25513097112db6a5d0-237x153.jpg) |
Kontynuacja niecnych działań BotMastera |
![8c2713508faed7242d42ff40d7e50ca3396](http://biuroprasowe.orange.pl/wp-content/uploads/2015/08/blog/8c2713508faed7242d42ff40d7e50ca3396-237x153.jpg) |
![368547d3a2c3f1f8ee5ff30798bbfaf16cb](http://biuroprasowe.orange.pl/wp-content/uploads/2015/08/blog/368547d3a2c3f1f8ee5ff30798bbfaf16cb-237x153.jpg) |
Boty ukończyły atak i zwracają informacje dla BotMastera |
Fragment kodu źródłowego backdoora, autorstwa atakującego oraz komunikat od botów o gotowości do kolejnego ataku. |
![d3ecf261aeaed4322a8ebfb90f30b0c2ce9](http://biuroprasowe.orange.pl/wp-content/uploads/2015/08/blog/d3ecf261aeaed4322a8ebfb90f30b0c2ce9-237x153.jpg) |
![50e0a318a9852922d524c290f39f5d30bfc](http://biuroprasowe.orange.pl/wp-content/uploads/2015/08/blog/50e0a318a9852922d524c290f39f5d30bfc-237x153.jpg) |
Bot zgłasza gotowość do kolejnego ataku |
Fragment kodu źródłowego z opisanymi funkcjami ataku dla botów. |
![f7731f70cc7c7c151452feca4b99a342dec](http://biuroprasowe.orange.pl/wp-content/uploads/2015/08/blog/f7731f70cc7c7c151452feca4b99a342dec-237x153.jpg) |
Sekcja kodu backdoora, weryfikująca uprawnienia administratora do wydania polecenia o ataku |