Skip to content

Tuuxy/assembly_web_server

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 

Repository files navigation

x86-64 HTTP Web Server in Assembly

A minimal HTTP server written in x86-64 Linux assembly as part of the pwn.college "Building a Web Server" module.

What it does

  • Binds to 0.0.0.0:80
  • Forks on each incoming connection to handle requests concurrently
  • Handles GET requests by reading and returning file contents
  • Handles POST requests by writing the request body to the specified file

Build & run

as -o web_server.o web_server.s
ld -o web_server web_server.o
sudo ./web_server

Usage

# GET
curl http://localhost/tmp/myfile

# POST
curl -X POST http://localhost/tmp/myfile -d "hello world"

Notes

Requires root (or CAP_NET_BIND_SERVICE) to bind to port 80. No dependencies, no libc — just raw syscalls.

About

A simple but functionnal web server written in assembly ( pwn.college challenge )

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors