App - System

Wednesday 6 November 2013, 06:57  #1
App - System - Binaire 7
Grazfather
  • 8 posts

Je pensais que ce problème etait très simple, mais quand j’utilise shellcode que j’ai trouvé avec google ça ne fonctionne pas. C’est bizarre parce-que je termine avec un shell, come prévu, mais mon user n’a pas changé. J’utilise shellcode qui utilise le execve syscall.

binary7@challenge02:/tmp/bla7$ /binary7 `echo -e "<shellcode>"`
[+] Running program with username : <shellcode>
bash-4.2$ whoami
binary7
bash-4.2$

Je comprends qu’il ne devrait pas fonctionner dans gdb, mais ce ci m’a surpris. Avez vous des idées?

Wednesday 6 November 2013, 18:37  #2
App - System - Binaire 7
herve_c
  • 22 posts

Salut

J’imagine que ton shellcode lance l’execution de "/bin/sh" ou l’equivalent.
Et si tu essais en passant l’option "-p" en parametre à "sh" ?

Friday 8 November 2013, 17:56  #3
App - System - Binaire 7
Grazfather
  • 8 posts

OUi, J’utilise un shellcude qui fais /bin/bash -p, et j’ai essayer un autre qui utilise /bin//sh. Avons-nous un raison d’utiliser /bin//sh en lieu to /bin/bash?

Aussi, j’ai utiliser ’stat’ sure le binaire et il est setuid, mais pas setgid. Peux etre je dois faire sys_setgid(1035) aussi?

Tuesday 12 November 2013, 05:09  #4
App - System - Binaire 7
Grazfather
  • 8 posts

Je ne comprends toujours pas pourquoi les solutions qui utilisaient execve(’bin/bash’) no fonctionne pas, mais j’ai utilisé plutot execve("/bin/cat", ["/bin/cat",".////.passwd"], 0) et cela a fonctionné! C’était amusant d’avoir écrire mon propre shellcode.

Merci pour l’aide!