MeePwn Meetup 2017

#meepwnmeetuphttps://www.facebook.com/events/128514637852213/

MeePwn Meetup là hoạt động học thuật, kết hợp giao lưu chia sẻ kinh nghiệm giữa các sinh viên, cựu sinh viên đang làm việc tại các tổ chức khác nhau về An toàn thông tin trên thế giới, nhằm thúc đẩy phong trào học tập, nghiên cứu An toàn thông tin, phong trào CTF trong giới sinh viên/học sinh, cũng như cung cấp một cái nhìn tổng quan về việc làm và kinh nghiệm trong ngành. Hoạt động được tổ chức bởi MeePwn Team và Khoa Mạng Máy tính & Truyền thông – ĐH CNTT.

Thời gian: 09h00 ngày 10/11/2017

Địa điểm: Hội trường tầng 12 toà nhà E – ĐH. CNTT ĐHQG Tp. HCM, Kp.6, P. Linh Trung, Q. Thủ Đức, Tp. HCM

<speaker> l4w/peternguyen/qd/anhdaden/b1t/cgh0st/ducnt/tsu/pl/etc. </speaker>

Buổi MeePwn Meetup 2017 bao gồm hai hoạt động chính:

  • Các bài talk kỹ thuật và chia sẻ kinh nghiệm đến từ các diễn giả là các thành viên MeePwn Team.
  • Workshop / Mini-CTF-90mins: cuộc thi Capture The Flag “tốc độ”, mà bạn có lẽ chưa từng được tham gia trước đây, thể lệ và cuộc thi sẽ được tiến hành ngay sau khi các buổi chia sẻ kết thúc, kèm theo là những phần quà đặc biệt.

Số lượng tham dự: tối đa 100. Xin vui lòng đăng ký ngay khi có thể.

Đăng ký tại: https://goo.gl/forms/QIfRFYpLFSPJfSah2

Đối tượng tham gia: Chúng tôi hoan nghênh tất cả cá nhân đam mê có trong lĩnh vực ATTT, đặc biệt là sinh viên tất cả các khoa, các trường đang muốn tìm hiểu hoặc đã làm quen với hình thức Capture the Flag, cũng như các sinh viên đã tham gia hoặc muốn tham gia kỳ thi SVATTT các năm sau.

Welcome all of you! Happy Hacking!

[Write-ups] CSAW CTF Quals 2017

CSAW là giải CTF dành cho học sinh/sinh viên được tổ chức hàng năm, có chất lượng khá tốt. Bởi vì năm ngoái có team được mời đi UAE dự final, nên năm nay cố thi biết đâu may mắn =))

Thật không may là giải này anh em bận gần hết, chỉ còn khoảng 2-3 anh em vào làm vài bài, rồi cũng bận. Thế nên… mình cân hết các mảng. Và dĩ nhiên, một người thì không thể nào bằng một team được. Đây là write-ups cho những bài mình làm được:

  1. Another Xor – Crypto 100
    Link: cipher.py encrypted

    Đọc qua file cipher.py, không khó để nhận ra rằng thuật toán mã hoá chỉ là phép XOR với key repeat, và chúng ta chưa biết key length. Với những thể loại XOR bình thường này thì có một tool đơn giản mà hiệu quả, xử đẹp trong vòng vài nốt nhạc, là cribdrag.

    Giờ phần việc khó nhất là đoán key. Sau một lúc thử, từ A qualification, A quantum,… thì mình tìm thấy một từ có vẻ có nghĩa: A quart. Đem đi google, thì, may mắn và magic, key xuất hiện trước mắt mình. Và mình vẫn không biết tại sao như vậy.

  2. Shia Labeouf-off! – Web 150

    Pick 1:
    http://web.chal.csaw.io:5487
    http://web.chal.csaw.io:5488
    http://web.chal.csaw.io:5489
    http://web.chal.csaw.io:5490

    Đề cho một website code trên framework Django. Và điều đầu tiên mình nghĩ đến khi thấy Django/Flask là Server-Side Template Injection. Để kiểm chứng, ta cần tìm một field nào cho input, và mình thấy http://web.chal.csaw.io:5487/ad-lib/.

    Thử input {% abc %}, kết quả như hình:

    Ok, server bật DEBUG = True, và ta có thể confirm là có bug SSTI.

    Vì có DEBUG = True, mình sẽ tìm tất cả các link, các cách input có thể sao cho server trigger ra exception, rất có thể chúng ta sẽ leak được source code hay cái gì đó đại loại vậy. Sau một lúc fuzzing thì mình thấy ở URL http://web.chal.csaw.io:5487/polls/3/vote/

    Ta thấy có hai filter method/attribute là listmegetme.

    Vậy tóm lại, lợi dụng bug SSTI ở trên, cùng với hai filter vừa tìm được, ta sẽ có flag, với điều kiện biết được object nào có chứa flag. Nếu để ý, ta sẽ thấy object này cũng đã được show ra ở bước confirm bug SSTI:

    Quay lại http://web.chal.csaw.io:5487/ad-lib/ để lấy flag thôi:

  3. Little Query – Web 200

    http://littlequery.chal.csaw.io

    View source web, ta thấy có một đoạn code bị comment:

    Check thử xem sao:


    Tiếp tục:


    Ơ dễ dãi vậy, cho đọc db và table à?

    Đoán tên db thôi 😀 bài là Little Query, vậy đoán thử db=littlequery xem sao:

    Đúng luôn kìa!

    Để ý một tí, ở trên tên db và tên table nằm trong cặp ngoặc (backquote). Còn tên db đúng thì không nằm trong cặp backquote. Vậy rất có thể có bug SQLi ở đây. Mình thử với một payload khá “truyền thống và gia giáo”:


    À quên, còn cái table. user xem thử:

    Magic 😮

    Login thôi.

    À nếu bạn nghĩ challenge đến đây là hết thì xin chúc mừng bạn, bạn đã lầm.

    Thử lại bằng Live HTTP Header:

    Và đây là flag 😀

  4. baby_crypt – Crypto 350

    The cookie is input + flag AES ECB encrypted with the sha256 of the flag as the key.
    nc crypto.chal.csaw.io 1578

    Rất may mắn, mình vừa làm bài này ở WhiteHat Challenge 04, thậm chí bài này còn dễ hơn bài của WhiteHat nữa.

    Lấy code cũ ra modify lại thôi :v

Conclusion: Dù kết quả không cao lắm, nhưng nói chung là great game 😀 Thank you for reading!