[Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в...

78
Обнаружение руткитов в GNU/Linux Клементьев Михаил DCG #7812 10 марта 2017 г.

Transcript of [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в...

Page 1: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Обнаружение руткитов в GNU/Linux

Клементьев МихаилDCG #7812

10 марта 2017 г.

Page 2: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

$ whoami

I Linux Kernel Security Developer

I Security researcher atI Hardened Gentoo loverI Associate member of

Page 3: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

$ whoami

I Linux Kernel Security DeveloperI Security researcher at

I Hardened Gentoo loverI Associate member of

Page 4: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

$ whoami

I Linux Kernel Security DeveloperI Security researcher atI Hardened Gentoo lover

I Associate member of

Page 5: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

$ whoami

I Linux Kernel Security DeveloperI Security researcher atI Hardened Gentoo loverI Associate member of

Page 6: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

$ agenda

I Что есть руткит (scope)

I Как снизить вероятность зараженияI Как избавиться от того, что уже внутри? (inb4: сжечь)I ПаникаI ПаранойяI СкорбьI О проекте по обнаружению руткитов

Page 7: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

$ agenda

I Что есть руткит (scope)I Как снизить вероятность заражения

I Как избавиться от того, что уже внутри? (inb4: сжечь)I ПаникаI ПаранойяI СкорбьI О проекте по обнаружению руткитов

Page 8: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

$ agenda

I Что есть руткит (scope)I Как снизить вероятность зараженияI Как избавиться от того, что уже внутри? (inb4: сжечь)

I ПаникаI ПаранойяI СкорбьI О проекте по обнаружению руткитов

Page 9: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

$ agenda

I Что есть руткит (scope)I Как снизить вероятность зараженияI Как избавиться от того, что уже внутри? (inb4: сжечь)I Паника

I ПаранойяI СкорбьI О проекте по обнаружению руткитов

Page 10: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

$ agenda

I Что есть руткит (scope)I Как снизить вероятность зараженияI Как избавиться от того, что уже внутри? (inb4: сжечь)I ПаникаI Паранойя

I СкорбьI О проекте по обнаружению руткитов

Page 11: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

$ agenda

I Что есть руткит (scope)I Как снизить вероятность зараженияI Как избавиться от того, что уже внутри? (inb4: сжечь)I ПаникаI ПаранойяI Скорбь

I О проекте по обнаружению руткитов

Page 12: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

$ agenda

I Что есть руткит (scope)I Как снизить вероятность зараженияI Как избавиться от того, что уже внутри? (inb4: сжечь)I ПаникаI ПаранойяI СкорбьI О проекте по обнаружению руткитов

Page 13: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Who is Mr. Rootkitsky?

Page 14: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Who is Mr. Rootkitsky?

Page 15: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Меня поломали?

Page 16: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Linux Kernel Vulnerabilities By Year (1999-2017)

Page 17: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Linux Kernel Vulnerabilities By Type (1999-2017)

Page 18: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Меня поломали?Да.

Page 19: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Как не словить?

I Использование электронной подписи для модулей ядра

I Обеспечение безопасность рабочего компьютераадминистратора

I Знание о том, что происходит на вашей системе (чтодолжно быть, а чего не должно быть)

I Разграничение полномочийI Обновление!

Page 20: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Как не словить?

I Использование электронной подписи для модулей ядраI Обеспечение безопасность рабочего компьютера

администратора

I Знание о том, что происходит на вашей системе (чтодолжно быть, а чего не должно быть)

I Разграничение полномочийI Обновление!

Page 21: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Как не словить?

I Использование электронной подписи для модулей ядраI Обеспечение безопасность рабочего компьютера

администратораI Знание о том, что происходит на вашей системе (что

должно быть, а чего не должно быть)

I Разграничение полномочийI Обновление!

Page 22: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Как не словить?

I Использование электронной подписи для модулей ядраI Обеспечение безопасность рабочего компьютера

администратораI Знание о том, что происходит на вашей системе (что

должно быть, а чего не должно быть)I Разграничение полномочий

I Обновление!

Page 23: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Как не словить?

I Использование электронной подписи для модулей ядраI Обеспечение безопасность рабочего компьютера

администратораI Знание о том, что происходит на вашей системе (что

должно быть, а чего не должно быть)I Разграничение полномочийI Обновление!

Page 24: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

И что, это поможет?

Page 25: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux
Page 26: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

И что, это поможет?Нет.

Page 27: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Какие бывают?

I User-space

I Kernel-space

Page 28: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Какие бывают?

I User-spaceI Kernel-space

Page 29: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Чем могут заниматься?

I Подмена системных файлов

I Изменение логовI Изменение исполняемых файлов при стартеI Скрытие процессовI Скрытие сетевых соединенийI Защита от обнаруженияI Много всего остального, о чем знают только разработчики

Page 30: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Чем могут заниматься?

I Подмена системных файловI Изменение логов

I Изменение исполняемых файлов при стартеI Скрытие процессовI Скрытие сетевых соединенийI Защита от обнаруженияI Много всего остального, о чем знают только разработчики

Page 31: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Чем могут заниматься?

I Подмена системных файловI Изменение логовI Изменение исполняемых файлов при старте

I Скрытие процессовI Скрытие сетевых соединенийI Защита от обнаруженияI Много всего остального, о чем знают только разработчики

Page 32: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Чем могут заниматься?

I Подмена системных файловI Изменение логовI Изменение исполняемых файлов при стартеI Скрытие процессов

I Скрытие сетевых соединенийI Защита от обнаруженияI Много всего остального, о чем знают только разработчики

Page 33: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Чем могут заниматься?

I Подмена системных файловI Изменение логовI Изменение исполняемых файлов при стартеI Скрытие процессовI Скрытие сетевых соединений

I Защита от обнаруженияI Много всего остального, о чем знают только разработчики

Page 34: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Чем могут заниматься?

I Подмена системных файловI Изменение логовI Изменение исполняемых файлов при стартеI Скрытие процессовI Скрытие сетевых соединенийI Защита от обнаружения

I Много всего остального, о чем знают только разработчики

Page 35: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Чем могут заниматься?

I Подмена системных файловI Изменение логовI Изменение исполняемых файлов при стартеI Скрытие процессовI Скрытие сетевых соединенийI Защита от обнаруженияI Много всего остального, о чем знают только разработчики

Page 36: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Open source решения

I chkrootkit (http://www.chkrootkit.org/ | 30.10.2016)

I unhide (http://www.unhide-forensics.info/ | 26.05.2013)I rkhunter (http://rkhunter.sf.net/ | 24.02.2014)I kjackal (https://github.com/dgoulet/kjackal | 16.06.2014)

Page 37: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Open source решения

I chkrootkit (http://www.chkrootkit.org/ | 30.10.2016)I unhide (http://www.unhide-forensics.info/ | 26.05.2013)

I rkhunter (http://rkhunter.sf.net/ | 24.02.2014)I kjackal (https://github.com/dgoulet/kjackal | 16.06.2014)

Page 38: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Open source решения

I chkrootkit (http://www.chkrootkit.org/ | 30.10.2016)I unhide (http://www.unhide-forensics.info/ | 26.05.2013)I rkhunter (http://rkhunter.sf.net/ | 24.02.2014)

I kjackal (https://github.com/dgoulet/kjackal | 16.06.2014)

Page 39: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Open source решения

I chkrootkit (http://www.chkrootkit.org/ | 30.10.2016)I unhide (http://www.unhide-forensics.info/ | 26.05.2013)I rkhunter (http://rkhunter.sf.net/ | 24.02.2014)I kjackal (https://github.com/dgoulet/kjackal | 16.06.2014)

Page 40: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Используемые методы

I Поиск нарушений консистентности предоставляемой ядроминформации

I Сравнение содержимого procfs с выводом команды ps auxI Поиск конкретных файлов известных руткитовI Проверка целостности (e.g. с помощью rpm)I Перебор идентификаторов процесса

Page 41: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Используемые методы

I Поиск нарушений консистентности предоставляемой ядроминформации

I Сравнение содержимого procfs с выводом команды ps aux

I Поиск конкретных файлов известных руткитовI Проверка целостности (e.g. с помощью rpm)I Перебор идентификаторов процесса

Page 42: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Используемые методы

I Поиск нарушений консистентности предоставляемой ядроминформации

I Сравнение содержимого procfs с выводом команды ps auxI Поиск конкретных файлов известных руткитов

I Проверка целостности (e.g. с помощью rpm)I Перебор идентификаторов процесса

Page 43: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Используемые методы

I Поиск нарушений консистентности предоставляемой ядроминформации

I Сравнение содержимого procfs с выводом команды ps auxI Поиск конкретных файлов известных руткитовI Проверка целостности (e.g. с помощью rpm)

I Перебор идентификаторов процесса

Page 44: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Используемые методы

I Поиск нарушений консистентности предоставляемой ядроминформации

I Сравнение содержимого procfs с выводом команды ps auxI Поиск конкретных файлов известных руткитовI Проверка целостности (e.g. с помощью rpm)I Перебор идентификаторов процесса

Page 45: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

На чем бы проверить?

Page 46: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

На чем бы проверить?

Page 47: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

первый попавшийся rootkit с github vs chrootkit

Hook таблицы системных вызовов и скрытие себя

# make && insmod open−h i j a c k . c# dmesg[ 1 9 0 . 0 4 9 ] S imple mod : o r i g f f f f f f f f 8 1 2 0 b 9 4 0 new addr f f f f f f f f c 0 0 1 3 0 0 0# c h k r o o t k i t −qens3 : PACKET SNIFFER(/ s b i n / d h c l i e n t [ 1 5 5 7 ] )# rkhun t e r −c −qp e r l : warn ing : P l e a s e check tha t your l o c a l e s e t t i n g s :

LANGUAGE = ( unse t ) ,LC_ALL = ( unse t ) ,LC_CTYPE = "ru_RU . u t f 8 " ,LANG = "ru_RU . u t f 8 "

a r e suppo r t ed and i n s t a l l e d on your system .p e r l : warn ing : F a l l i n g back to the s t anda rd l o c a l e ("C" ) .

Page 48: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Может быть он слишкомпростой?

Page 49: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

github.com/NoviceLive/research-rootkit

[ 5879 .008563 ] p sh i dko . in i t_modu le :G r e e t i n g s the World ![ 5879 .009880 ] p sh i dko . in i t_modu le :Opening the path : / proc .[ 5879 .011110 ] p sh i dko . in i t_modu le :Succeeded i n open ing : / proc[ 5879 .012376 ] p sh i dko . in i t_modu le :Changing f i l e_op−>i t e r a t e from f f f f f f f f 8 1 2 7 a 0 0 0

to f f f f f f f f c 0 0 3 c 0 0 0 .

Page 50: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

github.com/NoviceLive/research-rootkit

# ps aux. . .

# dmesg[ 6225 .613397 ] p sh i dko . f a k e _ f i l l d i r : H id i ng p i d : 1# rkhun t e rCheck ing f o r h idden f i l e s and d i r e c t o r i e s[ None found ]Roo t k i t checks . . .

R oo t k i t s checked : 299P o s s i b l e r o o t k i t s : 0

# c h k r o o t k i tCheck ing ‘ lkm ’ . . .You have 1 p r o c e s s h idden f o r r e a d d i r command# unh ide qu i c kFound HIDDEN PID : 1 Command : " i n i t [ 2 ] "

Page 51: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Как нашелся?

chkrootkit:

#d e f i n e MAX_PROCESSES 999999/∗ Brute f o r c e ∗/s t r c p y ( buf , "/ proc /" ) ;r e t p s = r e t d i r = 0 ;f o r ( i = FIRST_PROCESS ; i <= MAX_PROCESSES; i++). . .

j = r e a d l i n k ( " . / cwd" , path , s i z e o f ( path ) ) ;. . .

Page 52: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Как нашелся?

unhide:

// PID under 301 a r e r e s e r v e d f o r k e r n e lf o r ( x=0; x < 301 ; x++){

a l l p i d s [ x ] = 0 ;a l l p i d s 2 [ x ] = 0 ;

}

f o r ( z=301; z < maxpid ; z++){

a l l p i d s [ z ] = z ;a l l p i d s 2 [ z ] = z ;

}

f o r ( i =301; i < maxpid ; i++). . . .

Page 53: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Как нашелся?

unhide:

v o i d get_max_pid ( i n t ∗ newmaxpid ){

cha r path [ ]= "/ proc / s y s / k e r n e l /pid_max " ;pid_t tmppid = 0 ;FILE∗ f d= fopen ( path , " r " ) ;i f ( ! f d ){

warn ln (1 , unlog , "Cannot r ead c u r r e n t maximum PID . Us ing d e f a u l t v a l u e %d" , ∗ newmaxpid ) ;r e t u r n ;

}

Page 54: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Значит, что все-таки естьэффективные антируткиты

под Linux?

Page 55: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Значит, что все-таки естьэффективные антируткиты

под Linux?Нет.

Page 56: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

My Little Fix

/∗∗ A maximum of 4 m i l l i o n PIDs shou l d be∗ enough f o r a wh i l e .∗ [NOTE: PID/TIDs a r e l i m i t e d to∗ 2^29 ~= 500+ m i l l i o n , s e e f u t e x . h . ]∗/

#d e f i n e PID_MAX_LIMIT \(CONFIG_BASE_SMALL ? PAGE_SIZE ∗ 8 : \( s i z e o f ( l ong ) > 4 ? 4 ∗ 1024 ∗ 1024: PID_MAX_DEFAULT) )

Page 57: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

My Little Fix

I Перед стартом процесса pid_max устанавливается вPID_MAX_LIMIT-N

I Запуск процессаI Снижение pid_max до прошлого значения

Page 58: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

My Little Fix

# ps aux. . .

# dmesg[ 14365 . 243616 ] p sh i dko . f a k e _ f i l l d i r : S t a r t p r o c e s s[ 14965 . 325102 ] p sh i dko . f a k e _ f i l l d i r : H id i ng p i d : 4123123# rkhun t e rCheck ing f o r h idden f i l e s and d i r e c t o r i e s[ None found ]Roo t k i t checks . . .

R oo t k i t s checked : 299P o s s i b l e r o o t k i t s : 0

# c h k r o o t k i t// None found# unh ide// None found

Page 59: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

kjackal

Особенности:I Небольшой (≈ 700 строк)I Мертвый (разработка остановлена в 2013)

Page 60: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

kjackal

$ make | tail -n 4make[2]: *** [scripts/Makefile.build:294: kjackal/src/module.o]Ошибка 1make[1]: *** [Makefile:1490: _module_/kjackal] Ошибка 2make[1]: выход из каталога «/usr/src/linux»make: *** [Makefile:26: default] Ошибка 2

Page 61: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Houston, we have a problem.

Page 62: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Houston, we have a problem.Эффективных антируткитов

нет :(

Page 63: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Что дальше?

Page 64: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Что дальше?Programming, Motherfucker.

Page 65: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Programming, Motherfucker

I Kernel-level

I Только общие методы (проверить наличие /proc/enyo иchkrootkit может)

Page 66: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Programming, Motherfucker

I Kernel-levelI Только общие методы (проверить наличие /proc/enyo и

chkrootkit может)

Page 67: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Обнаружение: Встраивание в планировщик процессов

Page 68: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Обнаружение: Встраивание в планировщик процессов

Основные причины вызова schedule():I Регулярное обновление текущей задачи с помощью

scheduler_tick()

I Задача приостанавливаетсяI Задача возобновляет выполнение (→ try_to_wake_up())

Page 69: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Обнаружение: Встраивание в планировщик процессов

Основные причины вызова schedule():I Регулярное обновление текущей задачи с помощью

scheduler_tick()I Задача приостанавливается

I Задача возобновляет выполнение (→ try_to_wake_up())

Page 70: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Обнаружение: Встраивание в планировщик процессов

Основные причины вызова schedule():I Регулярное обновление текущей задачи с помощью

scheduler_tick()I Задача приостанавливаетсяI Задача возобновляет выполнение (→ try_to_wake_up())

Page 71: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Обнаружение: Встраивание в планировщик процессов

try_to_wake_up():I Помещает задачу в очередь выполнения задач

I Изменяет состояние задачи на “TASK_RUNNING”I Если пробуждаемая задача имеет приоритет выше

текущей задачи, то производит вызов планировщика сцелью перепланирования задач

Page 72: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Обнаружение: Встраивание в планировщик процессов

try_to_wake_up():I Помещает задачу в очередь выполнения задачI Изменяет состояние задачи на “TASK_RUNNING”

I Если пробуждаемая задача имеет приоритет вышетекущей задачи, то производит вызов планировщика сцелью перепланирования задач

Page 73: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Обнаружение: Встраивание в планировщик процессов

try_to_wake_up():I Помещает задачу в очередь выполнения задачI Изменяет состояние задачи на “TASK_RUNNING”I Если пробуждаемая задача имеет приоритет выше

текущей задачи, то производит вызов планировщика сцелью перепланирования задач

Page 74: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Обнаружение: Встраивание в планировщик процессов

i n t hook_try_to_wake_up ( s t r u c t t a s k_s t r u c t ∗p ,un s i gned i n t s t a t e ,i n t wake_f lags )

{p r i n t k ("p−>p id : %d , p−>comm: %s \n" , p−>pid , p−>comm) ;r e t u r n origin_try_to_wake_up (

p , s t a t e , wake_f lags ) ;}

Page 75: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Обнаружение: Встраивание в планировщик процессов

dmesg:

[ 9 4 . 5 6 8 ] p−>p id : 1749 , p−>comm: r s y s l o g d[ 9 4 . 5 6 9 ] p−>p id : 1747 , p−>comm: r s : main Q: Reg[ 9 4 . 5 7 2 ] p−>p id : 1749 , p−>comm: r s y s l o g d[ 9 4 . 5 7 3 ] p−>p id : 1747 , p−>comm: r s : main Q: Reg[ 9 4 . 5 7 6 ] p−>p id : 1749 , p−>comm: r s y s l o g d[ 9 4 . 5 7 7 ] p−>p id : 1747 , p−>comm: r s : main Q: Reg[ 9 4 . 5 8 0 ] p−>p id : 1749 , p−>comm: r s y s l o g d[ 9 4 . 5 8 1 ] p−>p id : 1935 , p−>comm: hiddenprocess[ 9 4 . 6 0 5 ] p−>p id : 1747 , p−>comm: r s : main Q: Reg

Page 76: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Двигаться дальше

I Проверка согласованности структур данных ядраI Самозащита со стороны антируткитаI Поддержка других реализаций планировщика ядра

Page 77: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Вопросы?

Page 78: [Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux

Спасибо за внимание!Клементьев Михаил

<[email protected]>/* github.com/jollheef */