Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Ctf del upload

429 views

Published on

slide kuliah umum tentang capture the flag di institut teknologi del

Published in: Education
  • Be the first to comment

  • Be the first to like this

Ctf del upload

  1. 1. Capture The Flag Setia Juli Irzal Ismail ID-CERT – Telkom University
  2. 2. • Introduction • CTF • Jenis Lomba • Apa yang harus disiapkan? • Diskusi
  3. 3. ID-CERT • Indonesia Computer Emergency Response Team • 1998 – Dr. Budi Rahardjo • Incident Handling • Malware Lab • Research & Training about Malware • Tools: Malware Scanner • Founder AP-CERT: JP-CERT & AusCERT www.cert.or.id/
  4. 4. Aktivitas Lab Malware • Survey Malware • Androscanner • Malware Wiki • Malware Advisory • Malware Summit • AP-CERT drill • Training & Sosialisasi www.cert.or.id
  5. 5. Apa sih CTF??? www.cert.or.id/
  6. 6. Capture The Flag • kompetisi di bidang information security • Hacking competition?? www.cert.or.id/
  7. 7. Format Lomba • Jeopardy Vs attack-defence • Online Vs offline
  8. 8. Jeopardy • Menyelesaikan berbagai tantangan atau challenge • mendapatkan poin • pemenangnya adalah yang poinnya paling banyak. www.cert.or.id/
  9. 9. Attack-Defence • tiap team menyerang komputer lawan • & mempertahankan komputer sendiri
  10. 10. Flag • Setiap kita menyelesaikan soal, kita akan mendapatkan sebuah string yang jadi flagnya, misalnya : • Flag{MyFlag}, CTF{ }, Gemastik{ } • kemudian kita submit string tersebut ke sistem • sebagai tanda bahwa kita berhasil menyelesaikan soalnya.
  11. 11. Sejarah CTF • DEFCON 1996; attack defense • Hackthissite.org 2003 - 15 level • CTFtime - 2011
  12. 12. Sejarah CTF Indo • Bellua Cybersecurity -2005 • Echo – 2006 • Idsecconf - 2008
  13. 13. Manfaat ikut CTF?? • Fun • menguji dan menyegarkan ilmu • Legal security • Reputasi • Hadiah www.cert.or.id/
  14. 14. Legend - Rentjong
  15. 15. Legend - Foresty
  16. 16. Legend - Foresty
  17. 17. CTF in the Movie
  18. 18. Jalannya Lomba CTF seperti apa?
  19. 19. Team • 2-3 orang • 20 luar negeri • 1 orang
  20. 20. Soal • Kategori • web, crypto, forensic, reversing, pwnables, dan misc • Ngumpulin Poin • Level kesulitan • Web 100 • web 200.
  21. 21. Web
  22. 22. Web • bagaimana cara masuk hack ke web site • atau bagaimana mendapatkan hak akses tertentu (misalnya dari user biasa mendapatkan hak akses admin) • Flag • Dasar Web: • server • client
  23. 23. Web Server • PHP, • SQL, • MySQL database • Python • Ruby
  24. 24. Web – Soal yg sering muncul • SQL Injection • http exploit • Cross site scripting • Php exploit • Git exploit - versioning
  25. 25. Web – SQL injection • SQL Injection • Login / password • URL • ' OR '1'=‚1 • SELECT * FROM users WHERE name = '' OR '1'='1‘; • Validasi input
  26. 26. Web – http exploit • Salah konfigurasi • Local file inclusion • Web robot file • Relative path
  27. 27. Web – XSS • Script XSS • Modifikasi request
  28. 28. Web Client • HTML dan JavaScript • bagaimana client dan server berkomunikasi • protokol HTTP • POST request, GET request, • Manipulasi Cookie • URL • Beda bahasa, konsepnya sama
  29. 29. Web – tips utk belajar • menulis program sederhana yang memakai session, • mengakses database, • tanpa menggunakan framework • belajar dasar-dasar SQL, select, insert, update, dsb • sql injection, session fixation, • Curl • web development tool • OWASP Top 10
  30. 30. Web - tools • Burpsuite • TamperData • Chrome Development Tools • SQLmap
  31. 31. Web - tren Serangan • Form data • JSON • Web agent
  32. 32. Crypto
  33. 33. Crypto • Flag dienkrip • Kriptografi • Sederhana : algoritma klasik • rot13, xor, • AES, RSA, ECC • MD5, SHA1, SHA2 • Custom encryption
  34. 34. Crypto - flaw • RSA flaw; • Weak public keys • Coppersmith attack • Wiener Attack • AES CBC – (Cipher Block Chaining) • Hash • Length extension attack • MD5 / SHA reverse lookup • MD5 collision • PBKDF2 HMAC collision
  35. 35. Crypto tips • Kenali tipe2 algoritma kriptografi • Tipe hash
  36. 36. Crypto - tool • web based tool • RSAtool : generate private key • XORtool :
  37. 37. Network
  38. 38. Network • Mencari flag dari paket jaringan • PCAP • HTTP, FTP, HTTPS • Capture paket di jaringan
  39. 39. Network - tools • Wireshark • Netminer • https://packettotal.com/
  40. 40. Forensik
  41. 41. Forensik • Ekstrak Flag dari data • mengekstrak informasi yang disembunyikan dengan steganography, • mengekstrak data dari disk image • memory dump • Network Capture • Pemahaman mengenai berbagai format data
  42. 42. Forensik – jenis data • Gambar : PNG, JPG • Metada • Menyembunyikan beberapa file dalam 1 file • Menyembunyikan pesan dalam Pixel • Network : PCAP, tcpdump • Flag disembunyikan di trafik jaringan • Multimedia: wav, mp3, mp4, mpeg • Disk: dd, ext4 • Archive: tar, zip
  43. 43. Forensik – jenis data2 • Dump: memory, vbox • Text: text, c, html • Pdf • Binary: x86, x64
  44. 44. Forensik - tips • Kenali jenis filesystem • dan tools-tools yang berkaitan dengan itu • Sleuthkit • Volatility
  45. 45. Reverse
  46. 46. reverse • Flag disembunyikan dalam sebuah binary • mereverse engineer sebuah kode • Binary atau source code • Assembly • C • memory allocation, pointer, function pointer • Analisa statik • Analisa dinamik
  47. 47. Reverse -binary • Linux/unix binary • X64 • X86 • Java - android • PE32 • Python • C • Bash • ...
  48. 48. Reverse – tips belajar • Bikin program • Reverse • buffer overflow, • heap overflow, • Dll • IDAPro, objdump • Hex-Rays Decompiler, Hopper: binary à C
  49. 49. Reverse – analisa dinamis • Library trace • System call trace • Melacak dan menganalisa function yang dipanggil ketika sebuah binary dijalankan • Modif Function à untuk merubah hasil eksekusi • Ltrace & strace (Linux) • Dtrace (OSX)
  50. 50. Reverse – debugger • Jalankan binary dengan debugger • Step: jalankan program step by step • Break: menghentikan program à current state • Perubahan Variable, memory dan register • Cari Bug • Crack
  51. 51. Reverse – stack overflow • Kesalahan Developer bikin program à tdk memperhatikan semua kemungkinan input di buffer • Mainkan Input à error program
  52. 52. Reverse – stack overflow void overflow(char *buffer) { char local_buffer[50]; //49 char(+ null byte to terminate string) strcpy(local_buffer,buffer); // will copy until it hits null byte. } main (int argc, char **argv) { overflow(argv[1]); }
  53. 53. pwnable
  54. 54. pwnables • Masuk ke sistem target dan ambil flag • mengexploit service suatu mesin remote • Source atau binary diberikan pada soal • Reverse & bikin exploit • Tidak dikasih binaryà exploit
  55. 55. Pwnables - soal • Celah keamanan yang populer • CVE (Common Vulnerabilities & Exposure) database
  56. 56. Pwnables - soal • Format string • Data overflow • Function pointer overwrite • Return oriented programming (ROP) • Stack overflow • Heap exploit • Integer exploit • shellcode
  57. 57. Pwnables - tool • Metasploit • Python
  58. 58. Misc • Campur2 • Exploit • Stegano • Binary • PPC (Professional Programming Challenge)
  59. 59. Flexibel • Saling berkaitan, • Reversing à enkripsi • Forensic à pcap
  60. 60. Apa yang harus disiapkan untuk ikut CTF?
  61. 61. Belajar Programming • C • Python • shell (bash)
  62. 62. Programming - pelajari • Konversi Number à string • Konversi ASCII • Hexadesimal • Base64
  63. 63. Programming • file manipulations
  64. 64. Network Programming • Script untuk terhubung ke sebuah service di jaringan • Mengirimkan data ke remote server • Library python
  65. 65. Level • Easy • Medium • hard • Mulai dari yang paling mudah
  66. 66. Linux • Virtual Mesin • Vbox • https://www.virtualbox.org/ • VMWare • Windows
  67. 67. Terminal • Perintah dasar Linux • Binary • Chmod +x {nama_file} àmerubah permission file –r-w-x?? • R = read ; w =write; x = execute • - gak punya akses • Pemilik; grup; all • ./{nama_file} à menjalankan file
  68. 68. Terminal • File {nama_file} à utk mengetahui jenis file • 64-bit ELF à executable --> chmod • Gambar • Txt dll • Strings {nama_file} à utk mengetahui strings • Text yg ada di binary • Passw • Encoded string • File apa
  69. 69. Terminal • Ls à isi directory {cd} • man • Grep • Pipe
  70. 70. Googling • Write up • Github
  71. 71. Skill yang berguna • Forensik : mengembalikan data • Web: membuat web yang aman • Network : admin
  72. 72. CTF Online https://ctftime.org/event/list/upcoming Ctflearn.com https://www.hackthebox.eu/ http://pwnable.kr/ https://pwnable.tw/
  73. 73. Berlatih! • Ikut CTF • Coba selesaikan soal • Baca writeup
  74. 74. Event CTF Indo • Cyber Defence Competition • Gemastik • Cyberjawara • IDSECCONF
  75. 75. Buatlah komunitas CTF • CTFd • OpenCTF • FacebookCTF • TinyCTF • PicoCTF www.cert.or.id/
  76. 76. Terima Kasih jul [at] tass.telkomuniversity.ac.id jul_ismail Blog: julismail.staff.telkomuniversity.ac.id www.cert.or.id/
  77. 77. Reference • Burns, Tanner J., et al. "Analysis and Exercises for Engaging Beginners in Online CTF Competitions for Security Education." 2017 {USENIX} Workshop on Advances in Security Education ({ASE} 17). USENIX} Association}, 2017. • https://blog.compactbyte.com/2014/04/24/security-ctf/ • https://code.likeagirl.io/ctf-beginner-guide-by-a-beginner- 3c86e4959fcc • http://blog.rentjong.net/2014/11/mau-ikut-ctf-perlu-belajar-apa.html

×