BUUCTF Reverse WriteUp 4
BUUCTF RE WriteUp 4[GXYCTF] simple CPP这个和之前的重复了啊,主函数逻辑很简单
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831 ...
BUUCTF Reverse WriteUp 3
BUUCTF Reverse WriteUp 3ACTF rome是个X86平台的exe文件,看了一下main函数的逻辑还算简单
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980int func(){ int result; // eax int inner[4]; // [esp+14h] [ebp-44h] unsigned __int8 v2; // [esp+24h] [ebp-34h] unsigned __int8 v3; // [esp+25h] [ebp-33h] unsigned __int8 v4; // [esp+26h] [ebp-32h] unsigned __int8 v5; // [esp+27h] [ebp-31h] unsigned __int8 v6; // [esp+28h] ...
BUUCTF Reverse WriteUp 2
BUUCTF Reverse WriteUp 2简单注册器是个APK,使用dex2jar反编译之后用jd(java decompiler)查看内容
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667package com.example.flag;import android.os.Bundle;import android.support.v4.app.Fragment;import android.support.v7.app.ActionBarActivity;import android.view.LayoutInflater;import android.view.Menu;import android.view.MenuItem;import android.view.View;import android.view.ViewGroup;import android.widge ...
CTF 中的 RSA 算法详解
CTF 中的 RSA 算法详解之前做题经常遇上RSA算法,每次都翻博客去查询感觉有点不便,于是想自己总结一下,背景啊总结啊这些就不说了,网上一抓一大把,直接说步骤
设:
明文信息m(message),加密后的信息c(cipher),公钥对(nnumber, eencrypt),私钥对(nnumber, ddecrypt)
加密公式$$c=m^e\ mod\ n$$
解密公式$$m = c^d\ mod\ n$$
加密过程首先选取两个大质数p, q$$n = p \cdot q\$$e 应该和$\phi(n)$互质,一般取65537,也就是0x10001
然后按照加密公式做着走就是了
解密过程由于公钥对我们已知,c已知,只需要求d,我们来推一下逻辑链
p, q 相乘生成 n —-> n 生成phi(n) —-> phi(n) 和 e 生成 d
所以我们只需要求到p, q就能够按照上述逻辑生成d用于解密了
p, q 是两个大质数相乘生成的n ,所以只要对n 进行因式分解 就能求到p, q
所以步骤如下
1. 求p, q上factordb.com直接生成p,q
2. 求ph ...
BUUCTF Reverse WriteUp 1
BUUCTF Reverse WriteUpeasyre直接拖进IDA分析,拖进PEID发现不是有效的PE文件
找到main函数,送分题
12345678910111213int __cdecl main(int argc, const char **argv, const char **envp){ int b; // [rsp+28h] [rbp-8h] int a; // [rsp+2Ch] [rbp-4h] _main(); scanf("%d%d", &a, &b); if ( a == b ) printf("flag{this_Is_a_EaSyRe}"); else printf("sorry,you can't get flag"); return 0;}
flag{this_Is_a_EaSyRe}
reverse1直接拖进IDA分析,是个64位exe可执行文件
shift+F12大法找到wro ...






