J’ai juste essayé de comstackr quelques fragments C ++ sur VS2010 et analysé les exécutables sur IDA Pro. Quelque chose que j’ai remarqué, c’est que la plupart d’entre eux ont quelque chose comme ce qui suit au début (peu après un appel à __security_check_cookie) xor eax, ebp et quelque chose comme xor ecx, ebp au […]
Je ne trouve pas une bonne source qui réponde à cette question. Je sais qu’un nop sled est une technique utilisée pour contourner la randomisation de stack dans une attaque de dépassement de mémoire tampon, mais je ne peux pas comprendre comment cela fonctionne. Quel est un exemple simple qui illustre cette méthode? Que signifient […]
Je travaille sur un problème de devoir qui nécessite de désactiver la protection de l’optimisation du compilateur pour qu’elle fonctionne. J’utilise gcc 4.4.1 sur Ubuntu Linux, mais je n’arrive pas à déterminer quels sont les indicateurs appropriés. Je me rends compte que cela dépend de l’architecture – ma machine fonctionne avec un processeur Intel 32 […]
Java a-t-il des dépassements de tampon? Si oui, pouvez-vous me donner des scénarios?
int func(char* str) { char buffer[100]; unsigned short len = strlen(str); if(len >= 100) { return (-1); } strncpy(buffer,str,strlen(str)); return 0; } Ce code est vulnérable à une attaque de dépassement de mémoire tampon et j’essaie de comprendre pourquoi. Je pense que cela a à voir avec le fait d’être déclaré short au lieu d’un […]
Lorsque j’essaie de comstackr du code C qui utilise la fonction gets() avec GCC, j’ai compris avertissement : (.text + 0x34): warning: la fonction `get ‘est dangereuse et ne doit pas être utilisée. Je me souviens que cela a quelque chose à voir avec la protection de la stack et la sécurité, mais je ne […]
J’ai récemment commencé à apprendre le C et je prends un cours avec C comme sujet. Je joue actuellement avec des boucles et je rencontre des comportements bizarres que je ne sais pas comment expliquer. #include int main() { int array[10],i; for (i = 0; i <=10 ; i++) { array[i]=0; /*code should never terminate*/ […]