logo Homepage
+  NewbieContest
|-+  Challenges» Aide Wargame» Wargame - Bof
Username:
Password:
Pages: [1] 2
  Retourner à l'épreuve    Imprimer  
Auteur Fil de discussion: Wargame - Bof  (Lu 27467 fois)
ufox
Administrateur

Profil challenge

Classement : 53/54743

Néophyte
*****
Hors ligne Hors ligne
Messages: 10


Voir le profil WWW
« le: 14 Juin 2015 à 21:44:47 »

Postez ici vos messages.
Journalisée
matthieu1984
Profil challenge

Classement : 262/54743

Néophyte
*
Hors ligne Hors ligne
Messages: 15


Voir le profil
« #1 le: 18 Juin 2015 à 17:00:25 »

J'obtiens :

Code:
level01a@wargame:~$ ./bin01a
-bash: ./bin01a : fichier binaire impossible à lancer
level01a@wargame:~$ ./bin01a coucou
-bash: ./bin01a : fichier binaire impossible à lancer
level01a@wargame:~$

ça fait parti de l'épreuve ou il y a un BUG ?
Journalisée
pixis
Administrateur

Profil challenge

Classement : 17/54743

Membre Héroïque
*****
Hors ligne Hors ligne
Messages: 665


Voir le profil WWW
« #2 le: 18 Juin 2015 à 17:11:08 »

Ce n'est pas le comportement attendu, les admins sont prévenus, ça devrait être corrigé dans la soirée.

J'ai rien fait. Non, c'est pas moi.
Journalisée

Newbie Contest Staff :
Pixis
Statut :
Administrateur
Blog :
hackndo
matthieu1984
Profil challenge

Classement : 262/54743

Néophyte
*
Hors ligne Hors ligne
Messages: 15


Voir le profil
« #3 le: 18 Juin 2015 à 17:30:43 »

Ok, Danke
Journalisée
ufox
Administrateur

Profil challenge

Classement : 53/54743

Néophyte
*****
Hors ligne Hors ligne
Messages: 10


Voir le profil WWW
« #4 le: 18 Juin 2015 à 21:11:00 »

C'est corrigé. Désolé pour le contretemps.
Journalisée
ITPPA

Profil challenge

Classement : 295/54743

Néophyte
*
Hors ligne Hors ligne
Messages: 24


Voir le profil
« #5 le: 04 Septembre 2015 à 13:13:45 »

Bon, 8h que je suis dessus, tjr pas d'exploit.
Je vais peut etre commencer par les niveaux plus bas en faire 

Journalisée

Linux is simple, It just takes a genius to understand its simplicity
pixis
Administrateur

Profil challenge

Classement : 17/54743

Membre Héroïque
*****
Hors ligne Hors ligne
Messages: 665


Voir le profil WWW
« #6 le: 04 Septembre 2015 à 13:25:22 »

Fais la première, puis reviens sur celle-ci.

Dans l'ordre de difficulté, c'est la deuxième à faire, entre "shell" et "bof bof", théoriquement.

Bon courage !
Journalisée

Newbie Contest Staff :
Pixis
Statut :
Administrateur
Blog :
hackndo
ITPPA

Profil challenge

Classement : 295/54743

Néophyte
*
Hors ligne Hors ligne
Messages: 24


Voir le profil
« #7 le: 04 Septembre 2015 à 14:46:58 »

merci de cette réponse, ça promet!

Pour info, j'ai créer et compilé deux fichier dans /tmp (bof.c et bof2.c)

Je les ai copies dans un répertoire

Si un su passe par la, vous pouvez supprimer, je bosserais dans mon dossier perso maintenant (plus mieux).
Merci d'avance
« Dernière édition: 04 Septembre 2015 à 14:58:05 par pixis » Journalisée

Linux is simple, It just takes a genius to understand its simplicity
pixis
Administrateur

Profil challenge

Classement : 17/54743

Membre Héroïque
*****
Hors ligne Hors ligne
Messages: 665


Voir le profil WWW
« #8 le: 04 Septembre 2015 à 14:49:58 »

Plus mieux, mais pour info, comme tu les avais créés, tu avais tous les droits pour les supprimer !
Mais du coup, je l'ai fait. Bon courage !
Journalisée

Newbie Contest Staff :
Pixis
Statut :
Administrateur
Blog :
hackndo
ITPPA

Profil challenge

Classement : 295/54743

Néophyte
*
Hors ligne Hors ligne
Messages: 24


Voir le profil
« #9 le: 08 Septembre 2015 à 12:10:04 »

c'est pas faut. Pourtant il me semble avoir essayé de les supprimer sans succès.

Pour revenir a l'exercice (je lâche pas l'affaire) 

il y a pas une subtilité entre le bin01a.c et le compilé?
dans le code source bin01a.c on trouve:
Code:
strcpy(buffer, password);
strcpy(verif, "Donotcareitisnotusefull");
et au dump de la function check on y trouve:
Code:
.....
0x080484e7 <+19>:    call   0x80483d4 <strcpy@plt>
.....
0x08048503 <+47>:    call   0x80483c4 <memcpy@plt>
.....

Je ne pense pas que ca est une grande importance, mais bon, strcpy != memcpy

Sinon d'après mes calculs, et avec un shellcode de 45 octets, ca ne laisse que 12 NOP dans tout ca, pas évident de pointer l EIP dans ce tout petit espace memoire!
Je me trompe ou je suis a l'ouest complet?

Je continue mes investigation.

Journalisée

Linux is simple, It just takes a genius to understand its simplicity
pixis
Administrateur

Profil challenge

Classement : 17/54743

Membre Héroïque
*****
Hors ligne Hors ligne
Messages: 665


Voir le profil WWW
« #10 le: 08 Septembre 2015 à 12:16:04 »

Je ne pense pas que ca est une grande importance, mais bon, strcpy != memcpy

Sauf erreur de ma part, memcpy étant plus rapide que srcpy dans ce cas là, le compilateur a fait une optimisation.

Sinon d'après mes calculs, et avec un shellcode de 45 octets, ca ne laisse que 12 NOP dans tout ca, pas évident de pointer l EIP dans ce tout petit espace memoire!

De manière générale, lors de l'exploitation d'un BoF, il n'y a pas besoin de NOP. Ce n'est qu'un confort qui pallie aux erreurs de calculs. Tu devrais être en mesure de connaitre l'adresse exacte.

Je finirai par :
"Avant d'attaquer la porte blindée au chalumeau, vérifie qu'il n'y a pas une fenêtre ouverte"
Journalisée

Newbie Contest Staff :
Pixis
Statut :
Administrateur
Blog :
hackndo
ITPPA

Profil challenge

Classement : 295/54743

Néophyte
*
Hors ligne Hors ligne
Messages: 24


Voir le profil
« #11 le: 08 Septembre 2015 à 14:01:59 »

Rebonjour.

Merci pour ces précisions.

/* Modération : De rien, mais on ne donne pas toutes les solutions ici, voyons ! */

ca progresse, merci encore, ton site regorge d'informations qui, j'en suis sur, va me permettre de résoudre ce #&"!*~# de wargame.
« Dernière édition: 08 Septembre 2015 à 14:03:18 par pixis » Journalisée

Linux is simple, It just takes a genius to understand its simplicity
ITPPA

Profil challenge

Classement : 295/54743

Néophyte
*
Hors ligne Hors ligne
Messages: 24


Voir le profil
« #12 le: 08 Septembre 2015 à 14:07:52 »

c'est bon j'ai trouvé.

GAME OVER 

J'en est bavé, mais j'en est appris des tonnes.
Journalisée

Linux is simple, It just takes a genius to understand its simplicity
nessman
Profil challenge

Classement : 23690/54743

Néophyte
*
Hors ligne Hors ligne
Messages: 2


Voir le profil
« #13 le: 23 Octobre 2018 à 15:55:39 »

Bonjour, avec gdb je modifie la variable flag à '1' et j'ai ca :

-=-=-=-=-=-=-=-=-=-=-=-=-=-
      Access Granted!
-=-=-=-=-=-=-=-=-=-=-=-=-=-
/bin/cat: /home/level01a/.password: Permission denied
[Inferior 1 (process 4301) exited normally]
Journalisée
pixis
Administrateur

Profil challenge

Classement : 17/54743

Membre Héroïque
*****
Hors ligne Hors ligne
Messages: 665


Voir le profil WWW
« #14 le: 23 Octobre 2018 à 16:35:02 »

Salut,

Oui, et heureusement qu'on ne peut pas modifier la mémoire lors de l'exécution d'un process avec le bit SUID tout en gardant les droits du propriétaire du binaire !

Quand tu utilises GDB, tu appelles implicitement ptrace(), et lors de l'appel à ptrace, tu exécutes le binaire sans le bit SUID, pour protéger les informations sensibles. Du coup, comment faire ?
Journalisée

Newbie Contest Staff :
Pixis
Statut :
Administrateur
Blog :
hackndo
Pages: [1] 2
  Retourner à l'épreuve    Imprimer  
 
Aller à: