Hướng dẫn bảo mật code php

Danh sách các bài viết trong chuyên mục Bảo mật website, đây là những bài viết mới nhất được cập nhật trong mục Bảo mật website.

Khi hoàn thành một website thì vấn đề bảo mật được quan tâm nhất bởi vì nếu website bảo mật không tốt thì sẽ bị hacker tấn công phá hoại hoặc ăn cắp dữ liệu. Hiện nay có khá nhiều đối tượng biết một chút về hack website nên muốn thể hiện sức mạnh bằng cách đi chọc phá những website bảo mật không tốt, điều này thật tệ hại.

Để bảo mật website thì có nhiều yếu tố, nhưng theo mình thì sẽ phân thành hai loại. Loại thứ nhất là do bên cấu hình Server không tốt dẫn đến website bị đột kích và phá hoại. Loại thứ hai là do lập trình viên thiếu kinh nghiệm dẫn đến một số lỗi như SQL Injection, XSS, CSRF, ... Nếu bị tấn công ở lỗi thứ nhất thì dễ bị chiếm quyền quản lý Server, lúc này dữ liệu sẽ bị mất hoàn toàn và bạn sẽ phải liên hệ trực tiếp với nhà cung cấp để họ xử lý. Đối với loại thứ hai thì thông thường dữ liệu sẽ bị mất hoặc bị phá [chỉnh sửa, xóa, ...].

Mình là một lập trình viên nên chủ yếu bàn luận về vấn đề bảo mật code PHP, nghĩa là sẽ trình bày cách code thế nào để ít xuất hiện lỗi hoặc tránh các lỗi thường gặp. Điển hình nhất là lỗi SQL Injection và XSS, hai lỗi này các bạn lập trình viên newbie hay gặp nhất và là bài học dễ nhất dành cho các hackers nên nó là bài tập thực hành cho họ.

Mình cũng không có kinh nghiệm nhiều trong lĩnh vực bảo mật website php nhưng vẫn có một chút hiểu biết nên sẽ chia sẻ lại cho các bạn thông qua các bài viết, nếu có gì sai sốt mong các bạn góp ý thêm.

+BẢO MẬT WEBSITE
1 Backdoor là gì? Cách tạo backdoor trong Website
2 Kỹ thuật tấn công CSRF và cách chống CSRF
3 kỹ thuật tấn công SQL Injection và cách phòng chống trong php
4 Một số mẹo bảo mật ckfinder đơn giản
5 Tích hợp Ckfinder vào CKEditor Bằng Javascript

Bài xem nhiều

Progpilot là công cụ phân tích source code PHP với mục đích tìm các lỗ hổng bảo mật. Progpilot là công cụ phân tích tĩnh và sử dụng kỹ thuật taint checking để tìm lỗi. Với kỹ thuật này thì khả năng báo lỗi chính xác hơn so với kỹ thuật phân tích thông thường như regex chẳng hạn. Progpilot có hỗ trợ tìm lỗi trên các framework như: wordpress, symfony, codeigniter, prestashop, suitecrm.

Trong bài này mình sẽ nếu:

  • Tổng quan
  • Cách cài đặt.
  • Cách sử dụng.
  • Sửa đổi tập luật để nâng cao hiệu quả scan.

Tổng quan

Progpilot là công cụ phân tích tĩnh mã nguồn PHP để tìm kiếm các lỗ hổng bảo mật như: SQL injection, XSS, file inclusion, ....

Phân tích tĩnh là quá trình phân tích mà không thực thi code hay code hay chương trình.

Có nhiều kỹ thuật phân tích tĩnh với progpilot sử dụng kỹ thuật taint checking. Kỹ thuật này được hiểu đơn giản như sau:

Taint checking xác định tất cả các hàm có thể gây ra lỗi như: exec, echo, eval, .... tất cả những hàm này được gọi là sink [nơi thực thi các hàm gây ra lỗi]. Từ những sink này tìm những dữ liệu liên quan mà người dùng có thể kiểm soát được [điểm này được gọi là source].

Áp dụng kỹ thuật này progpilot cho ra kết quả đúng hơn nhiều so với cách phân tích thông thường. Vì kỹ thuật này chỉ ra nơi thực thi hàm nhạy cảm và điểm bắt đầu của dữ liệu từ đó đưa ra dự đoán chuẩn xác hơn.

Progpilot cho phép sử dụng như một chương trình độc lập hoặc như một thư viện.

Sử dụng như một chương trình độc lập

Sử dụng như một thư viện

Bài Viết Liên Quan

Chủ Đề