2019-2020-2 Tecnología de contramedidas de red 20175311 Hu Jidong Exp4 Análisis de código malicioso

2019-2020-2 Tecnología de contramedidas de red 20175311 Hu Jidong Exp4 Análisis de código malicioso

Directorio

  • 1. Introducción al experimento
  • 2. Procedimiento experimental
    • 1. Use la instrucción schtasks para monitorear el sistema
    • 2. Use la herramienta sysmon para monitorear el sistema
    • 3. Use VirusTotal para analizar malware
    • 4. Use PEID para analizar malware
    • 5. Use systracer para analizar malware
    • 6. Use Wireshark para capturar paquetes y analizar malware
  • 3. Requisitos experimentales
  • 4. pensamientos experimentales

1. Introducción al experimento

1. Objetivo experimental

  • Supervise el estado de ejecución de su sistema para ver si se están ejecutando programas sospechosos.
  • Para analizar un malware, analice el software de puerta trasera generado en Exp2 o Exp3; la herramienta de análisis utiliza instrucciones nativas o sysinternals, systracer suite tanto como sea posible.
  • Suponiendo que siente que su anfitrión tiene un problema en el trabajo futuro, puede usar esta idea en el experimento, primero monitorear todo el sistema para ver si se pueden encontrar objetos sospechosos y luego analizar más a fondo los objetos sospechosos para confirmar su comportamiento y naturaleza específicos.

2. Contenido experimental (3.5 puntos)

2.1 Monitoreo de operación del sistema (2 puntos)
  • Utilícelo como tareas programadas para registrar cada minuto qué programas está conectado su computadora a Internet y dónde está la IP externa conectada. Descubra todos los programas conectados a la red, dónde están conectados y qué hacen, y realice análisis adicionales para capturar los paquetes de manera específica.
  • Instale y configure la herramienta sysmon en sysinternals, establezca un archivo de configuración razonable y monitoree el comportamiento sospechoso de los problemas clave de su host.
2.2 Análisis de malware (1.5 puntos)
  • Analice el software cuando (1) inicie la conexión de retorno, (2) instale en la máquina de destino (3) y otras operaciones arbitrarias (como la migración del proceso o la captura de pantalla, lo importante es que esté interesado). El software de puerta trasera
    • Qué claves de registro se han leído, agregado y eliminado
    • Qué archivos se leyeron, agregaron y eliminaron
    • Qué IP externa está conectada y qué datos se transmiten

2. Procedimiento experimental

1. Use la instrucción schtasks para monitorear el sistema

  • Usa schtasks /create /TN netstat5311 /sc MINUTE /MO 1 /TR "cmd /c netstat -bn > c:\netstatlog.txt"comandos para crear tareasnetstat5311

    • TNEs la abreviatura de TaskName, el nombre de la tarea programada que creamos es netstat5318;
    • scPara indicar el método de tiempo, completamos MINUTO en minutos;
    • TRIndica la ejecución de la tarea, el comando a ejecutar es netstat
    • bnMuestra el nombre del archivo ejecutable y nmuestra la IP y el puerto en números;
    • >Representa la redirección de salida, almacena la salida en un c:\netstatlog.txtarchivo
  • Cree un nuevo archivo de script netstat5311.baty arrástrelo al directorio de la unidad c, escriba el siguiente contenido

date /t >> c:\netstat5311.txt
time /t >> c:\netstat5311.txt
netstat -bn >> c:\netstat5311.txt

  • Abra el programador de tareas y encuentre la tarea recién creada
  • Haga doble clic en la tarea, ajuste la configuración y cambie el "programa o script" al netstat5311.batarchivo por lotes que creamos , solo confirme
  • La operación predeterminada en las opciones de energía es "Iniciar esta tarea solo cuando la computadora usa energía de CA", luego la tarea se detendrá cuando use energía de la batería. Para contar más datos, eliminaremos esta verificación.
  • Seleccione la máxima autoridad para ejecutar y haga clic en Aceptar para guardar.
  • Entonces solo espera para recopilar datos ~
  • Después de esperar mucho tiempo, importamos los datos a una tabla de Excel. Importar datos de texto: cree un nuevo archivo de Excel-> seleccione "datos" arriba-> seleccione "obtener datos externos" -> seleccione "auto texto"
  • Ingrese el primer paso del asistente de importación de archivos, seleccione "Separador" y haga clic en "Siguiente"
  • Ingrese el segundo paso del asistente de importación de archivos, seleccione todos los separadores y haga clic en "Siguiente"
  • Ingrese el tercer paso del asistente de importación de archivos, seleccione normal para el formato de datos de columna y haga clic en "Finalizar". Los datos finales son los siguientes:
  • Cree un nuevo gráfico a partir de los datos exportados, elimine los campos que no son significativos e importe los valores.

  • Finalmente, el gráfico final exportado es el siguiente:

  • A través de la tabla anterior, puedo ver que el programa con más conexión a Internet es el navegador web de Google "chrome.exe", el segundo es
    el proceso de servicio para manejar el asistente "dgservice.exe", y el tercero es el "TXEDU" de Tencent Class ".exe", el cuarto lugar es el proceso del sistema win10 "searchUI.exe". Además, también podemos ver algunos otros procesos del sistema y programas de red como WeChat, QQ y máquinas virtuales.
  • No se encontraron programas maliciosos sospechosos, así que analicemos la conexión de red realizada por chrome.exe. Al mirar la tabla, encontramos que el navegador de Google visitó 119.3.240.79:80, que debería ser la página web que visité cuando estaba buscando información al hacer el experimento.

2. Use la herramienta sysmon para monitorear el sistema

  • Instale y configure la herramienta sysmon en sysinternals, establezca un archivo de configuración razonable y monitoree el comportamiento sospechoso de los problemas clave de su host.
  • Descargue el archivo SysinternalsSuite.zip cargado por el profesor en Code Cloud y descomprímalo. sysmon está en la carpeta descomprimida.
  • El método de escritura del archivo de configuración puede referirse al blog para usar la herramienta ligera Sysmon para monitorear su sistema
  • Cree sysmon5311.txt en el directorio donde se encuentra sysmon e ingrese los requisitos de configuración
<Sysmon schemaversion="3.10">
  <!-- Capture all hashes -->
  <HashAlgorithms>*</HashAlgorithms>
  <EventFiltering>
    <!-- Log all drivers except if the signature -->
    <!-- contains Microsoft or Windows -->
    <ProcessCreate onmatch="exclude">     
      <Image condition="end with">chrome.exe</Image> 
    </ProcessCreate>

    <FileCreateTime onmatch="exclude" >
      <Image condition="end with">chrome.exe</Image>
    </FileCreateTime>
    
    <NetworkConnect onmatch="exclude">
      <Image condition="end with">chrome.exe</Image>
      <SourcePort condition="is">137</SourcePort>
      <SourceIp condition="is">127.0.0.1</SourceIp>
    </NetworkConnect>
    <NetworkConnect onmatch="include">     
      <DestinationPort condition="is">80</DestinationPort>      
      <DestinationPort condition="is">443</DestinationPort>    
    </NetworkConnect>

    <CreateRemoteThread onmatch="include">
      <TargetImage condition="end with">explorer.exe</TargetImage>
      <TargetImage condition="end with">svchost.exe</TargetImage>
      <TargetImage condition="end with">winlogon.exe</TargetImage>
      <SourceImage condition="end with">powershell.exe</SourceImage>
    </CreateRemoteThread>
  </EventFiltering>
</Sysmon>
  • Para Chrome y wps comunes, los puse en iniclude. En el código anterior, el número de versión de sysmon en la primera línea corresponde al sysmon utilizado. ProcessCreate significa creación de procesos, NetworlConnect es conexión de red, CreateRemote es creación remota de subprocesos y FileCreate Time es tiempo de creación de procesos. Los parámetros incluyen y excluyen las siguientes coincidencias representan las listas de "inspección exenta" e "inspección requerida", respectivamente.
  • La creación remota de hilos registra los hilos remotos cuyos objetivos son explorer.exe, svchost.exe, winlogon.exe y powershell.exe. explorer.exe es un administrador de programas de Windows o administrador de recursos de archivos; svchost.exe es un programa del sistema que pertenece al sistema operativo Microsoft Windows y es el nombre de proceso de host común de un servicio que se ejecuta desde una biblioteca de enlaces dinámicos (DLL); winlogon.exe es Programa de inicio de sesión de usuario de Windows NT, utilizado para administrar el inicio y cierre de sesión de usuario; powershell.exe es un nuevo shell de línea de comandos de Windows diseñado específicamente para administradores de sistemas. El programa de shell incluye mensajes interactivos y entornos de secuencias de comandos, que se pueden usar de forma independiente o en combinación.
  • Obtenga derechos de administrador para ingresar a la línea de comando, ejecutar sysmon.exe -i sysmon5311.txt, prestar especial atención a la necesidad de derechos de administrador (puede hacer clic con el botón derecho para obtener derechos de administrador al ejecutar cmd)
  • Corre exitosamente
  • Busque para abrir la administración de la computadora, seleccione Visor de eventos / Registro de servicios / Microsoft / Windows / Sysmon / Operational
  • Puedes ver los detalles del registro
  • Genere software de puerta trasera en Kali y póngalo en el sistema
  • Abra el visor de eventos y, después de actualizar, encontraremos el mensaje relevante de la puerta trasera que se acaba de ejecutar de acuerdo con el tiempo de ejecución.
  • Vuelva a kali, use webcam_snappara tomar una foto, puede ver algunos registros más en el visor de eventos. Dado que se produjo un error en Kali, vimos el proceso Werfault.exe en el visor de eventos, que es un programa de informe de errores que viene con el sistema Windows. También vimos el proceso svchost.exe, que también es un programa en segundo plano que viene con el sistema Windows.


  • Escribí dir en kali para ver el archivo de directorio actual, y algunos mensajes más aparecieron inmediatamente en el visor de eventos. Hay un proceso SearchProtocolHost.exe, después de la vista de Baidu, se descubre que es un proceso de indexación de motor de búsqueda de escritorio, que también explica la información del archivo de escritorio que salta después de ingresar dir. También hay un proceso conhost.exe, el nombre completo es Console Host Process, que es el proceso de host del programa de línea de comandos. En pocas palabras, es un nuevo mecanismo de procesamiento de aplicaciones de consola introducido por Microsoft por razones de seguridad.


3. Use VirusTotal para analizar malware

  • Aquí, el programa de puerta trasera de shell comprimido hjd20175311.upxed.exe generado en el Experimento 3 se usó para escanear en VirusTotal. Los resultados son los siguientes. Puede ver que la tasa de detección de archivos es bastante alta. Puede ver su SHA-1, valor de resumen MD5, tipo de archivo, tamaño de archivo y resultados de reconocimiento de tipo de archivo TRiD.

  • Hay algún soporte de biblioteca de algoritmos de código malicioso

4. Use PEiD para analizar malware

  • Busque y descargue PEiD v0.95 en Baidu, descomprima la instalación e inicie, y escanee los archivos de proceso específicos
  • Desempaquetado
  • Carcasa de compresión
  • Shell de cifrado
  • Cifrado más carcasa comprimida
  • A través de los resultados de cuatro experimentos, podemos ver que no se puede identificar ningún software de shell con cifrado.

5. Use Systracer para analizar malware

  • Primero descargue Systracer de la información proporcionada por el profesor e instálelo después de completarlo.Los pasos son: de acuerdo-> seleccione el segundo


    * configure el número de puerto de escucha
  • Tome una instantánea antes de abrir la puerta trasera, haga clic en "tomar instantánea", como se muestra en la figura, siga los pasos a continuación. Mostrar Snapshop # 1 cuando haya terminado

  • Después de que se implanta el malware, se realiza un registro y, una vez completado, se muestra Snapshop # 2; después de que se vuelve a conectar el malware, se muestra el registro y, una vez completado, se muestra Snapshop # 3; después de realizar la operación correspondiente en el terminal de kali, se selecciona el registro. Aquí, se seleccionan y completan webcam_snap y ls Después de mostrar Snapshop # 4
  • Comparando snapshop # 1 y # 2, todos los lugares marcados en azul son los lugares que han cambiado antes y después. Por ejemplo, vimos archivos de programa de puerta trasera que agregué antes y después. Hay muchos archivos agregados y eliminados.

  • Compare la instantánea # 2 y la # 3, puede ver que hay más puertas traseras en el proceso de ejecución, algunos valores de salud están implantados y también puede ver la información específica de los archivos agregados y eliminados


  • Comparando snapshop # 3 y # 4, ejecuté el comando ls y el comando de foto aquí, por lo que debería poder ver los cambios de inicio de las cámaras relacionadas y otros dispositivos en el host. Pero no sé por qué no hay registro aquí


6. Use wireshark para el análisis de captura de paquetes

  • Abra wireshark y seleccione el modo wlan. Después de comenzar a capturar paquetes, la máquina inicia un programa malicioso para volver a conectarse a la máquina virtual kali. Después de que la conexión se realiza correctamente, deja de capturar paquetes y entra en condiciones de filtro ip.addr == 192.168.1.102para ver
  • A través de la información de captura de paquetes, puede ver que se ha establecido la conexión de protocolo de enlace de tres vías TCP. Este debería ser el paquete de datos generado cuando la conexión se recupera.
  • Luego use pwd``ls``webcam_snapotros comandos para analizar los paquetes de datos generados. webcam_snapSe generan múltiples registros durante el uso , que deberían ser causados ​​por la operación requerida al tomar fotos y la memoria ocupada.

3. Requisitos experimentales

Preguntas después del experimento.

Pregunta 1: Si sospecha que hay un código malicioso en un host en el trabajo, pero solo adivine, todo lo que desea es monitorear lo que hace el sistema todos los días. Diseñe qué operaciones desea monitorear y qué método usar para monitorear.

  • A través de este experimento, podemos usar el software utilizado en este experimento para ver.
    • Utilice las tareas programadas de Windows para monitorear, puede verificar si hay procesos sospechosos en ejecución, conexión de red, conexión de puerto y datos estadísticos para el análisis
    • Puede usar Sysmon para configurar las opciones que desea ver, como conexión de red, información de registro, etc., para ver y analizar a través de los registros generados
    • Puede usar Systracer para registrar direccionalmente el proceso de ejecución actual para la comparación de "fotos"
    • Use la herramienta Wireshark: capture paquetes de datos y analice el flujo de datos para ver direcciones IP sospechosas y números de puerto
    • Use la herramienta PEiD: verifique si un programa está empaquetado y analice el contenido

Pregunta 2: Si ha determinado que un programa o proceso tiene un problema, ¿qué herramientas tiene para obtener más información al respecto?

  • Puede usar VirusTotal para verificar; puede usar Systracer para analizar y ver sus modificaciones en el registro y los archivos; puede usar wireshark para analizar la captura de paquetes para ver a qué ip está conectado y qué comunicación tiene con el mundo exterior.

4. pensamientos experimentales

  • Este es el cuarto experimento de la tecnología de confrontación cibernética, y cada experimento es extremadamente difícil. La dificultad de este experimento no es muy grande, principalmente la aplicación de algún software relacionado y el análisis de datos relacionados, pero todavía es relativamente lento y requiere mucho trabajo. Creo que el punto que consume más tiempo es que no sé por dónde empezar cuando encuentro un montón de datos. Todavía no estoy familiarizado con las cosas que acabo de tocar, y no sé las características del código malicioso. Mucha práctica y energía. Sin embargo, después de esto, tengo una mejor comprensión de algunos procesos del sistema. A través del análisis del código malicioso, también me hace comprender mejor el comportamiento y las características del código malicioso. Vamos ~

Supongo que te gusta

Origin www.cnblogs.com/hujidong42/p/12699254.html
Recomendado
Clasificación