Udfordringer » Tree Traverse

På 10.200.43.12:9191 ligger denne service: 97d9be2162a7cd33f26694096d8cb7df

Den holder et ubalanceret træ af disse strukturer i hukommelsen:

typedef struct _tree_t {
    struct _tree_t * left;
    void * data;
    struct _tree_t * right;
} tree_t;

 Data pointeren peger på denne struktur:

#define STR_SIZE 128
typedef struct _pair_t {
     int first;
     int second;
     char str[STR_SIZE];
} pair_t;

Kun ét pair_t element har en first og second member med summen 100. Skriv en shellcode, der kan finde dette element og hive tekststrengen ud. Den vil indeholde nøglen, som I skal sende tilbage til mig.

Dette er ikke en exploit opgave. Alt hvad I sender til servicen vil blive placeret i et eksekverbart hukommelsesområde og umiddelbart efter blive eksekveret (men 0x00 og 0x0a er bad characters). Adressen på rod elementet er i RDI registret.

 

200 til første svar, 100 til resten.

Løst af:

  1. Pwnies - 200 point