Registrierung Kalender Mitgliederliste Teammitglieder Suche Häufig gestellte Fragen Zur Startseite

Informatiker Board » Suche » Suchergebnis » Hallo Gast [Anmelden|Registrieren]
Zeige Beiträge 1 bis 1 von 1 Treffern
Autor Beitrag
Thema: Buffer Overflow für login bei C-Programm
DienerAl

Antworten: 2
Hits: 3.929
Buffer Overflow für login bei C-Programm 13.01.2016 12:12 Forum: Softwaretechnik


Guten Tag,
ich würde mich gerne bei folgendem Programm mit einem Buffer overflow einloggen können als Übung. Das password kenne ich dabei nicht. Nun habe ich bereits vieles versucht, beispielsweise username mit vielen Zeichen zu überladen, das userPassword zu überladen. Jedoch habe ich wahrscheinlich einen Denkfehler wie der Stack aufgebaut ist. Mir fehlt im Moment jeder Ansatz für die Lösung.

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
#include <stdio.h>
#include <stdlib.h>

int main() {
    int password = 12341234;
    char username[10];
    char userPassword[10];

    printf("Enter username:");
    gets(username);
    printf("Enter password:");
    gets(userPassword);

    int inputCode = atoi(userPassword);

    if (inputCode == password) {
        printf("Logged in.\n");
    } else {
        printf("Wrong passcode.\n");
    }
}


Unter Linux habe ich bereits mit gdb mir den Assembler Code angesehen, und ich vermute, dass ich irgendwie die Rücksprungadresse verändern muss oder so. Aber wie gesagt, mir fehlt selbst der Ansatz zu einer Lösung.
Kann mir da bitte jemand helfen?
Zeige Beiträge 1 bis 1 von 1 Treffern