Skip to content

Comments

Lab12 port 32-bits to 64-bits #132

Merged
teodutu merged 2 commits intocs-pub-ro:x86_64from
dariabulacu:lab12-update
Feb 22, 2026
Merged

Lab12 port 32-bits to 64-bits #132
teodutu merged 2 commits intocs-pub-ro:x86_64from
dariabulacu:lab12-update

Conversation

@dariabulacu
Copy link

@dariabulacu dariabulacu commented Dec 8, 2025

Prerequisite Checklist

  • Read the contribution guidelines regarding submitting new changes to the project;
  • Tested your changes against relevant architectures and platforms;
  • Updated relevant documentation (if needed).

Description of changes

@dariabulacu dariabulacu force-pushed the lab12-update branch 4 times, most recently from ac0802d to 06730ec Compare December 9, 2025 14:28
@teodutu teodutu linked an issue Dec 9, 2025 that may be closed by this pull request
@teodutu teodutu added the needs-rendering The PR makes changes to the website that need to be rendered label Dec 9, 2025
@github-actions
Copy link

github-actions bot commented Dec 9, 2025

Copy link

@teodutu teodutu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pretty nice work overall. The solution scripts and / or the README guides work. Address my comments and we'll merge this.

@dariabulacu dariabulacu force-pushed the lab12-update branch 4 times, most recently from e56ae7d to ae9de1e Compare December 12, 2025 10:13
Copy link

@teodutu teodutu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nearly there.

@teodutu teodutu changed the base branch from main to x86_64 February 22, 2026 20:11
- Remove (probably leftover from the solution file) payload from the
`exploit.sh` file of the task `indirect-business` meant to be completed
by the students with their solution payload.

Signed-off-by: CHIRIAC Cristian-Alexandru <cristian.chiriac02@stud.acs.upb.ro>
This commit ports all Lab 12 CTF tasks from x86 (32-bit) to
x86-64 (64-bit) architecture.

Tasks ported:
- feeling-chained: ROP chain with custom gadgets
- hidden-in-plain-sight-1: Object file linking
- hidden-in-plain-sight-2: Object file with parameters
- indirect-business: Buffer overflow exploit
- look-at-him-go: GDB debugging exercise
- playing-god: Random number guessing
- rip-my-buffers-off: Return address overwrite
- rop: ROP chain to call special_function(6,9)

Key changes:
- Updated all Makefiles with -m64 compilation flag
- Adapted ROP chains to use 64-bit registers (RDI, RSI)
- Changed addresses from 4 bytes to 8 bytes (little-endian)
- Updated padding for 64-bit stack alignment
- Modified exploit scripts for 64-bit exploitation
- Updated READMEs with comprehensive x86-64 explanations
- Fixed all linting issues (trailing whitespace, markdownlint)

All tests passing: 100/100 for each task.

Signed-off-by: Daria Bulacu <dariabulacu@yahoo.com>
@teodutu teodutu merged commit 2ab2c63 into cs-pub-ro:x86_64 Feb 22, 2026
2 of 3 checks passed
@teodutu teodutu mentioned this pull request Feb 22, 2026
3 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

needs-rendering The PR makes changes to the website that need to be rendered

Projects

None yet

Development

Successfully merging this pull request may close these issues.

labs/lab-12: Add x86_64 version

3 participants