Phân tích mã nguồn PHP để tìm lỗ hổng ứng dụng web

Thảo luận trong 'ACM/Programming' bắt đầu bởi DDos, 23/08/20, 04:08 PM.

  1. DDos

    DDos Administrators Thành viên BQT

    Tham gia: 22/10/13, 08:10 PM
    Bài viết: 1,779
    Đã được thích: 421
    Điểm thành tích:
    83
    Trong bài viết trước mình đã chia sẻ về nguyên tắc hoạt động của các công cụ phân tích mã nguồn PHP để tìm các lỗ hổng có thể tồn tại trong ứng dụng web, cũng như các mã nguồn PHP có thể bị khai thác. Phương pháp phân tích mã nguồn để tìm kiếm lỗ hổng web thường được gọi là thử nghiệm thâm nhập hộp trắng (whitebox). Bởi vì, bạn có thể được cung cấp mã nguồn ứng dụng web của một tổ chức để xem xét chi tiết, kỹ lưỡng độ an toàn của ứng dụng web đó.

    Ở bài viết này, mình sẽ giới thiệu với các bạn một công cụ để đơn giản hóa việc tìm kiếm các đoạn mã PHP có thể gây ra các lỗ hổng trong ứng dụng web khi chúng không được kiểm soát chặt chẽ dữ liệu đầu vào từ phía người sử dụng.

    Công cụ có tên là progpilot, được viết bằng PHP nhằm mục đích quét các đoạn mã nguồn và hiển thị các đoạn mã có thể bị khai thác tương ứng.

    Cách sử dụng công cụ progpilot

    1. Tải về công cụ phar-composer bằng lệnh

    Mã:
    wget https://github.com/clue/phar-composer/releases/download/v1.1.0/phar-composer-1.1.0.phar
    
    mv phar-composer-1.1.0.phar /usr/local/bin/phar-composer.phar
    2. Tải về và cài đặt progpilot bằng lệnh

    Annotation 2020-08-23 153054.png

    Mã:
    git clone https://github.com/designsecurity/progpilot
    cd progpilot
    ./build.sh
    3. Mở công cụ progpilot
    Annotation 2020-08-23 1530541.png
    4. Sử dụng công cụ này rất đơn giản. Bạn chỉ cần cung cấp đầu vào là các tệp PHP cần để kiểm tra. Công cụ này bao gồm rất nhiều các rules để phân tích mã nguồn. Tất cả các rules các bạn xem tại đây.
    Ví dụ, mình lấy một mã nguồn PHP chứa lỗ hổng web, cụ thể là lỗ hổng SQLi tồn tại trong giá trị cookie.

    sql.png

    Kết quả trả về là như dưới đây:

    vul1.png
    vul2.png
    Như các bạn có thể thấy, công cụ đã chỉ đích danh đoạn mã được viết chưa tốt cùng với lỗ hổng tương ứng.

    Một ví dụ khác, về một đoạn mã tồn tại lỗ hổng tiêm lệnh.

    Annotation 2020-08-23 161455.png

    ecs.png
     
    Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
    Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
    hanhkhat, Jackie_Ng and XSSer like this.
  2. Jackie_Ng

    Jackie_Ng Member

    Tham gia: 24/04/17, 10:04 PM
    Bài viết: 12
    Đã được thích: 0
    Điểm thành tích:
    1
    Cảm ơn bạn!
     
    Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
    Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
  3. nam nguyet

    nam nguyet New Member

    Tham gia: 12/08/20, 08:08 AM
    Bài viết: 3
    Đã được thích: 0
    Điểm thành tích:
    1
    inurlbr hay hon cong cu nay
     
    Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
    Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
  4. DDos

    DDos Administrators Thành viên BQT

    Tham gia: 22/10/13, 08:10 PM
    Bài viết: 1,779
    Đã được thích: 421
    Điểm thành tích:
    83
    ở chỗ mình đang dùng phpstan... :D
     
    Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
    Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
  5. hanhkhat

    hanhkhat Member

    Tham gia: 29/08/20, 08:08 AM
    Bài viết: 5
    Đã được thích: 2
    Điểm thành tích:
    3
    Cảm ơn bạn. À các bạn có cái script php nào có thể quét cả thư mục để tìm file bị chèn shell không? Mình dùng wordpress mà mở từng file để xem hơi cực
     
    Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
    Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
    lapduc thích bài này.
  6. DDos

    DDos Administrators Thành viên BQT

    Tham gia: 22/10/13, 08:10 PM
    Bài viết: 1,779
    Đã được thích: 421
    Điểm thành tích:
    83
    Bạn thử đọc bài này xem. Về công cụ bạn có thể sử dụng PHP Malware Finderphp-malware-scanner
     
    Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
    Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan