elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Usando Git para manipular el directorio de trabajo, el índice y commits (segunda parte)


  Mostrar Temas
Páginas: [1]
1  Seguridad Informática / Hacking / [Linux] Inyección DLL sin LD_PRELOAD en: 15 Abril 2020, 15:03 pm
Hola a todos,

Tengo una biblioteca dinámica que intercepta algunas llamadas al sistema como fopen, sendto, recvfrom, etc. Por ahora me las arreglo usando LD_PRELOAD para cargarla, pero me preguntaba si no hay alguna técnica más "limpia" de hacer esto. Es decir: el programa que estoy modificando de por sí usa LD_PRELOAD para compatibilidad entre distribuciones, y no me gustaría arruniar algo de esto, preferiría modificar el  binario en sí.

Si sirve de algo, el binario es un ELF 32bits ARMv7 y es relativamente fácil de parchear.

Saludos y muchas gracias.
2  Seguridad Informática / Criptografía / Programa para probar funciones hash en: 20 Octubre 2019, 22:06 pm
Hola a todos.

Estoy desarrollando una función hash y quiero probarla, al parecer mis scripts de pruebas no funcionan, ya que estuve semanas con una función que creía que 'A' == 'P' sin darme cuenta...  :rolleyes:

He aquí mi duda: ¿hay algún programa que implemente (todas) las pruebas de la competición SHA-3 del NIST sobre la función hash especificada?

Muchas gracias de antemano.
3  Programación / Scripting / Antivirus en Batch en: 24 Febrero 2019, 22:18 pm
Hola a todos, este es mi segundo tema en el foro y el primero en la sección "Scripting".

Hace un tiempo -dos días para mi son "un tiempo"- que vengo trabajando en un cleaner o antivirus para memorias externas (pendrives, USBs, tarjetas SD, miniSD y microSD, etc.). Este pequeño programa escrito en Batch limpia y vacuna el dispositivo de almacenamiento externo, detecta si hay malware alojado en él y, si es así, realiza las acciones necesarias para eliminarlo.

Mi programa es muy simple, se ejecuta en la consola de Windows y ni siquiera posee interfaz gráfica. Pronto le agregaré una de estas, que permitirá que tenga más opciones de configuración.

A continuación les dejo el código fuente.
Código
  1. @echo off
  2. title Advanced USB Batch Antivirus
  3. color F0
  4.  
  5. echo Bienvenido a AUBA (Advanced USB Batch Antivirus).
  6. echo ADVERTENCIA: Este programa puede borrar contenido o información importante. Úselo bajo su propio riesgo.
  7.  
  8. set /p init=¿Desea continuar? [s/N]
  9. if not %init% == s (
  10. cls
  11. goto end
  12. ) else (
  13. cls
  14. )
  15.  
  16. set /p unit=Ingrese a continuación la letra de la unidad que desea analizar
  17.  
  18. echo Cambiándole los atributos a los archivos...
  19. attrib /d /s -r -h -s %unit%:\*
  20.  
  21. if exist %unit%:\*.lnk (
  22. echo Eliminando los archivos de tipo MIME application/x-ms-shortcut...
  23. del /f %unit%:\*.lnk
  24. )
  25.  
  26. if exist %unit%:\autorun.inf (
  27. echo Eliminando el archivo autorun.inf...
  28. del /f %unit%:\autorun.inf
  29. )
  30.  
  31. if exist %unit%:\Recycler.exe (
  32. echo Virus detectado: Win32:Folder/RECYCLER_BIN
  33. echo Eliminando el virus Win32:Folder/RECYCLER_BIN...
  34. del /f %unit%:\Recycler.exe
  35. )
  36.  
  37. if exist %unit%:\Desktop.ini (
  38. echo Eliminando el archivo Desktop.ini...
  39. del /f %unit%:\Desktop.ini
  40. )
  41.  
  42. if exist %unit%:\mugen.vbs (
  43. echo Virus detectado: Win32:VBS/Mugen
  44. echo Eliminando el virus Win32:VBS/Mugen...
  45. del /f %unit%:\mugen.vbs
  46. )
  47.  
  48. if exist %unit%:\eicar.* (
  49. echo Archivo de prueba detecado: DOS:Test/EICAR_Test_File
  50. echo Eliminando el archivo de prueba DOS:Test/EICAR_Test_File...
  51. del /f %unit%:\eicar.*
  52. )
  53.  
  54. if exist %unit%:\*update.vbs (
  55. echo Troyano detectado: Win32:VBS/Update_Downloader
  56. echo Eliminando el troyano Win32:VBS/Update_Downloader...
  57. del /f %unit%:\*update.vbs
  58. )
  59.  
  60. if exist %unit%:\runauto\ (
  61. echo Eliminando la carpeta runauto...
  62. rmdir /s %unit%:\runauto\
  63. )
  64.  
  65. if exist %unit%:\RECYCLER\ (
  66. echo Virus detectado: Win32:Folder/RECYCLER_BIN
  67. echo Eliminando la carpeta RECYCLER...
  68. rmdir /s %unit%:\RECYCLER\
  69. )
  70.  
  71. if exist %unit%:\Recycler\ (
  72. echo Virus detectado: Win32:Folder/RECYCLER_BIN
  73. echo Eliminando la carpeta Recycler...
  74. rmdir /s %unit%:\Recycler\
  75. )
  76.  
  77. if exist %unit%:\$RECYCLE.BIN\ (
  78. echo Virus detectado: Win32:Folder/RECYCLER_BIN
  79. echo Eliminando la papelera de reciclaje (carpeta $RECYCLE.BIN)...
  80. rmdir /s %unit%:\$RECYCLE.BIN\
  81. )
  82.  
  83. if exist %AppData%\mugen.vbs (
  84. echo Virus detectado: Win32:VBS/Mugen
  85. echo Eliminando los procesos wscript.exe y cscript.exe...
  86. taskkill /im wscript.exe /f
  87. taskkill /im cscript.exe /f
  88. echo Eliminando el virus Win32:VBS/Mugen...
  89. del /f %AppData%\mugen.vbs
  90. )
  91.  
  92. if exist %Temp%\conhost.exe (
  93. echo Gusano detectado: Win32:Folder/Conhost_PE
  94. echo Eliminando el proceso conhost.exe...
  95. taskkill /im conhost.exe /f
  96. echo Eliminando el gusano Win32:Folder/Conhost_PE...
  97. del /f %Temp%\conhost.exe
  98. echo Eliminando los archivos de tipo MIME application/x-msdownload...
  99. del /f *.exe
  100. )
  101.  
  102. if exist C:\$RECYCLE.BIN\ (
  103. echo Virus detectado: Win32:Folder/RECYCLER_BIN
  104. echo Eliminando la papelera de reciclaje (carpeta $RECYCLE.BIN)...
  105. rmdir /s C:\$RECYCLE.BIN\
  106. )
  107.  
  108. echo Escribiendo archivo autourun.inf preventivo...
  109. echo 00 > %unit%:\autorun.inf
  110. echo Cambiándole los atributos al archivo autorun.inf...
  111. attrib +h +r +s %unit%:\autorun.inf
  112.  
  113. echo Eliminando la entrada del registro HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run...
  114. reg delete HKCU\Software\Microsoft\Windows\CurrentVersion\Run /va /f
  115. echo Sobrescribiendo archivo hosts a su configuración de fábrica...
  116. echo # 127.0.0.1 localhost > C:\Windows\System32\drivers\etc\hosts
  117.  
  118. echo Limpieza completa. Considere utilizar un antivirus para asegurar su computadora y prevenir futuras infecciones.
  119. :end
  120. echo Ejecución terminada. Gracias por usar AUBA.
  121. pause>nul
  122.  

Espero comentarios, críticas y contribuciones pronto.
Gracias.
4  Programación / Programación General / ¡Creemos un sistema operativo! en: 9 Diciembre 2018, 01:16 am
Buenos días, soy nuevo en el foro pero vengo leyendo temas acá desde hace 2 años (más o menos).
Tengo una idea de un proyecto que, por lo que leí, otros ya tuvieron y fracasaron: mi idea es crear un sistema operativo simple (nótese que utilizo esta palabra como sinónimo de "limitado" :rolleyes:).

¿A qué me refiero con "sistema operativo"?
Bueno, me refiero a:
  • Un kernel
  • Un shell con comandos built-in
  • Una API
  • Una biblioteca estándar

El orden en el que están los items es el orden de importancia que yo le doy a cada uno.

¿Puedo aclarar/especificar un poco más acerca de mi idea?
Sí, sí puedo: Mi idea es programar un microkernel que:
  • Esté programado principalmente en ANSI C (algunas partes del código requerirán ensamblador)
  • Cumpla con la especificación multiboot para poder cargarlo desde GRUB
  • Tenga un controlador VGA simple para modo texto
  • Cuente con una shell con comandos buil-in
  • Pueda cargar binarios en formato plano
  • Cuente con una API
  • Cuente con una biblioteca estándar

¿Qué nombre le pondremos al sistema?
Preguntas como esta (y relacionadas) son las que causaron que otros proyectos no hayan llegado a nada.

¿Vamos a usar Git, SVN o algo parecido?
Sí, al menos es lo que planeo hacer yo. Yo estoy bastante familiarizado con Git y GitHub así que, si el proyecto atrae interesados, crearé un repositorio en GitHub (es accesible desde la web) con un nombre aleatorio que puede que sea el definitivo o no (probablemente no).

¿Para que arquitectura desarrollaremos?
Personalmente yo prefiero empezar con la arquitectura x86 (del 80386 para arriba), ya que es la que la mayoría de las computadoras actuales posee y el código compilado para x86 puede ser ejecutado en x86_64, la otra arquitectura "popular" (en realidad la más popular es armhf, pero estamos hablando de computadoras, no de sistemas embebidos ni celulares :().

¿Y el bootloader?
La idea principal del proyecto no es crear un bootloader, pero si alguno desea desarrollar uno ¡adelante!.

¿Qué pasará con los estándares?
Por ahí en el foro hay gente muy preocupada con el tema, así que acá va una respuesta corta y concisa: Siempre que sea posible deberíamos cumplir con los estándares POSIX (lo que no significa que el proyecto se convierta en una distribución GNU/Linux).


Y bueno, hasta acá con mi propuesta, espero atraer desarrolladores, interesados o futuros usuarios. Cualquier aporte u opinión será bien recibido/a.

P.D.: Pronto empezaré a publicar código que tengo por ahí guardado sobre el tema.

Enlaces de interés:
https://wiki.osdev.org/
http://www.osdever.net/
https://github.com/aarroyoc/next-divel
http://www.jamesmolloy.co.uk/
http://www.brokenthorn.com/Resources/
https://www.tutorialspoint.com/operating_system/
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines