APK-逆向2 Hack-you-2014 (看名以为是安卓逆向呢0.0,搞错了吧) 程序是.net写的,直接祭出神器dnSpy 1 using System; 2 using System.Diagnostics; 3 using System.IO; 4 using System.Net.Sockets; 5 using System.Text; 6 7 namespace Rev_100 8 { 9 // Token: 0x02000002 RID: 2 10 internal class…
攻防世界中此题信息未给全,题目来源为[TWCTF-2016:Reverse] Reverse Box 网上有很多wp是使用gdb脚本,这里找到一个本地还原关键算法,然后再爆破的 https://www.megabeets.net/twctf-2016-reverse-reverse-box/ [TWCTF-2016:Reverse] Reverse Box Writeup 标准 Shak的客座文章. 挑战描述$ ./reverse_box $ {FLAG} 95eeaf95ef942349995…
8.The_Maya_Society Hack.lu-2017 在linux下将时间调整为2012-12-21,运行即可得到flag. 下面进行分析 1 signed __int64 __fastcall main(__int64 a1, char **a2, char **a3) 2 { 3 size_t v3; // rbx 4 size_t v4; // rax 5 unsigned __int64 size; // rax 6 unsigned __int64 size_1; // ra…
程序流程很清晰 1 int __cdecl main(int argc, const char **argv, const char **envp) 2 { 3 unsigned int v3; // edx 4 unsigned int i; // ecx 5 __m128i v5; // xmm1 6 unsigned int v6; // esi 7 const __m128i *v7; // eax 8 __m128i v8; // xmm0 9 int v9; // eax 10 ch…
9.re1-100 1 if ( numRead ) 2 { 3 if ( childCheckDebugResult() ) 4 { 5 responseFalse(); 6 } 7 else if ( bufParentRead[0] == '{' ) // 第一位 8 { 9 if ( strlen(bufParentRead) == 42 ) // 输入的长度为42d 10 { 11 if ( !strncmp(&bufParentRead[1], "53fc275d81&quo…
notsequence  RCTF-2015 关键就是两个check函数 1 signed int __cdecl check1_80486CD(int a1[]) 2 { 3 signed int j; // [esp+0h] [ebp-14h] 4 int t; // [esp+4h] [ebp-10h] 5 int i; // [esp+8h] [ebp-Ch] 6 signed int k; // [esp+Ch] [ebp-8h] k=0 i=0 a[0]=1 7 // k=1 i=1…
easyre-153 查壳: upx壳 脱壳: 1 int __cdecl main(int argc, const char **argv, const char **envp) 2 { 3 int pipedes[2]; // [esp+18h] [ebp-38h] 4 __pid_t v5; // [esp+20h] [ebp-30h] 5 int v6; // [esp+24h] [ebp-2Ch] 6 char buf; // [esp+2Eh] [ebp-22h] 7 unsigne…
19.gametime csaw-ctf-2016-quals 这是一个小游戏,挺有意思的 's'-->' '    'x'-->'x'   'm'-->'m' 观察流程,发现检验函数在 1 char __usercall check_input_401507@<al>(int a1@<edx>, int a2@<ecx>, DWORD dwMilliseconds, int a4, int a5) 2 { 3 int v5; // esi 4 int…
15.Reversing-x64Elf-100 这题非常简单, 1 signed __int64 __fastcall sub_4006FD(__int64 a1) 2 { 3 signed int i; // [rsp+14h] [rbp-24h] 4 const char *v3; // [rsp+18h] [rbp-20h] 5 const char *v4; // [rsp+20h] [rbp-18h] 6 const char *v5; // [rsp+28h] [rbp-10h] 7…
5.re-for-50-plz-50  tu-ctf-2016 流程很简单,异或比较 1 x=list('cbtcqLUBChERV[[Nh@_X^D]X_YPV[CJ') 2 y=0x37 3 z='' 4 for t in x: 5 z+=chr(ord(t)^y) 6 print(z) TUCTF{but_really_whoisjohngalt} 6.key csaw-ctf-2016-quals 运行后打印完?W?h?a?t h?a?p?p?e?n? 便结束 修改指令跳过文件读取,输出…
1.dmd-50 suctf-2016 md5后比较,在线解md5得到: md5(md5($pass)),所以将grape再进行MD5 b781cbb29054db12f88f08c6e161c199 2.Shuffle SECCON-CTF-2014 硬编码: SECCON{Welcome to the SECCON 2014 CTF!} 3.re2-cpp-is-awesome alexctf-2017 1 __int64 __fastcall main(int a1, char **a2,…
16.zorropub  nullcon-hackim-2016 (linux平台以后整理) https://github.com/ctfs/write-ups-2016/tree/master/nullcon-hackim-2016/re/zorropub-100 nullcon{nu11c0n_s4yz_x0r1n6_1s_4m4z1ng}…
攻防世界web进阶题-unfinish 1.看一下题目提示SQL 2.打开题目看一下源码,没有问题 3.查一下网站的组成:php+Apache/2.4.7+Ubuntu 4.扫一下目录,扫到一个注册页面--/register.php 注册一个账号登录,登陆后的界面为 没有可利用的地方,返回上一步,注册,既然是SQL注入,那就尝试着绕过 登录后发现用户名为2 猜测此处的SQL语句为insert ........'username' 我们构造的语句执行为 insert......'1'+'1' 既然…
攻防世界 web进阶练习 NewsCenter   题目是NewsCenter,没有提示信息.打开题目,有一处搜索框,搜索新闻.考虑xss或sql注入,随便输入一个abc,没有任何搜索结果,页面也没有什么变化,考虑SQL注入.随便输入234234234,用burp抓包,发现是post方式,直接用sqlmap爆破.将http头保存为1.txt,试试用sqlmap爆数据库查看news数据库内容sqlmap -r 1.txt -D news --dump得到flag!…
攻防世界MISC进阶之Get-the-key.txt 啥话也不说,咱们直接看题吧! 首先下载附件看到一个压缩包: 我们直接解压,看到一个文件,也没有后缀名,先用 file 看一下文件属性: 发现是是Linux的文件系统数据,我们找个目录将它挂载起来看看, mkdir /tmp/forensic100 mount -o loop forensic100 /tmp/forensic/ 进入该目录,查看如下: 好家伙,这出来了一堆,到底是哪个?? 我们再返回去看题目: 貌似是让我们找一个key.txt…
XCTF攻防世界web进阶练习-mfw题目为mfw,没有任何提示.直接打开题目,是一个网站 大概浏览一下其中的内容,看到其中url变化其实只是get的参数的变化查看它的源码,看到有一个?page=flag,flag应该在这个页面里面 但是进入这个页面发现是空的 注意到有这样一个页面,说道用到了Git,想到是否可能和Git源码泄露有关 于是试一下http://111.198.29.45:33750/.git这个url,果然有猫腻 利用.git源码泄漏漏洞,使用githack(下载地址:https:…
攻防世界MISC进阶之签到题    第一步:分析    第二步:实操    第三步:答案第一步:分析难度系数:1星题目来源: SSCTF-2017题目描述:SSCTF线上选举美男大赛开始了,泰迪拿着他的密码去解密了,提交花括号内内容(Z2dRQGdRMWZxaDBvaHRqcHRfc3d7Z2ZoZ3MjfQ==)首先看到这种格式的数据想到是base64加密,于是使用站长工具进行解密.第二步:实操http://tool.oschina.net/encrypt?type=3得到ggQ@gQ1fqh…
攻防世界web进阶题-bug 1.打开题目看一下源码,没有问题 2.扫一下目录,没有问题 3.查一下网站的组成:php+Apache+Ubuntu 只有登录界面 这里可以可以想到:爆破.万能密码.进行注册,找回密码逻辑绕过,我在这里用的是找回密码的逻辑绕过(还可以登录后修改密码进行逻辑绕过) 我们先注册账号 然后去找回密码,先输入正确的账号密码,跳转到输入新密码 输入新密码之后确定抓包,将aa改成admin,修改成功 登录admin的账户,发现有一个模块需要特定的ip才可以打开,这里可以想到:i…
这是2017 ddctf的一道逆向题, 挑战:<恶意软件分析> 赛题背景: 员工小A收到了一封邮件,带一个文档附件,小A随手打开了附件.随后IT部门发现小A的电脑发出了异常网络访问请求,进一步调查发现小A当时所打开的附件其实是一个伪装成word文档的恶意可执行文件. 赛题描述: 请在试着分析evil.exe和其所下载的x.jpg, 从中找出key. 评分标准: 密钥正确则可进入下一题. 攻防世界只给了exe文件,没有给x.jpg文件,(每个人的x.jpg文件是不同的,解得的flag也是不一样的…
tt3441810 tinyctf-2014 附件给了一堆数据,将十六进制数据部分提取出来, flag应该隐藏在里面,(这算啥子re,) 保留可显示字符,然后去除填充字符(找规律 0.0) 处理脚本: 1 text=[0x68, 0x66, 0x6C, 0x00, 0x00, 0x48, 0xBF, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x48, 2 0x8D, 0x34, 0x24, 0x48, 0xBA, 0x02, 0x00, 0…
攻防世界 ics-06 涉及知识点: (1)php://filter协议 (2)php中preg_replace()函数的漏洞 解析: 进入题目的界面,一通乱点点出了唯一一个可以进入的界面. 观察url http://111.198.29.45:41597/index.php?page=index 觉得page变量有问题,既然他可以为index(即文件名,那可不可以显示文件源码呢?) 于是构造payload http://111.198.29.45:41597/index.php?page=ph…
Replace 湖湘杯2018 查壳upx,手动脱壳,修复IAT,去掉重定向便可以运行. ida查看,流程清晰.关键函数check_E51090. int __cdecl main(int argc, const char **argv, const char **envp) { int lens; // kr00_4 char Buf; // [esp+4h] [ebp-2Ch] char Dst; // [esp+5h] [ebp-2Bh] Buf = 0; memset(&Dst, 0,…
BabyXor     2019_UNCTF 查壳 脱壳 dump 脱壳后 IDA静态分析 int main_0() { void *v0; // eax int v1; // ST5C_4 char *v2; // ST6C_4 const char *v3; // ST68_4 void *v4; // ST64_4 size_t v5; // eax char *v6; // ST60_4 v0 = (void *)sub_4010B4((int)&unk_4395F0, "世界上…
secret-string-400 school-ctf-winter-2015 解压文件得到html和js文件 Task.html <html> <head> <title>JSMachine</title> <meta charset="UTF-8"> <script type='text/javascript' src='Machine.js'></script> </head> &l…
Newbie_calculations Hack-you-2014 题目名百度翻译成新手计算,那我猜应该是个实现计算器的题目.... IDA打开程序,发现一长串的函数反复调用,而且程序没有输入,只有输出.额,那这样的话程序运行就应该输出flag,但程序中肯定会有垃圾循环操作,就让你跑不出来.0.0 这种题目就要分析函数作用,简化,自己实现算法. 程序流程: 1 for ( i = 0; i < 32; ++i ) 2 flag[i] = 1; 3 v121 = 0; 4 puts("You…
 android-app-100  suctf-2016 jeb启动,找到点击事件: 验证流程: 输入作为参数 --> processObjectArrayFromNative 得到一返回值(ret_a) --> IsCorrect 返回0,失败:返回1,成功 --> 输出"Sharif_CTF("+md5(str(d+ret_a)+" "+")"      (.d = 0x1BEBE) 可以发现flag的获取关键在于proce…
pingpong  XCTF 3rd-BCTF-2017 java层代码很简单: 1 package com.geekerchina.pingpongmachine; 2 3 import android.os.Bundle; 4 import android.support.v7.app.AppCompatActivity; 5 import android.view.Menu; 6 import android.view.MenuItem; 7 import android.view.Vie…
1.re1 DUTCTF IDA shift+F12 查看字符串 DUTCTF{We1c0met0DUTCTF} 2.game ZSCTF zsctf{T9is_tOpic_1s_v5ry_int7resting_b6t_others_are_n0t} 3.Hello, CTF  Pediy CTF 2018 CrackMeJustForFun 将16进制字符串转ascii字符串得到flag 4.open-source HackYou CTF 参数 51966 25 h4cky0u flag为:…
Windows_Reverse2   2019_DDCTF 查壳: 寻找oep-->dump-->iat修复   便可成功脱壳 int __cdecl main(int argc, const char **argv, const char **envp) { char Dest; // [esp+8h] [ebp-C04h] char v5; // [esp+9h] [ebp-C03h] char myinput; // [esp+408h] [ebp-804h] char Dst; //…
seven  hctf2018 这是一个驱动文件 ida载入,查找字符串 根据字符串来到函数:sub_1400012F0 __int64 __fastcall sub_1400012F0(__int64 a1, __int64 a2) { __int64 v2; // rbx _KEYBOARD_INPUT_DATA *KEYBOARD_input; // rsi unsigned __int64 v4; // rdx int index; // ecx __int16 *k_ipt; // r…