Initial commit

This commit is contained in:
Rayhan Hanaputra
2025-10-10 22:18:06 +07:00
committed by GitHub
commit ea02892f14
1246 changed files with 289342 additions and 0 deletions
+29
View File
@@ -0,0 +1,29 @@
FROM public.ecr.aws/docker/library/ubuntu:20.04
ARG PASSWORD
ENV DEBIAN_FRONTEND noninteractive
RUN echo root:${PASSWORD} | chpasswd
RUN apt-get update && apt-get install -y openssh-server lib32z1 xinetd cmake gcc curl
RUN echo "PasswordAuthentication yes" >> /etc/ssh/sshd_config
RUN echo "PermitRootLogin yes" >> /etc/ssh/sshd_config
RUN service ssh start
RUN useradd -m ctf
WORKDIR /ctf
RUN echo "Connection blocked" > /etc/banner_fail
COPY ctf.xinetd /etc/xinetd.d/ctf
COPY ./src/main.c ./
COPY ./start.sh ./
RUN gcc /ctf/main.c -no-pie -fno-stack-protector -Wl,-z,relro,-z,now -o /ctf/main
RUN touch /flag.txt
RUN chmod -R 755 /ctf
RUN chmod +x /ctf/start.sh
ENTRYPOINT []
CMD ["/usr/sbin/xinetd", "-dontfork"]
EXPOSE 8000
+18
View File
@@ -0,0 +1,18 @@
service ctf
{
disable = no
socket_type = stream
protocol = tcp
wait = no
user = root
type = UNLISTED
port = 8000
bind = 0.0.0.0
server = /bin/sh
server_args = /ctf/start.sh
banner_fail = /etc/banner_fail
# safety options
per_source = 10 # the maximum instances of this service per source IP address
rlimit_cpu = 1 # the maximum number of CPU seconds that the service may use
#rlimit_as = 1024M # the Address Space resource limit for the service
}
+15
View File
@@ -0,0 +1,15 @@
#include <stdio.h>
#include <stdlib.h>
void give_me_idea() {
char buf[64];
puts("Do you have a good idea?");
fgets(buf, 200, stdin);
}
void main() {
setbuf(stdout, NULL);
give_me_idea();
puts("hmm... I'm also think the same thing...");
return 0;
}
+3
View File
@@ -0,0 +1,3 @@
#!/bin/sh
/usr/sbin/sshd -D &
su ctf -c "/ctf/main"