Retour au sujet

Avatar de Factom Factom
Citation de Markov
Citation de Factom
Citation de Markov
Citation de Factom
Citation de Markov
Citation de Factom
Citation de Goupix
D'accord, mais du coup comment ils récupères ou accèdent aux infos sensibles avec ça? https://image.noelshack.com/minis/2016/48/1480464158-1474824966-1474551493-1474308964-1473610653-picsart-09-11-06-13-46.png
Je suis pas du tout sur mais même principe que les buffer overflow je pense. Ton tableau1 est d'une certaine taille, donc si t'accèdes aux cases d'après tu accèdes à des cases mémoires non autorisées, et avec un peu de chance c'est des données sensibles
Le détail de l'attaque fait plusieurs pages, ils utilisent des progs alternatifs pour influencer la où le prog va piocher ses données je crois mais j'ai pas trop trop compris :hap:
Rien à voir. Une attaque par buffer overflow, tu sais exactement combien d'octets utiliser pour saturer esi et edi.
Hmm c'est pas le même principe dans le sens de "dépasser de la zone mémoire qui t'était allouée pour récupérer/injecter des trucs interdits" ? Désolé dans ce cas
Le pavé contient il des fautes ?
Vous, les experts, devraient faire ce genre de topic :hap:
Dans une attaque par buffer overflow, on fait effectivement littéralement un dépassement de tampon. Le but est d'exploiter la stack d'une fonction vulnérable et de changer l'adresse vers laquelle saute la fonction quand elle a fini. Si tu réussis à rediriger vers l'adresse d'un code de ta composition (par exemple un shell qui serait lancé par root) tu deviens le maitre.
Ici, il s'agit plutôt d'une forme évoluée de cache poisoning. On ne redirige pas le flux du code manuellement. On donne de fausses pistes au processeur pour qu'il ne se doute à aucu moment qu'on va tenter d'accéder à des données sensibles. On lui fait mettre en cache de manière répétée des données inutiles de plus en plus proches de la cible. Au bout d'un moment le cpu prend la décision de mettre en cache un truc plus gros et bingo
Dans les faits c'est un peu plus compliqué. En fait le processeur tente de prédire quand va tomber l'instruction jmp (ou jnz,jne,je,etc). On retrouve ça explicitement dans GoAsm par exemple.
Le but est d'utiliser cette prédiction pour corrompre l'intégrité 'morale' du cpu
Je vois, c'est intéressant https://image.noelshack.com/minis/2016/50/1481994659-mathematicienrisitas.png
Merci !
Tu voulais où plutôt de quand* pour les jump non ?
Les deux à la fois :ok:
Si tu écris un truc du genre
mov rcx,100000001
boucle:
dec rcx
cmp rcx,0
jnz boucle
Le processeur sait qu'il va devoir se préparer à sauter très souvent à l'adresse désignée par boucle (où)
Et il sait aussi qu'il saute après deux instructions (quand) donc quand il verra dec rcx, il se préparera déjà à éventuellement sauter après le cmp

Okok je vois, c'est instructif merci https://image.noelshack.com/minis/2017/21/1495823618-risitas596.png
Ça doit être hyper intéressant de design du hardware en évitant de se faire avoir par pleins de pièges :hap: