刘功瑞的博客

有一天你突然惊醒,发现这一切,都只不过是一场梦。

攻防世界 XCTF Reverse android-app-100 Writeup

反编译apk可以看到代码调用了libadnjni.soida打开,可以看到32位hash放到模拟器上运行一下还有一种解法,找到md5加密前的字符串,再进行一次md5加密:import hashlib ret_a = 92060626 d = 114366 d = str(d + ret_a) + ' ' print(d) m =&nb

Weblogic CVE-2017-10271回显POC构造

POST /wls-wsat/CoordinatorPortType HTTP/1.1 Host: 192.168.50.129:7001 Accept-Encoding: gzip, deflate SOAPAction:  Accept: */* User-Agent: Apache-HttpClient/4.1.1 (java 1.5) Connection: keep

攻防世界 XCTF Reverse reverse-for-the-holy-grail-350 Writeup

算法题,一开始完全看不懂,慢慢磨了一天,才看明白通过主函数看到字符串处理的代码在stringMod里面__int64 __fastcall stringMod(__int64 *a1) {   __int64 v1; // r9   __int64 v2; // r10   __int64 v3; // rcx

攻防世界 XCTF Reverse babymips Writeup

mips逆向ida没安装插件无法逆向mips,下载一个ghidra工具,需要安装jdk11才能执行。使用ghidra打开,发现下面的代码,flag的前五位异或处理后,判断正确进入下一步又是一系列看似复杂的操作,实际上仔细观察后并不复杂,就是循环flag,判断i进入不同的计算,计算就是左移或者右移。解题方法两种,一种是直接根据代码逆推,另一种是直接暴力破解#第一种方法 ,逆推代码 str = 'Q|j{g' i = 0 for

攻防世界 XCTF Reverse asong Writeup

这题非常棒,刚开始完全看不懂,看完wp后,豁然开朗,让我对reverse又有了新的了解。推荐阅读这个wp wp.pdf重命名后的代码,逻辑就清楚了。各段代码细节分析逆向代码为:s = open('out', mode='r').read() # print s crr = [] for i in s:     

攻防世界 XCTF Reverse debug Writeup

使用ida打开发现无法反编译提示是.net平台,使用ILSpy进行反编译,可以看到算法,由于没有安装vc环境,使用python来改写。import hashlib def func(A_0, A_1):     arr = [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 

攻防世界 XCTF Reverse SignIn Writeup

看着像rsa分解n :103461035900816914121390101299049044413950405173712170434161686539878160984549 = p*q = 282164587459512124844245113950593348271 *  366669102002966856876605669837014229419以为这个函数是加密函数最后发现其实是十进制转十六进制的算法。。。。# encoding=utf-8

攻防世界 XCTF Reverse BabyXor Writeup(动态调试)

学到了一些动态调试技巧使用ida加载,发现函数很少,可能加壳了使用od载入,看到入口很像是加了壳的,在43F019处下个断点,执行到函数oep入口点处。按F9,执行到接收输入处,手动点击暂停, 调试-暂停。然后选择k,查看内核在ReadFile上右键,显示调用,返回到了主程序,可以看到接收参数的函数,在上面打个断点然后按F9,继续运行,随便输入一些字符串,会自动断下来。之后Ctrl+F9执行到返回,F8 return,Ctrl+F9执行到返回,F8 return,Ctrl+F9执行到返回,此时在

攻防世界 XCTF Reverse 流浪者 Writeup

看雪论坛出的题目 很不错。Str1是从aAbcdefghiabcde这个变量中获取到的,对应的角标是上一个程序传过来的,然后和KanXueCTF2019JustForhappy对比,正确则说明flag正确。先获取各角标的值为[19, 0, 27, 59, 44, 4, 11, 55, 14, 30, 28, 29, 37, 18, 44, 42, 43, 14, 38, 41, 7, 0, 39, 39, 48]之前一直看不明看 a1+4*v4,代表什么,后来才知道这个代表地址的偏移取值,每4字

攻防世界 XCTF Reverse e4-unvm-me Writeup

一道非常无聊的题先反编译pyc文件得到下面的代码#!/usr/bin/env python # encoding: utf-8 import md5 md5s = [     0x831DAA3C843BA8B087C895F0ED305CE7L,     0x6722F7A07246C6AF20662B855846C2C8L,  &n

Powered By Z-BlogPHP 1.5.2 Zero

Copyright www.liugongrui.com.All Rights Reserved.