攻防世界 notsequence

2021-10-13 20:58:08 字數 1739 閱讀 4997

看見x*(x+1)/2應聯想起楊輝三角

ida進入主函式

int __cdecl main()

while ( *(v3 - 1) );

v2 = sub_80486cd(&unk_8049be0);

if ( v2 == -1 )

if ( (unsigned __int8)sub_8048783(&unk_8049be0, v2) != 1 )

if ( v2 == 20 )

");exit(0);

} return 0;

}

看第乙個check函式

int __cdecl sub_80486cd(int a1)

return v5;

}

看第二個check函式

int __cdecl sub_8048783(int a1, int a2)

if ( *(_dword *)(4 * (v3 * (v3 + 1) / 2 + i) + a1) != v4 )

return 0;

++v6;

} return 1;

}

經過這2個函式判斷, 就能知道是否是楊輝三角形了. 把前20行的資料經過md5加密就是flag.

python指令碼

def createl(l):

l = [1]

for x in range(1, len(l)):

return l

def printl(l, w):

s = ""

for x in l:

s += str(x) + " "

print(s.center(w))

def str_(s, l):

for x in l:

s += str(x)

return s

import hashlib

l = [1]

s = ""

row = int(input("請輸入行數: "))

width =row* 6

for x in range(row):

printl(l, width)

s = str_(s, l)

l = createl(l)

print(s)

m = hashlib.md5(s.encode()).hexdigest()

print("md5加密後:%s" % m)

c語言指令碼

#include #include #include int *creat(int *l, int lenth)

void print(int *l, int blank_l, int lenth)

char *translate(int *l, int lenth);

memset(p, 0, sizeof(char));

for(i = 0; i < lenth; i++)

return p;

} int main(void);

printf("請輸入行數: ");

scanf("%d", &n);

for(i = 0; i < n; i++)

printf("\n所有數值組成的字串為: %s", a);

return 0;

}

逆向 攻防世界 notsequence

越來越喜歡逆向了,通過除錯解決程式的邏輯問題真是太爽了。後天微控制器考試,全球黑客保佑孩子不掛科。看看這道題,自己演算法太菜了。沒有殼,直接ida吧。輸入,相當於乙個陣列吧,每次輸入乙個值,輸入的不是數字好像就結束了。兩個check 然後是得到flag,就是md5 正確的輸入的值 分析check1....

攻防世界mfw 攻防世界 Web mfw

題目資訊 image.png 工具 githack,dirsearch 知識點 git漏洞 審計 開啟題目場景,檢查 發現這樣乙個頁面 image.png 訪問.git目錄,疑似存在git原始碼洩露 image.png 再用dirsearch掃瞄,發現git原始碼洩露 使用 githack獲取原始碼...

攻防世界Web lottery

開心!雖然第一次遇到git原始碼洩露寫了好久,但是寫出來了就很開心 開啟介面我們知道,要拿到flag,就要贏到足夠的錢,其實一開始我以為可以找到乙個地方直接修改餘額什麼的,把網頁源 中的檔案看了幾個都沒發現突破口 然後又沒思路了 嘗試了一下robots.txt,想看看有沒有什麼檔案,然後發現了 瞬間...