AlpacaHack Logo
Sign InSign Up
Daily AlpacaHack

A CTF challenge series with fun puzzles to enjoy every day

What is Daily AlpacaHack?

We regularly publish simple, beginner-friendly or educational CTF challenges!

Join Anytime

Solve each challenge within its time window to appear on the leaderboard.

Not a Competition

Discussion with friends or AI is welcome (account sharing is prohibited).

Solution Sharing Rules

Sharing solutions is allowed only after the challenge period has ended.

Solve stats

0

/9

No solved challenges yet.

Sign In to view your player stats

Today's Challenge
pppp4649pppp4649
Σecret
Crypto
Easy🌱
21 solves
Submissions (latest 3)
mizore-fuyu

SOLVED!

Oct 23, 3:41 AM

Leaderboard

Try the first challenge

Is this your first CTF? Let's begin by tackling the first challenge released on Daily AlpacaHack.

View challenge
admin
AlpacaHack 2100
Misc
Welcome🌱
2,300 solves
Upcoming challenges reveal the , , and in advance.
Prev

Oct 2026

Next
Solved
Unsolved
Upcoming
Mon
Tue
Wed
Thu
Fri
Sat
Sun
 
k0080k0080
what is my pointer 2
Pwn
Hard
47 solves
1
admin
Baby Alpaca
Misc
Welcome🌱
154 solves
2
tan90909090tan90909090
C# File-based app
Rev
Easy🌱
76 solves
3-4
2501
Shared Prime
Crypto
Medium
86 solves
5-8
tan90909090tan90909090
fsbase modification
Pwn
Hard
59 solves
9-12
2501
Almost Shared Prime
Crypto
Hard
44 solves
 
2501
Almost Shared Prime
Crypto
Hard
44 solves
13-14
tan90909090tan90909090
cowsay jail
Misc
Medium
59 solves
15-18
hiikunzhiikunz
decreasing
Misc
Hard
34 solves
19-22
tan90909090tan90909090
x32 ABI flag checker
Rev
Hard
29 solves
23-24
pppp4649pppp4649
Σecret
Crypto
Easy🌱
21 solves
25
Coming soon
26
Coming soon
27
Coming soon
28
Coming soon
29
Coming soon
30
Coming soon
31
Coming soon
1
Coming soon

Want a harder challenge?

Go to B-SIDE

Writeups

Writeup for Mirage

haruhana

ja
Mirage

2026/10/22 02:56

ojun

Writeup for fsbase modification

ja

2026/10/15 13:59

tadanobutubutu

Writeup for cowsay jail

ja

2026/10/15 08:42

tadanobutubutu

Writeup for Almost Shared Prime

nirvana

Writeup for cowsay jail

ja

2026/10/14 21:19

Rows:

Let's analyze system calls

Topic: System CallReleased: Aug 27, 2026

58 solves
Rev
Medium3.0

by

tan90909090

tan90909090

Let's analyze x86-64 Linux system calls!

Beginner Hint 1: The Calling Convention for System Calls and GCC's Extended Inline Assembly
  • The calling convention for system calls on x86-64 Linux is described in the A.2.1 Calling Conventions section of the System V Application Binary Interface AMD64 Architecture Processor Supplement which is available at https://gitlab.com/x86-psABIs/x86-64-ABI, and https://man7.org/linux/man-pages/man2/syscall.2.html.
    • To execute a system call, we need to specify a system call number to the rax register, and up to six arguments to the rdi, rsi, rdx, r10, r8, and r9 registers sequentially, and then execute a syscall instruction.
    • The result of the system call execution is stored in the rax register.
  • GCC's extended inline assembly syntax is described at https://gcc.gnu.org/onlinedocs/gcc/Extended-Asm.html and https://gcc.gnu.org/onlinedocs/gcc/Machine-Constraints.html
    • The extended inline assembly used for the first syscall instruction in this challenge specifies the following:
      • A OutputOperands parameter is unspecified.
      • A InputOperands parameter set 318 in the rax register, &result_1 in the rdi register, sizeof(result_1) in the rsi register, and 0 in the rdx register, before executing the extended inline assembly.
      • A Clobbers parameter specifies that the rcx register, r11 register, and memory will be modified during the execution of the extended inline assembly.
        • Note that a syscall instruction itself modifies the rcx and r11 registers.
    • The extended inline assembly used for the second syscall instruction in this challenge specifies the following:
      • A OutputOperands parameter specifies that a content of the rax register are assigned to result_2 after the extended inline assembly executes.
      • A InputOperands parameter set 102 in the rax register before executing the extended inline assembly.
      • A Clobbers parameter specifies that the rcx register, r11 register will be modified during the execution of the extended inline assembly.
Beginner Hint 2: Approach to Solving the Challenge
  • There are several ways to approach this challenge.
  • One ways is to look up the system call numbers for x86-64 Linux and check the arguments and return values for the corresponding system call.
  • Another way is to use a decompiler.
    • Some decompilers can perfectly decompile syscall calls from the start, while others produce poor decompiled results initially but can be perfectly decompiled with additional operations.
lets-analyze-system-calls.tar.gz

Please sign in to submit the flag.

descriptionsolveswriteups