Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - x64core

#41
No sé si exista una funcion especifica en C++ para obtener el nombre del CPU, pero especifico en Windows hay varias maneras de obtener el nombre: instrucción CPUID, WMI y el registro.

El registro es el menos recomendado, tratar de leer especificas direcciónes del resgitro no es seguro, se debe evitar lo más posible.

Instrucción CPUID: https://en.wikipedia.org/wiki/CPUID
La más detallada información la encontras en los PDFs de intel. CPUID se puede utilizar para obtener cierta información del procesador(es): nombre, nucleos, caracteristicas, etc.

Al menos en VC++ exista una funcion __cpuid que sirve para generar una instruccion cpuid dejando al compilador asunto como optimización y demás, sin usar ensamblador en el código C/C++.



#42
Cita de: SheKeL_C$ en 22 Junio 2015, 21:57 PM
Si hago la diferencia entre el entrypoint  (0x2E74) y la localizacion en el editor (0x2274) me da 0xC00..

De donde sale ese dato??
La RVA de la sección del punto de entrada ( IMAGE_SECTION_HEADER.VirtualAddress ) menos el tamaño de las cabeceras ( IMAGE_OPTIONAL_HEADER.SizeofHeaders ).

Cita de: SheKeL_C$ en 22 Junio 2015, 21:57 PM
Como puedo posicionarme en un archivo al abrirlo en la direccion fisica (real) donde empezaria el programa?
Muchos programas, uno simple es PEID: https://tuts4you.com/download.php?view.398
al cargarlo muestra "File Offset", copiarlo y saltar a ese offset con el editor hexadecimal, ahi se debe de encontrar la primera instruccion.

MCKSys Argentina, Si es mediante código entonces seria trasladar un RVA a offset, el campo en IMAGE_OPTIONAL_HEADE.AddressOfEntryPoint es una valor relativo a la direccion base no un offset:


// VC++
ULONG RVAToOffset(
    _Out_ PDWORD OffsetPtr,
    _In_ PIMAGE_NT_HEADERS NT,
    _In_ DWORD RVA
    )
{
    PIMAGE_SECTION_HEADER Img;
    DWORD Limit;
    DWORD Offset;

    Offset = RVA;
    Img = IMAGE_FIRST_SECTION(NT);

    if (RVA < Img[0].PointerToRawData)
    {
        *OffsetPtr = Offset;
        return 0;
    }

    for (WORD i = 0; i < NT->FileHeader.NumberOfSections; i++)
    {
        if (Img[i].SizeOfRawData)
        {
            Limit = Img[i].SizeOfRawData;
        }
        else
        {
            Limit = Img[i].Misc.VirtualSize;
        }

        if (RVA >= Img[i].VirtualAddress &&
            RVA < (Img[i].VirtualAddress + Limit))
        {
            if (Img[i].PointerToRawData &&
                Img[i].SizeOfRawData)
            {
                Offset -= Img[i].VirtualAddress;
                Offset += Img[i].PointerToRawData;
                *OffsetPtr = Offset;

                return 0;
            }
        }
    }

    return 1;
}
#43
Visual Studio (Version recomendada 2013), tiene caracteristicas que no he visto en otros : )
#44
Ambas instalaciones "frescas" sin ninguna actualización o algo.
#45
En mi 8.1 no muestra nada solo se cierra. Otra cosa: ¿Aceptando criticas constructivas? ->
Ya que es un aplicación basada en el escaneo de la imagen PE y ciertos patrones que se encuentren puede que te interese agregar caracteristicas como:

- Detección de anomalias en la imagen PE: Analisis del Rich Signature, Secciónes de código con privileges inusuales ( Ejecución y escritura ), analysis de FileHeader->TimeDataStamp, analisisi de OptionalHeader->CheckSum, numero de secciones y muchisimas cosas que se pueden analizar.
- Escaneo y analisis de todos los directorios del PE:
    + Import/IAT: Blacklist de simbolos/functiones importadas comúnmente usadas en Malware ( Ejemplo: AdjustTokenPrivileges, DuplicateToken, etc ).
    + Debug: mostrar posible información de depuración.
    + Resource: Usar esos mismos algoritmos para escanear por posibles imagenes PE en los recursos u otro tipo de patrones en cada recurso, además de encontrar inconsistencias en la estructura.
Todo eso si lo escribes de forma modular seguro que se te hará facil agregar funciones para la deteccion de posible Packers, Crypters, obfuscadores, etc.
#46
En Windows XP (32-bits) muestra varios mensajes de errores del RunTime al intentar probarlo: "Invalid procedure call or argument", "Path not found".

En Windows 7 (32/64-bits) funcionó como deberia supongo.

En Windows 8.1 (64-bits) el programa genera una excepcion sin mostrar algun mensaje y se cierra. Lo intenté con programas como notepad, mspaint y con muestras.
#47
https://www.sendspace.com/file/py495u
#48
Cita de: WinstoxX en 11 Junio 2015, 22:15 PM
Buenas, estaba intentanto hacer un troyano, pero mi conexion es dinamica, que eso realmente no es un problema, pero mi proveedor de internet me da muy poco de MB... y tenia pensado hacer el troyano en una VPS, mi pregunta es como?
Saludos
Diciendo "hacer un troyano" te referis a programar un troyano? o mejor dicho a instalar y usar un troyano o ambas?
#49
y han intentado usar una herramienta como Process Monitor? Digo, no es que no crea que esto es cierto, de hecho esto no es nuevo, todos sabemos que Windows recolecta una gran cantidad de información del sistema ya han habido muchisimos temas sobre esto pero ahora suena como que más de lo normal?

Al menos para mi tengo un Win7 x64 y Win8.1 x64. y no he tenido alguna sospecha sobre este tema siendo paranoico.
#50
Cita de: Cabebia en 10 Junio 2015, 12:16 PM
Pero no entiendo me estas diciendo que no use esos troyanos y me pasas el link de uno de ellos. ¿En que quedamos :xD ? Se que lo mejor es crear un troyano propio pero no encuentro ningun tutondesente , todos estan caidos  :-\
No uses los viejos, los que mencione. el Darkcomet es más reciente, simple y funciona desde XP a 8.1.