setuid (где посмотреть)
Модератор: Модераторы разделов
-
WhiteXaker
- Сообщения: 39
- ОС: Ubuntu
setuid
Добрый вечер, программисты
Итак вопрос: в linux код открытый, подскажите пожалуйста где лежит исполняемый файл setuid, а также его исходник? прошу прощения, если что - то не совсем верно написал. Я самоучка и много еще могу не знать 
"Хакерская культура" – это разбросанная по сети коллекция субкультур, которые имеют, тем не менее, общий опыт, общие корни и общие ценности. В ней существуют свои мифы, герои, злодеи, свои поэмы, шутки, табу и мечты.
-
watashiwa_daredeska
- Бывший модератор
- Сообщения: 4038
- Статус: Искусственный интеллект (pre-alpha)
- ОС: Debian GNU/Linux
Re: setuid
find $(echo $PATH |tr ':' ' ') -perm -4000
Это Вам спецы по Вашему дистрибу расскажут, как узнать имя пакета, из которого установлен файл, как найти и установить соответствующий пакет исходников и пр.
Мои розовые очки
-
кодировщик
- Сообщения: 974
- Статус: зарёган в пятницу 13
- ОС: Linux
Re: setuid
Вопрос неясный, если честно. setuid - реальный идентификатор пользователя.
А насчёт типа где-лежит, то
файлы с липким битом рута.
А насчёт типа где-лежит, то
Код: Выделить всё
find / -perm -2000 -o -perm -4000 -exec ls -l {} \;файлы с липким битом рута.
-
WhiteXaker
- Сообщения: 39
- ОС: Ubuntu
Re: setuid
ммм... суть такова, что мне надо поглядеть шестнадцатиричные коды setuid.
Вот в связи с этим мне нужно просто этот файлик найти
Код: Выделить всё
objdump -D ./testprogВот в связи с этим мне нужно просто этот файлик найти
"Хакерская культура" – это разбросанная по сети коллекция субкультур, которые имеют, тем не менее, общий опыт, общие корни и общие ценности. В ней существуют свои мифы, герои, злодеи, свои поэмы, шутки, табу и мечты.
-
кодировщик
- Сообщения: 974
- Статус: зарёган в пятницу 13
- ОС: Linux
Re: setuid
WhiteXaker писал(а): ↑19.05.2009 18:51ммм... суть такова, что мне надо поглядеть шестнадцатиричные коды setuid.
Код: Выделить всё
objdump -D ./testprog
Это дизассемблирование, нужно hexdump -x
-
WhiteXaker
- Сообщения: 39
- ОС: Ubuntu
Re: setuid
ну я как раз и имел ввиду дизASM. Подход у них разный, меня вот больше интересует, где найти файлик, вызывающий setuid?
"Хакерская культура" – это разбросанная по сети коллекция субкультур, которые имеют, тем не менее, общий опыт, общие корни и общие ценности. В ней существуют свои мифы, герои, злодеи, свои поэмы, шутки, табу и мечты.
-
Portnov
- Модератор
- Сообщения: 1786
- Статус: Матёрый линуксоид
- ОС: Debian testing/unstable
Re: setuid
Эээ.. В хумор, что ли?
Работа: Ubuntu 9.10
Дом: Debian testing/unstable и на всякий случай winxp в virtualbox.
Для разнообразия: моя домашняя страница -http://iportnov.ru
Дом: Debian testing/unstable и на всякий случай winxp в virtualbox.
Для разнообразия: моя домашняя страница -http://iportnov.ru
-
drBatty
- Сообщения: 8735
- Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
- ОС: Slackware-current
Re: setuid
WhiteXaker писал(а): ↑19.05.2009 19:19Подход у них разный, меня вот больше интересует, где найти файлик, вызывающий setuid?
вы издеваетесь? ок, я тоже:
# find / -path "setuid
видите? я тоже не вижу такого файла. и find не видит. Может не так юзаю?
-
RasenHerz
- Сообщения: 1341
- ОС: Arch Linux amd64
Re: setuid
Код: Выделить всё
unsigned char shell[] = {0xb8, 0x69, 0x00, 0x00, 0x00, 0xbb, 0x00, 0x00, 0x00, 0x00, 0xcd, 0x80};или на асме:
Код: Выделить всё
movl $0x69, %eax
movl $0x00, %ebx
int $0x80-
WhiteXaker
- Сообщения: 39
- ОС: Ubuntu
Re: setuid
Поставлю вопрос по иному: Как получить шестнадцатеричное представление вызовов setuid и setgid.
Народ, извиняйте, если как то не так излагаю... Я ведь только учусь. Все учатся на ошибках
Жду наводящих вопросов, а может кто - то уже понял, что я хочу
"Хакерская культура" – это разбросанная по сети коллекция субкультур, которые имеют, тем не менее, общий опыт, общие корни и общие ценности. В ней существуют свои мифы, герои, злодеи, свои поэмы, шутки, табу и мечты.
-
watashiwa_daredeska
- Бывший модератор
- Сообщения: 4038
- Статус: Искусственный интеллект (pre-alpha)
- ОС: Debian GNU/Linux
Re: setuid
А его так кто-то вообще вызывает, кроме glibc и троянов всяких?RasenHerz писал(а): ↑19.05.2009 20:32Код: Выделить всё
unsigned char shell[] = {0xb8, 0x69, 0x00, 0x00, 0x00, 0xbb, 0x00, 0x00, 0x00, 0x00, 0xcd, 0x80};
или на асме:
Код: Выделить всё
movl $0x69, %eax movl $0x00, %ebx int $0x80
Мои розовые очки
-
drBatty
- Сообщения: 8735
- Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
- ОС: Slackware-current
Re: setuid
попробуйте в качестве отправной точки man 2 setuid
там много умных букв именно про это.
-
watashiwa_daredeska
- Бывший модератор
- Сообщения: 4038
- Статус: Искусственный интеллект (pre-alpha)
- ОС: Debian GNU/Linux
Re: setuid
Сильно неуверен, что оно однозначно.WhiteXaker писал(а): ↑19.05.2009 20:38Поставлю вопрос по иному: Как получить шестнадцатеричное представление вызовов setuid и setgid.
Список бинарей, которые используют функцию setuid можно получить так:
Код: Выделить всё
#!/bin/sh
find $(echo $PATH |tr ':' ' ') -type f |while read f; do
file $f |grep ' ELF.*executable.*dynamic' >/dev/null 2>&1 && nm -D $f |grep 'U setuid' >/dev/null 2>&1 && echo $f
doneМои розовые очки
-
WhiteXaker
- Сообщения: 39
- ОС: Ubuntu
Re: setuid
сомневаюсь... но у меня в институте тема, связанная с информационной безопасностью, вот поэтому я и спрашиваю, как получить этот код?
Допустим выдаст мне шестнадцатеричное представление файлика mycode.
Далее и так далее. Так вот как получить такое представление системного вызова setuid?
Допустим
Код: Выделить всё
objdump -D ./mycodeДалее
Код: Выделить всё
бла-бла-бла<main> 8080456 : 55 push %ebx"Хакерская культура" – это разбросанная по сети коллекция субкультур, которые имеют, тем не менее, общий опыт, общие корни и общие ценности. В ней существуют свои мифы, герои, злодеи, свои поэмы, шутки, табу и мечты.
-
drBatty
- Сообщения: 8735
- Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
- ОС: Slackware-current
Re: setuid
WhiteXaker писал(а): ↑19.05.2009 20:53и так далее. Так вот как получить такое представление системного вызова setuid?
ну дык добавте в mycode.c этот вызов и посмотрите. В чём проблема?
-
WhiteXaker
- Сообщения: 39
- ОС: Ubuntu
Re: setuid
ну дык добавте в mycode.c этот вызов и посмотрите. В чём проблема?
Вы имеете ввиду добавить вызов setuid в мой код, скомпилить и только после этого распотрошить
"Хакерская культура" – это разбросанная по сети коллекция субкультур, которые имеют, тем не менее, общий опыт, общие корни и общие ценности. В ней существуют свои мифы, герои, злодеи, свои поэмы, шутки, табу и мечты.
-
drBatty
- Сообщения: 8735
- Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
- ОС: Slackware-current
Re: setuid
WhiteXaker писал(а): ↑19.05.2009 21:15ну дык добавте в mycode.c этот вызов и посмотрите. В чём проблема?
Вы имеете ввиду добавить вызов setuid в мой код, скомпилить и только после этого распотрошить
ох...
Код: Выделить всё
doc ~>$ sed '' setuid.c
#include <sys/types.h>
#include <unistd.h>
int main()
{
setuid(666);
return 0;
}
doc ~>$ objdump -D a.out |sed '/<main>/,/^$/!d'
08048374 <main>:
8048374: 8d 4c 24 04 lea 0x4(%esp),%ecx
8048378: 83 e4 f0 and $0xfffffff0,%esp
804837b: ff 71 fc pushl -0x4(%ecx)
804837e: 55 push %ebp
804837f: 89 e5 mov %esp,%ebp
8048381: 51 push %ecx
8048382: 83 ec 04 sub $0x4,%esp
8048385: c7 04 24 9a 02 00 00 movl $0x29a,(%esp)
804838c: e8 1f ff ff ff call 80482b0 <setuid@plt>
8048391: b8 00 00 00 00 mov $0x0,%eax
8048396: 83 c4 04 add $0x4,%esp
8048399: 59 pop %ecx
804839a: 5d pop %ebp
804839b: 8d 61 fc lea -0x4(%ecx),%esp
804839e: c3 ret
804839f: 90 nopэто?
-
WhiteXaker
- Сообщения: 39
- ОС: Ubuntu
Re: setuid
ох...
Не вздыхать
это?
да именно это. я впринципе уже сделал, добавив нечто схожее, что у вас получилось в мой код программы.
Всем спасибо за идеи, помощь и мысли.
Особенно благодарен вздыхающему drBatty
"Хакерская культура" – это разбросанная по сети коллекция субкультур, которые имеют, тем не менее, общий опыт, общие корни и общие ценности. В ней существуют свои мифы, герои, злодеи, свои поэмы, шутки, табу и мечты.
-
RasenHerz
- Сообщения: 1341
- ОС: Arch Linux amd64
Re: setuid
странно, я еще в своем посте показал как на асме осуществить вызов setuid() и даже привел кусок байт-кода. чего требовалось автору, для меня до сих пор осталось загадкой...или же нужно искать такой код в других программах?
-
WhiteXaker
- Сообщения: 39
- ОС: Ubuntu
Re: setuid
странно, я еще в своем посте показал как на асме осуществить вызов setuid() и даже привел кусок байт-кода. чего требовалось автору, для меня до сих пор осталось загадкой...или же нужно искать такой код в других программах?
Нужно и ищут постоянно.
"Хакерская культура" – это разбросанная по сети коллекция субкультур, которые имеют, тем не менее, общий опыт, общие корни и общие ценности. В ней существуют свои мифы, герои, злодеи, свои поэмы, шутки, табу и мечты.
-
drBatty
- Сообщения: 8735
- Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
- ОС: Slackware-current
Re: setuid
а... info sed, man crond
и будет вам антивирус из одной команды
Кстати, вот ещё по теме: chkrootkit
угу. вы правы. я скорее развернул ваш результат...