По какой причине часто не удаётся забиндить порт с помощью шелла?

Discussion in 'Песочница' started by andrrr, 13 Oct 2009.

  1. andrrr

    andrrr New Member

    Joined:
    19 Sep 2009
    Messages:
    15
    Likes Received:
    1
    Reputations:
    0
    Подскажите, пожалуйста, почему довольно-таки часто(точнее, практически всегда или мне просто не везёт) не удаётся забиндить порт(Открытие порта и привязка его к /bin/bash) с помощью встроенных утилит вебшеллов (wso, r57, c99).
    Подключатся пробую с помощью putty по telnet.
    интересует ситуация при которой шелл не выдаёт ошибку при биндинге, а при которой всё вроде ок, но подключится всё равно не удаётся. В чём может быть причина этого ?
    Есть ещё способ back-connect, но я так понял с соксами его использовать не выйдет? выход только отдельный дедик или как то по другому можно?
    И последнее, если не работает "Открытие порта и привязка его к /bin/bash", то стоит ли пытаться привязаться к серверу через бэк-коннект, или всё равно будет то же самое ?
    Заранее благодарен
     
    1 person likes this.
  2. gold-goblin

    gold-goblin Elder - Старейшина

    Joined:
    26 Mar 2007
    Messages:
    917
    Likes Received:
    174
    Reputations:
    3
    Без ошибки? Я встречался с этим 1 раз, причиной этого был роутер перед сервером который резал все кроме 80 и 25 порта, следовательно бинд прошел но из вне не подключится =(
    (ИМХО в других случаях ошибка должна быть....)
     
  3. bons

    bons Elder - Старейшина

    Joined:
    20 Dec 2007
    Messages:
    286
    Likes Received:
    121
    Reputations:
    21
    входящие соединения блокирует файрволл. Для таких случаев и нужен бекконект.
    реальный IP для этого нужен где-нибудь

    Конечно есть множество нюансов. Иногда есть доступ к чтению правил файрволла, так можно получить доп. информацию. Иногда бекконнект может не получиться из-за блокировки исходящих соединений. Иногда можно обойтись без бекконекта. Например ситуация когда известен пароль для пользователя ОС но в /etc/passwd в качестве шелла ему положен /bin/false, то есть нет шелла. В таком случае можно обойти фаерволл через ssh-туннель.
     
    #3 bons, 14 Oct 2009
    Last edited: 14 Oct 2009
  4. -=lebed=-

    -=lebed=- хэшкрякер

    Joined:
    21 Jun 2006
    Messages:
    3,804
    Likes Received:
    1,960
    Reputations:
    594
    Имеешь один нормальный SSH-шелл с прямым коннектом и запускаешь на нём неткат на прослушку. На втором шелле, что за файрволом, запускаешь неткат бэкконектом с указанием IP и порта. В итоге имеешь шелл на целевом сервере.
     
  5. andrrr

    andrrr New Member

    Joined:
    19 Sep 2009
    Messages:
    15
    Likes Received:
    1
    Reputations:
    0
    всем огромное спасибо

    эта схема интересна. как думаете, сервисы с бесплатными шеллами могут покатить для этого дела (несколько посмотрел -не получается), на своих нерутах нетката нет, а скомпилить его там не выходит.
    то есть стоит ли тратить время на поиски нормального фри-шелла или там всё равно не дадут запустить неткат?
     
  6. $n@ke

    $n@ke Elder - Старейшина

    Joined:
    18 Sep 2006
    Messages:
    696
    Likes Received:
    404
    Reputations:
    134
    фришеллы не дадут скорее всего поставить неткат, а файрволл на целевой системе может не пускать тебя, надо пробовать разные порты..какие - это тебе придет с опытом.ну или ,как все говорят, пробуй порт 80 или другой, выше 1024. =))
     
  7. andrrr

    andrrr New Member

    Joined:
    19 Sep 2009
    Messages:
    15
    Likes Received:
    1
    Reputations:
    0
    не подскажите из за чего неткат при вводе
    nc -l -n -v -p 11444
    выдаёт
    Can't parse nc as an IP address
    на двух компах такая ошибка
    (неткат виндовый) быть может есть какой нибудь аналог нетката под винду
     
  8. andrrr

    andrrr New Member

    Joined:
    19 Sep 2009
    Messages:
    15
    Likes Received:
    1
    Reputations:
    0
    прошлый глюк вроде пропал

    теперь проблема в следующем:
    на виндовом дедике ввёл nc -l -n -v -p 11444
    на что в ответ получил listening of [any] 11444
    далее пробую сделать бэкконект с шеллов,в окне нетката на дедике ничего не происходит.
    затем просто пытаюсь подсоединится к этому дедику с включённым неткатом через putty по телнету, указывая порт и хост. конект не происходит, в окне нетката также ничего не изменяется.
    на дедике фаервола нет (в процессах ничего такого не заметил).

    так же пробую nc -l -n -v -p 80
    получаю listening of [any] 80
    вбиваю айпишник серва в браузер, появляется окно с авторизацией(то есть 80 порт работает), а в окне нетката ничего не меняется, разве там не должно ничего писаться при обращении к 80-му порту, если неткат его слушает ?

    в чём может быть проблема ?
     
    #8 andrrr, 15 Oct 2009
    Last edited: 15 Oct 2009
  9. nikp

    nikp Banned

    Joined:
    19 Sep 2008
    Messages:
    328
    Likes Received:
    591
    Reputations:
    764
    Вероятно дедик находится за NAT, это можно проверить по ipconfig /all,
    найди итерфейс, смотрящий в интернет и по типу адреса определишся,
    имеется ли прямой выход в инет, или соединение идет через шлюз в локальной сети.

    Можно командой tracert antichat.ru посмотреть первый адрес трассировки.


    Напомню, для локальных адресов зарезервированы диапазоны

    10. 0. 0. 0 - 10. 255.255.255
    172. 16. 0. 0 - 172. 31.255.255
    192.168. 0. 0 - 192.168.255.255

    если адрес шлюза попал в один из диапазонов - дедик находитися за NAT.
     
  10. andrrr

    andrrr New Member

    Joined:
    19 Sep 2009
    Messages:
    15
    Likes Received:
    1
    Reputations:
    0
    nikp, спасибо. и в правду дедик не имел прямого айпи. попробывал на дедике с прямым айпи. результат тот же -то есть никакой. может кто нибудь глянет в чём может быть дело ? -дам доступ от дедика. а то уже 2-й день никак с бэкконектом разобраться не могу..
     
  11. andrrr

    andrrr New Member

    Joined:
    19 Sep 2009
    Messages:
    15
    Likes Received:
    1
    Reputations:
    0
    объясните, пожалуйста, подробнее про прямые айпи(как их отличить). если при трассировке первый хост не вошёл в
    10. 0. 0. 0 - 10. 255.255.255
    172. 16. 0. 0 - 172. 31.255.255
    192.168. 0. 0 - 192.168.255.255
    а в ipconfig /all default gateway не соответствует первому хосту(при трассировке) и ip-address(ни 192.168., 10., 172.16.) не соответствует айпи сервера(к которому я подключаюсь) -это прямой ИП ?
     
  12. nikp

    nikp Banned

    Joined:
    19 Sep 2008
    Messages:
    328
    Likes Received:
    591
    Reputations:
    764
    Пробуй последовательно пройти от известного к интересующему.

    1) проверь netcat на своей машине, в одном окне nc -vv -l -p 80, в другом telnet localhost 80, установится соединение, потопчи клавиши, переключись в оно netcat, узри свое послание.

    2) проверь, что свой комп не ограничивает соединение на 80 порт удаленного компьютера.

    3) найди комп (можно у друзей, знакомых) на который можно достучаться из интернета, убедись, что 80 порт не занят (netstat –na ), запусти на нем проверенный nc -vv -l -p 80, со своего компа telnet ip 80 (ip под которым виден из инета) . Заработало, проверяем дальше.

    3) повтори операцию на дедике, не получается – конфигури дедик, или ищи другой. Проверь доступность дедика для всех интересующих тебя портов.

    4) получилось, пробуй запускать бекконект с разных машин, где есть шелл, до получения соединения.

    5) теперь можно настраивать бк с атакуемого сервера, перебирай порты, пока не установится соединение.


    PS ipconfig /all в личку, или дедик в личку.
     
  13. andrrr

    andrrr New Member

    Joined:
    19 Sep 2009
    Messages:
    15
    Likes Received:
    1
    Reputations:
    0
    спасибо. разобрался, оказывается сервак был всё таки не с прямым айпи.
     
  14. Harakternik

    Harakternik Member

    Joined:
    21 Jan 2010
    Messages:
    8
    Likes Received:
    6
    Reputations:
    8
    У меня похожий вопрос: как выяснить причину, по которой не получается ни забиндить порт, ни сделать бэкконнэкт? В случае с биндом Putty через некоторое время закрывается с сообщением "Connection closed by foreign host". Бэкконнэкт делаю на проверенный шелл, бекконнэкт с ещё одного шелла на него удаётся (для него использую GNU NetCat и WSO 2.3). Скрипт бэкконнэкта запускается, процесс видно, но NetCat ничего не выводит. :confused:
    Все сервера под Линуксом, права не рутовые, но и не nobody.
     
  15. $n@ke

    $n@ke Elder - Старейшина

    Joined:
    18 Sep 2006
    Messages:
    696
    Likes Received:
    404
    Reputations:
    134
    файрволл режет.
     
  16. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    Может есть у кого рабочий сплоент на

    Linux 2.6.18-128.2.1.el5.028stab064.7ent #1 SMP Fri Aug 21 2009 i686

    бекконект есть, никакая падлина-злюблина его не берет как и вообще все с милворма
     
  17. $n@ke

    $n@ke Elder - Старейшина

    Joined:
    18 Sep 2006
    Messages:
    696
    Likes Received:
    404
    Reputations:
    134
    ядреным пабликом не рутается.
    Тем более Aug 21 2009.
    Смотри сервисы, вмварю и т.п.