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

 

 


Tema destacado: Guía actualizada para evitar que un ransomware ataque tu empresa


  Mostrar Temas
Páginas: 1 2 3 4 5 6 7 8 9 [10] 11 12
91  Programación / ASM / Distincion entre el Directorio de Paginas y la Tabla de Paginas. en: 25 Julio 2020, 16:26 pm
Hola,
en modo protegido (paginado) la forma de acceso es a traves de un indice en el Directorio de Paginas que a su vez es un indice a la Tabla de paginas del proceso, lo cual resulta al fin y al cabo en la pagina fisica, sobre la cual se calcula la direccion efectiva a traves de los 12 bits menos significativos de la direccion lineal, segun la arquitectura de Intel IA-32. Esto me hace dudar de varias cosas: primero, ¿por que es necesaria una Tabla de Paginas? digo... bastaria con un solo directorio mediante el cual acceder a las correspondientes paginas del sistema, ¿no? (¿por que dos estructuras si una puede hacer mas eficientemente el trabajo?) se que nadie aqui es ingeniero de Intel, pero debe haber una razon; segundo, ¿por que entonces es necesaria la Tabla de Descriptores Global? me explico: la direccion base del Directorio de Paginas se encuentra en el registro CR3 del proceso en cuestion, mediante los 10 bits mas altos de la direccion lineal se deduce el indice en la misma y blablabla, todo lo que dije antes... pero, ¿que caso tiene entonces la GDT? ¿a que viene si la direccion se esta deduciendo basicamente a partir de la sistematica de la paginacion? ¿no se utiliza?

Saludos y, de antemano, gracias por la respuesta.


Resulta que la respuesta estaba en Wikipedia... es una cuestion de multinivel:
https://en.wikipedia.org/wiki/Page_table
92  Sistemas Operativos / Windows / Un problema con WinDbg en modo kernel local. en: 23 Julio 2020, 18:37 pm
Desde ayer quiero leer la GDT y sus amigos. Estoy utilizando WinDbg en modo kernel y como depuracion local. Ya active el modo /debug con BCDEDIT y su configuracion como Local. Sin embargo no puedo leer los valores la memoria virtual; obtengo esta salida en la linea de comandos de KD:

Código:
lkd> d 0 f
00000000  ?? ?? ?? ?? ?? ?? ?? ??-?? ?? ?? ?? ?? ?? ?? ??  ????????????????

Admito que son mis primeros pasos en la depuracion del kernel. La verdad no tengo ni idea de por que no puedo leer los valores de la memoria. (Y, sin embargo, puedo leer los correspondientes PDEs y PTEs a una direccion virtual, lo cual me confunde).

¿alguien mas listo que yo?

Saludos.
93  Foros Generales / Foro Libre / ¿alguien conoce esta historia? en: 21 Julio 2020, 12:30 pm
Hola,

llevo un rato buscando en Google el nombre de esta historia que lei en algun momento y no encuentro. Con la variedad congnitiva de este foro, me preguntaba si alguien la conoce...

Se trata de una montaña de oro celestial en la cual los reyes y grandes lideres escribian sus nombres, como un simbolo honorable de su reinado en la tierra. Sin embargo, cada vez que un nuevo rey moria, debia borrar el nombre de algun otro para escribir el suyo debido al espacio real limitado.

Saludos y gracias de antemano.
94  Sistemas Operativos / Windows / Esquema (casi) completo del formato PE de Windows. en: 20 Julio 2020, 15:59 pm
Hace tiempo ya que llevo estudiando en profundidad el formato PE, y algo tedioso es revisar la MSDN o a winnt.h a cada rato por referencias de las estructuras, asi que hice un esquema (casi) completo del formato y pense que le podria ser util a alguien:

https://i.imgur.com/TzgDSRz.png
Nota: los numeros a un lado (derecho o izquierdo segun lo considere conveniente) de los miembros de las estructuras definen la direccion relativa a la base de la estrutura de cada uno, para evitar el calculo.

Ademas, para los que no entiendan ni pio ni a buenas primeras, he aqui varias de las referencias que utilice:

https://tech-zealots.com/malware-analysis/pe-portable-executable-structure-malware-analysis-part-2/
https://es.wikipedia.org/wiki/Portable_Executable
https://en.wikipedia.org/wiki/Data_structure_alignment
https://blog.kowalczyk.info/articles/pefileformat.html
95  Programación / ASM / ¿que significa exactamente el alineamiento? en: 14 Julio 2020, 18:44 pm
Hola,

estoy inseguro de si entiendo el significado de "alineamiento" cuando se habla de programacion en ensamblador y otras categorias; segun lo que hasta ahora se, el alineamiento es el ambito de acceso. Sin embargo, ¿es eso exactamente?

Por ejemplo, existe un miembro de la estructura IMAGE_OPTIONAL_HEADER del formato PE llamado FileAlignment (cosa que no entiendo: ¿por que alinear un archivo en disco? ¿o se trata mas bien de informacion para la paginacion?). Ademas, MASM tiene ciertos atributos para la declaracion de segmentos que puede ser BYTE, WORD, PARA, etcetera, ¿se refiere esto solo al ambito del segmento que debe calcular el ensamblador? ¿o va mas alla de esto?.

Gracias de antemano.
96  Sistemas Operativos / Windows / Funcion indocumentada RtlAdjustPrivilege en: 14 Julio 2020, 15:40 pm
Forma parte de la libreria ntdll.dll de Windows... me parece curioso el nombre y, a pesar de encontrar su definicion en Internet:

Código
  1. NTSTATUS RtlAdjustPrivilege
  2. (
  3.  ULONG    Privilege,
  4.  BOOLEAN  Enable,
  5.  BOOLEAN  CurrentThread,
  6.  PBOOLEAN Enabled
  7. )

no encontre una explicacion tan buena de su funcionamiento (solo comentarios con descripciones de los parametros), ademas de no estar documentada por Microsoft.

¿alguien sabe de que se trata exactamente? cualquier conocimiento seria util...

Saludos.
97  Programación / ASM / Documentacion de TASM. en: 9 Julio 2020, 17:50 pm
Hola,

he estado estudiando la guia de usuario de TASM 5:

http://bitsavers.informatik.uni-stuttgart.de/pdf/borland/turbo_assembler/Turbo_Assembler_Version_5_Users_Guide.pdf

sin embargo el manual me parece estar muy desordenado, ademas de no cubrir la profundidad del modo IDEAL de TASM (no el modo MASM).

Me preguntaba si alguien sabe de una direccion u otro manual que desarrolle TASM de una manera mas "adecuada" y, especialmente, mas profunda. Tambien agradeceria referencias a documentacion para la programacion de objetos (en TASM).

Gracias.
Saludos.
98  Sistemas Operativos / Windows / ¿Como es la forma de almacenamiento de directorios en el sistema de archivos... en: 5 Junio 2020, 16:33 pm
...FAT?

Hola, estaba leyendo el siguiente tratado sobre el sistema de archivos FAT:

http://www.disc.ua.es/~gil/FAT12Description.pdf

Y no me ha quedado suficientemente claro la manera en la que se almacenan los directorios aunque entiendo bien lo mismo respecto a los archivos. Segun el enlace anterior, un directorio es basicamente un archivo. Entiendo a lo que probablemente se refiere: que el archivo en este caso (un sector), que es el directorio, almacena direcciones y descripciones de subdirectorios y archivos, haciendo posible lo que seria una estructura de arbol, lo cual es eo objetivo. Mis preguntas concretas, ademas de querer aclarar esto, si no es molestia, son:

¿si cada entrada de directorio es de 32 bits en cada sector (de 512 bits), entonces un directorio puede tener unicamente 16 entradas?.
¿un descriptor de directorio, por llamarle asi a una entrada, se considera tambien una FAT? Se me ocurre porque tambien es basicamente una tabla, sin embargo no se encuentra en la zona FAT del sistema.
¿Un cluster se define unicamente como un conjunto de sectores contiguos (ojo, logicamente contiguos, FAT es una lista enlazada)?.

Muchas gracias de antemano. Saludos.
99  Seguridad Informática / Análisis y Diseño de Malware / Desbordamiento de pila moderno en: 4 Junio 2020, 13:20 pm
Hola,

Hay algo que me da mucha curiosidad ultimamente... y es que, si en los sistemas modernos (es decir, sistemas que funcionan en modo protegido) existe toda la integridad que permiten las entradas de la tabla GDT, ¿como es posible explotar un desbordamiento de pila?. Es decir, es facil deducir que tanto la pila como los datos del programa se accederan atraves de entradas en la estructura asignadas como datos. Es decir, si se produce un desbordamiento y, por ejemplo, se reescribe el retorno de la funcion que se ejecuta con una posicion de la misma pila (no podemos escribir en ninguna otra parte) entonces, cuando se acceda a la entrada del segmento de pila en la GDT (de datos) ¿el sistema operativo no detendria el programa por (intentar) ejecutar en un segmento de datos?.

Y si es asi, ¿entonces ya no es posible explotar desbordamientos de pila?.

Dejemos de lado las inconsistencias que podrian haber en un sistema real, yo me refiero especificamente a un sistema de modo protegido que sea ideal.

Saludos.


PD: ¿Estoy siendo demasiado ingenuo preguntando esto? xd
100  Informática / Hardware / Unidad de almacenamiento secundario en: 3 Junio 2020, 20:36 pm
Hola,

hago este tema porque me encuentro un poco confundido respecto a la unidad basica de almacenamiento secundario. Esta confusion viene de haber leido el siguiente articulo de Wikipedia:

https://es.wikipedia.org/wiki/Cilindro-Cabezal-Sector

CHS es un modo de acceso. Segun este modo, el primer sector que se encuentra en el primer cabezal del primer cilindro se expresa como 0/0/1, es decir, en una forma Cylinder/Header/Sector (notese la ausencia de una especificacion de un indice en tal sector). ¿quiere decir esto que para el controlador del sistema de archivos acceder a un byte en el disco, debe acceder necesariamente a los 512 bytes del sector en el que se encuentra?
Páginas: 1 2 3 4 5 6 7 8 9 [10] 11 12
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines