Guia de Post explotacion (borrado de huellas digitales)

Iniciado por nightcode, 28 Diciembre 2013, 14:31 PM

0 Miembros y 1 Visitante están viendo este tema.

nightcode

aquí dejo mi guia de como borrar huellas digitales luego de una Induccion  a un sistema operativo ya sea con backtrack o con otro programa:

Tras realizar un acceso no deseado a un equipo con Windows y tras garantizarnos próximos acceso a dicho sistema, la idea es dejar el mínimo rastro posible. Esta es una de las tareas más importantes en la post-explotación, la ocultación. Windows guarda una especie de log's o registros del sistema para poder saber qué es lo que está pasando, así que una de las formas más sencillas de poder ocultar el acceso, es lógicamente borrarlos. Por suerte, metasploit en meterpreter trae consigo un par de componentes que ayudan a realizar esta tarea. El primero es el uso del modo incógnito, que lo que hace es intentar ocultar todo lo posible todas aquellas tareas que se hagan en el sistema, así como la presencia de un "no deseado" en el mismo.
meterpreter> load incognito
Otra de las formas que hay es borrar los registros que hemos mencionado. Esto es lo mejor que se puede realizar justo antes de abandonar el equipo, para borrar rastro creado en los mismos. Se borrará todo el contenido de los registros.
meterpreter> clearev
  • Wiping 88 records from Application...
  • Wiping 136 records from System...
  • Wiping 0 records from Security...





       Una vez hemos conseguido penetrar en un sistema, la serie de actividades que se deben realizar son vitales para evitar ser descubiertos y garantizar futuros accesos a la maquina comprometida, aunque no hay una metodología estándar para este tipo de actividades, existen un conjunto de pasos que son ampliamente aceptados dada su importancia en el proceso de post-explotacion de un sistema.
    1. Entendimiento de la víctima (Information Gathering):
    El primer paso que se debe realizar una vez explotada una vulnerabilidad, consiste en recolectar la mayor cantidad de información posible sobre el sistema objetivo, de esta forma podemos determinar estrategias y planes de acción que servirán de insumo a los pasos subsecuentes.
    Algunos tópicos de interés sobre el sistema objetivo pueden ser:
    •   Sistema Operativo del Objetivo y el nivel de parche aplicado
    •   Características de Hardware del objetivo y determinar si se encuentra ejecutandose sobre una maquina virtual o no.
    •   Listado de Usuarios registrados en el sistema y cuales se encuentran logueados actualmente.
    •   Listado de Procesos en Ejecución
    •   Programas instalados en la maquina objetivo y frecuencia de uso
    •   Tiempo de Actividad/Inactividad del Sistema objetivo.
    •   Dependiendo del sistema operativo instalado en el objetivo, verificación de ficheros de configuración en busca de posibles vulnerabilidades para seguir explotando.
    •   Listado de variables de entorno en el sistema objetivo.
    •   Obtención de los hashes correspondientes a los passwords de los usuarios del sistema objetivo.
    •   Determinar si se tiene acceso a otras maquinas en el segmento de red y si existen directorios compartidos.
    •   Encontrar software de Seguridad instalado en la máquina y ficheros de log del sistema
    2. Escalación de Privilegios (Privilege Escalation)
    Frecuentemente, nos encontramos que una vez comprometido un sistema, no tenemos un usuario con los permisos suficientes para desarrollar determinadas actividades sobre el sistema objetivo, en estos casos, se hace necesario realizar un procedimiento de escalacion de privilegios para obtener de este modo una cuenta de usuario con todos los privilegios habilitados sobre el sistema, así tendremos muchas mas facilidades a la hora de tratar la maquina comprometida como pivote para comprometer otra maquina en el segmento de red y finalmente comprometer la red completa.
    3. Borrar Logs y matar procesos de software de monitoreo
    Este punto, es quizás el mas importante debido que puede perjudicar nuestro acceso y ponernos al descubierto, cualquier tipo de rastro que se deje en una maquina objetivo puede ser posteriormente utilizado en un análisis forense y con esto cerrar definitivamente nuestras alternativas de acceso a la maquina comprometida, en muchos casos también conlleva a acciones legales que evidentemente serán indeseables.
    Por otro lado, también existe la posibilidad (muy probable) que la maquina objetivo tenga instalado algún tipo de software dedicado a la seguridad e integridad del sistema, en muchos casos este será nuestro principal problema a la hora de ejecutar determinadas acciones sobre el sistema remoto, por esta razón es indispensable dedicar tiempo y energía en investigar el sistema y los posibles sistemas de monitoreo instalados en el objetivo detectar el software instalado y sus correspondientes versiones
    4. Recolectar información, Ejecutar programas en la víctima, etc.
    Llegados a este punto, es importante obtener información mas detallada sobre la víctima y ejecutar programas en el objetivo que puedan alterar variables del registro del sistema operativo o alguna utilidad que nos permita crackear información cifrada como ficheros de passwords, etc. Este paso nos permitirá acceder a cierta información que puede resultar invaluable para permitirnos el acceso a la maquina comprometida en cualquier momento y seguramente, nos permitirá optimizar este proceso sin ser detectados por los sistemas de seguridad instalados en la maquina objetivo.
    5. Establecer puertas Traseras, Rootkits
    Finalmente, el ultimo punto para tener completamente a nuestra disposicion una maquina remota, es establecer puertas traseras y rootkits, con el fin de garantizar nuestro acceso en el caso de ser descubiertos por la maquina remota de esta forma, aunque nos cierren una ruta de entrada, tendremos a nuestra disposición otros mecanismos que nos permitirán acceder a la maquina objetivo nuevamente y realizar cualquier tipo de acción.
    6. Usar la víctima como pivote para hackear otras maquinas en la red
    Una vez tenemos a nuestra disposición una maquina en un segmento de red, podremos hacer uso de dicha maquina para comprometer alguna otra a la que se pueda acceder desde la maquina comprometida, los beneficios de utilizar una maquina intermedia que nos sirva para penetrar en otras maquinas conectadas a está dependen de los objetivos planteados en el proceso de pre-explotacion y sobre la información que deseamos obtener.
    Es frecuente penetrar en una red determinada por medio de las maquinas mas vulnerables con el único objetivo de comprometer una determinada maquina que nos interese y a la cual no tenemos acceso (por ejemplo maquinas en una intranet o red privada), ya sea por la información que disponga o por cualquier otra razón, en cualquier caso, es importante limpiar siempre los rastros de nuestras acciones con el objetivo de no ser vinculados posteriormente con la explotación de una(s) determinada(s) vulnerabilidad(es)

    2 Eliminar Rastro y Huellas Post-Exploitation


    ________________________________________

    Existen tantos tipos de huellas, como tipos de ataques realizados.

    Lo primero que hay que tener en cuenta, es qué hicimos, y como nos pueden cojer.

    Para entrar a robar a una casa, puede tirarse la puerta a patadas, utilizar una palanca (Fuerza Bruta), Ganzuas... En el primer caso hay que recomponer la puerta, en el seguro repararla, en el tercero, deshacerse de las ganzuas.
    Esto no implica que no queden otros rastros.

    Existen muchos tipos de herramientas, backdoors, sniffers para capturar datos, logs de acceso de Apache u otros servicios (daemons)...

    Muchos "Hackers" se limitan a eliminar los access_logs del apache, destruir webshells y backdoors, y root exploit's (Lo cual olvidé en mi último relato, por lo que supieron de la actividad, aunque no conocen su autor), y la cosa no es así.

    Si creamos un usuario, no bastaría con eliminar la cuenta... ¿Cómo creaste el usuario? ¿Mediante comandos?

    El fin de esta guía no es realizar el ataque perfecto, sino más bien una orientación.
    Existen multitud de herramientas, tales como Zappers que afirman eliminar todo rastro... Cuando esto no es así.

    Daremos un repaso por los medios más utilizados.


    A) Destrucción del sistema
    A-1) Esto ocurre cuando la evidencia es tal, que no queda otro remedio.

    La forma más común, almenos en mi caso, seria inhabilitar el login, y causar un tal destrozo que el único medio sea la destrucción total o parcial. He aquí algunos comandos de interés:
    rm /etc/passwd
    rm /etc/shadow
    rm /bin/login
    rm /bin/rm
    rm /etc/inetd.conf
    killall login


    B) Capturando y eliminando los access log de Apache.
    B-1) Esta opción solo es viable si únicamente realizaste un ataque a nivel Web, por ejemplo, una Webshell

    Los directorios más comunes son:
    apache/logs/error.log
    apache/logs/access.log
    apache/logs/error.log
    apache/logs/access.log
    apache/logs/error.log
    apache/logs/access.log
    etc/httpd/logs/acces_log
    etc/httpd/logs/acces.log
    etc/httpd/logs/error_log
    etc/httpd/logs/error.log
    var/www/logs/access_log
    var/www/logs/access.log
    usr/local/apache/logs/access_log
    usr/local/apache/logs/access.log
    var/log/apache/access_log
    var/log/apache2/access_log
    var/log/apache/access.log
    var/log/apache2/access.log
    var/log/access_log
    var/log/access.log
    var/www/logs/error_log
    var/www/logs/error.log
    usr/local/apache/logs/error_log
    usr/local/apache/logs/error.log
    var/log/apache/error_log
    var/log/apache2/error_log
    var/log/apache/error.log
    var/log/apache2/error.log
    var/log/error_log
    var/log/error.log
    var/log/access_log
    var/log/access_log

    Se puede eliminar con RM, o editar, pero para asegurarse de no dejar nada mal, hacer uso de Tee.


    C) Eliminar el Bash History
    C-1) Si, es algo lógico, que mucha gente olvida...
    C-2) Es tan sencillo como editar y/o eliminar el .bash_history o .sh_history
    C-3) Recordar: Esto se hace JUSTO ANTES de salir.


    D) Eliminar todo rastro de exploits, webshells, sniffers, ...
    D-1) Como comenté, me descubrieron por dejar un Root Exploit. No saben quien fue, pero ahí supongo que seguirá.

    E) Tener cuidado con los cambios en el sistema
    E-1) Este paso es vital. Si hiciste un cambio y te agarran, será peor que si solo realizaste la intrusión, dependiendo del pais en el que residas.


    F) Cuidado con los Backdoors
    F-1) Durante un corto tiempo puede pasar inadvertido, durante más, puede ser descubierto... Más vale prevenir que curar.


    G) Eliminar toda cuenta realizada, sobre todo si tiene permisos de Root
    G-1) No basta con eliminar los permisos de shell (/sh/false)


    H) Cuidado: Si hay alguien más logeado al sistema, puede ser muy peligroso.
    H-1) Pueden capturarte fácilmente, además de rastrearte sin el más minimo problema.


    I) Desconfia de todos. El anonimato implica el silencio absoluto, discreción, y seguridad. Jamás digas "Ataqué X servidor", si hay necesidad, "Ataqué un servidor". Fuera del sistema, si eres buscado, no dudes que te espiarán.
    I-1) No existe proxy seguro, solo muy faciles, faciles, complejos, y extremadamente complejos. Pero no seguros.


    J) Cuidado con el syslog.
    J-1) En ocasiones puede ser más complejo de lo habitual deshacerse de cambios realizados en el.


    K) Comandos de interés:
    - Who: Lista usuarios activos.
    - last: Último inicio de sesión de usuario.
    - ps: Procesos activos.
    - lastcom / hostory: Comandos realizados. Véase apartado C.


    L) Ficheros peligrosos:
    - utmp: Guarda un registro (log) de los usuarios que están utilizando el sistema mientras estan conectados al sistema. Directorios: /var/adm/utmp y /etc/utmp
    - wtmp: Guarda un log cada vez que un usuario se introduce en el sistema o sale del sistema.
    - lastlog: Guarda un log del momento exacto en que un usuario entro por ultima vez.
    - acct o pacct: Registra todos los comandos ejecutados por cada usuario (aunque no registra los argumentos con que dichos comandos fueron ejecutados).

    Espero les sirva de ayuda. Att: Nightcode ::)
"Las organizaciones gastan millones de dólares en firewalls y dispositivos de seguridad, pero tiran el dinero porque ninguna de estas medidas cubre el eslabón más débil de la cadena de seguridad: la gente que usa y administra los ordenadores"