Bypassing Unhide - PowerPoint PPT Presentation

1 / 14
About This Presentation
Title:

Bypassing Unhide

Description:

Fistconference Barcelona Diciembre 2006. Conociendo a la v ctima: ... Cautela por parte del administrador y alg n LKM para prevenci n suele ser mejor. ... – PowerPoint PPT presentation

Number of Views:27
Avg rating:3.0/5.0
Slides: 15
Provided by: m018
Category:

less

Transcript and Presenter's Notes

Title: Bypassing Unhide


1
Bypassing Unhide
  • David Reguera García

Fistconference Barcelona Diciembre 2006
Freaklance -)
2
Bypassing Unhide
  1. Qué es Unhide?
  2. Tiene problemas coronarios? bypass?
  3. Por qué Unhide?
  4. Cómo se hace el bypass?
  5. Solo para Unhide?
  6. Qué hay que saber?

Fistconference Barcelona Diciembre 2006
3
Bypassing Unhide
  • Conociendo a la víctima
  • if (strcmp(argv1, "proc") 0) checkproc()
  • else if (strcmp(argv1, "sys") 0)
  • checkgetpriority()
  • checkgetpgid()
  • checkgetsid()
  • checksched_getaffinity()
  • checksched_getparam()
  • checksched_getscheduler()
  • checksched_rr_get_interval()
  • else if(strcmp(argv1, "brute") 0) brute()

Fistconference Barcelona Diciembre 2006
4
Bypassing Unhide
  • proc
  • int maxpid 32768
  • for ( procpids 1 procpids lt maxpid procpids
    procpids 1 )
  • char directory100
  • sprintf(directory,"/proc/d",procpids)
  • statusproc stat(directory, buffer)
  • if (statusproc 0)
  • checkps(procpids,0)

Fistconference Barcelona Diciembre 2006
5
Bypassing Unhide
  • sys
  • getpriority()
  • getpgid()
  • getsid()
  • sched_getaffinity()
  • sched_getparam()
  • sched_getscheduler()
  • sched_rr_get_interval()

Fistconference Barcelona Diciembre 2006
6
Bypassing Unhide
  • brute
  • for (i0 i lt maxpid i)
  • errno 0
  • if (vfork() 0)
  • vpid getpid()
  • allpidsvpid '\0'
  • _exit(2)

Fistconference Barcelona Diciembre 2006
7
Bypassing Unhide
  • brute
  • for(y0 y lt maxpid y)
  • if (allpidsy ! '\0')
  • checkps(allpidsy,1)

Fistconference Barcelona Diciembre 2006
8
Bypassing Unhide
  • Algunas posibles soluciones
  • proc
  • Hook stat()
  • sys
  • Hook getpriority(), getpgid(), getsid(),
    sched_getaffinity(), sched_getparam()
    sched_getscheduler(), sched_rr_get_interval()
  • brute
  • Swapping pids (in runtime).

Fistconference Barcelona Diciembre 2006
9
Bypassing Unhide
  1. La solución propuesta EnyeLKM.
  2. Por qué EnyeLKM?
  3. Ventajas?
  4. Poco conocido (pocos detectores).
  5. Fácil de modificar en sus siguientes versiones.
  6. Desventajas?
  7. Código algo inestable (aún).
  8. Solo para algunos nucleos.

Fistconference Barcelona Diciembre 2006
10
Bypassing Unhide
  1. DEMO 1. EnyeLKM 1.1 by RaiSe.
  2. DEMO 2. EnyeLKM 1.1 Bypassing Unhide by RaiSe
    David Reguera García.
  3. DEMO 3. EnyeLKM 1.1 by RaiSe. Rkhunter
    Chkrootkit.
  4. DEMO 4. EnyeLKM 1.1 Bypassing Unhide Rkhunter
    Chkrootkit.

Fistconference Barcelona Diciembre 2006
11
Bypassing Unhide
  1. Conclusiones
  2. Rkhunter, Chkrootkit Unhide no son del todo
    fiables.
  3. Cautela por parte del administrador y algún LKM
    para prevención suele ser mejor.
  4. EnyeLKM 1.1 Bypassing, estará disponible muy
    pronto en http//www.fr33project.org

Fistconference Barcelona Diciembre 2006
12
Bypassing Unhide
  1. Bibliografía
  2. http//www.security-projects.com/?Unhide
  3. http//www.enye-sec.org/
  4. http//www.badchecksum.org/
  5. http//www.fr33project.org/
  6. http//www.kernel.org/
  7. http//www.chkrootkit.org/
  8. http//freshmeat.net/projects/rkhunter/
  9. http//kernelnewbies.org/

Fistconference Barcelona Diciembre 2006
13
Bypassing Unhide
  • Agradecimientos
  • Dudas/Sugerencias/Comentarios.
  • Despedida
  • E-mail ponente davidregar_at_yahoo.es

Fistconference Barcelona Diciembre 2006
14
Bypassing Unhide
  • HASTA PRONTO
  • x
  • David Reguera García
  • davidregar_at_yahoo.es

Freaklance -)
Fistconference Barcelona Diciembre 2006
Write a Comment
User Comments (0)
About PowerShow.com