И так начну:
1 - Бинд - это значит идет открытие каковота порта и связываем порт и какоето приложение с ним. например 81 с bash так?
2 - Допустим залил я шел. Хочу сделать бинд. Жму бинд из шела.
В темп создается файл
в него записывается код бинда
компиляция (если C)
оранжевое я не сам придумал а посмотрел как реализовано в r57
ТОесть получается порт <->скрипт бинда <-> баш да?
а как происходит сам бинд я непойму.
если брать си , то там bind() но как действует бинд?
сначала открывается порт а потом только связывается с башем если пройдена авторизация да?
нельзя ли забиндить порт если есть возможность юзать system(); из шела? тоесть нбрать команды и пустить их в баш на откытие порта и связыванием его.
http://www.milw0rm.com/shellcode/9120 смотри пример шелкода создающего бинд шелл. что он делает:
1) bind - говорим системе что мы работаем на нужном порту
2) listen - говорим что слушаем его
3) accept - принимаем "клиента"
4) dup2 - 3 раза заменяем дискрипторы стандартных потоков на дискрипторы сокетов.(те теперь вместо консольки всё пойдёт в сеть)
5) execve - выполняем /bin/sh - теперь прога превращется в /bin/sh а открытые дискрипторы наследуются(он также работает с сетью как с консолькой)
6) вопросы?
в бэкконнекте вместо bind и listen b accept - connect
Последний раз редактировалось life_glider; 25.04.2010 в 13:13..
Причина: очепятко