Chuyển đến nội dung chính

Bài đăng

Đang hiển thị bài đăng từ 2020

[Secure coding - Part 1] Là developer cần làm gì để ứng dụng của mình an toàn và bảo mật hơn?

Phần lớn các vấn đề bảo mật đều liên quan đến các lỗi lập trình! Mặc dù không một lập trình viên nào khi viết ứng dụng lại mong muốn ứng dụng của mình sẽ có lỗi bảo mật, nhưng trên thực tế, do tính phức tạp của các hệ thống kỹ thuật, do tập trung quan tâm đến chức năng hấp dẫn của ứng dụng, đến tiến độ… việc đảm bảo ứng dụng không có lỗi bảo mật là cực kỳ khó khăn, ngay cả với những lập trình viên cao cấp. Nói chung, việc xây dựng phần mềm an toàn sẽ ít tốn kém hơn nhiều so với việc sửa chữa các vấn đề bảo mật sau khi phần mềm đã hoàn thành, chưa kể các chi phí có thể liên quan đến vi phạm bảo mật. Chuỗi bài viết này được tham khảo từ:  Full document:  OWASP Secure Coding Practices-Quick Reference Guide Slide for presentation:  PowerPoint Presentation (dga.or.th) I. Input Validation Yêu cầu này liên quan đến việc kiểm tra dữ liệu đầu vào, các lập trình viên cần đảm bảo kiểm tra toàn bộ dữ liệu đầu vào từ phía người dùng và xử lý hay kiểm tra chúng ở phía server (không xử lý ở phía clie

[CTF] Làm thế nào để bắt đầu với CTF mảng Web

Web là một trong những mảng dễ tiếp cận khi chơi CTF. Vậy bắt đầu CTF mảng Web như thế nào? Giờ đặt một website trước mặt mình thì không thể cứ thế mà làm. Làm gì? Tìm flag - một chuỗi bí mật do người ra đề giấu ở đâu đó quanh cái web. Muốn tìm được nó trước hết phải xem đề bài gợi ý cái gì, cho cái gì, trong web có gì, làm sao để khai thác mấy cái đó. Từ đây lại có một vấn đề: Phải hiểu về web trước đã. Nói thêm một chút là ở bài viết này mình sẽ không đi sâu vào chi tiêt, mình chỉ dừng lại ở việc đặt ra các vấn đề quan trọng mà các bạn cần tìm hiểu. Web hoạt động thế nào? Chúng ta sẽ cần nắm kiến thức về web qua những vấn đề như thế này:   - Cách hoạt động của web từ phía client cho đến phía server sẽ có những gì?   - Client gửi request cho server và nhận lại response như thế nào? Qua đâu? (HTTP, HTTP Header, HTTP Methods)   - Cách client và server lưu trữ thông tin của nhau (qua cơ sở dữ liệu, cookie, session, …).   - Các ngôn ngữ cấu thành 1 trang web hoặc thường được dùng khi

10 nguyên tắc thiết kế bảo mật khi phát triển phần mềm theo OWASP

 TTổng quan về bảo mật phần mềm Bảo mật đóng vai trò vô cùng quan trọng trong việc phát triển cũng như khi vận hành ứng dụng. Nó như một lá chắn giúp bảo vệ hệ thống phần mềm của chúng ta tránh khỏi các cuộc tấn công của những kẻ xấu nhằm mục đích phá hoại hoặc đánh cắp thông tin. Bảo mật chính là một quá trình liên tục kiểm tra, xử lý các vấn đề bảo mật của hệ thống để duy trì 3 đặc tính trên của hệ thống (Tính toàn vẹn, tính bảo mật, tính sẵn sàng). Tính bí mật : Bí mật là thuật ngữ được sử dụng để tránh lộ thông tin đến những đối tượng không được xác thực hoặc để lọt vào các hệ thống khác. Ví dụ: một giao dịch tín dụng qua Internet, số thẻ tín dụng được gửi từ người mua hàng đến người bán, và từ người bán đến nhà cung cấp dịch vụ thẻ tín dụng. Hệ thống sẽ cố gắng thực hiện tính bí mật bằng cách mã hóa số thẻ trong suốt quá trình truyền tin, giới hạn nơi nó có thể xuất hiện (cơ sở dữ liệu, log file, sao lưu (backup), in hóa đơn…) và bằng việc giới hạn truy cập những nơi mà nó được l

Tất tần tật về Bug Bounty

BBug Bounty là chương trình trao thưởng của các tổ chức cho các nhà nghiên cứu, các hacker có các phát hiện bảo mật trên hệ thống và các sản phẩm của tổ chức đó. Phần thưởng dành cho các nhà nghiên cứu khi báo cáo lỗ hổng phụ thuộc vào chương trình Bugbounty có thể là tiền mặt, quà tặng, vinh danh… Các nhà phát triển phần mềm quan tâm tạo ra các chương trình bug bounty trực tiếp hoặc gián tiếp qua các trang web cung cấp nền tảng bug bounty kết nối giữa nhà phát triển và hacker. Tham gia các chương trình bug bounty giúp cho các nhà phát triển phần mềm phát hiện và vá được nhiều lỗi bảo mật cho hệ thống giảm thiếu nguy cơ bị khai thác tấn công cho hệ thống. Còn đối với các nhà nghiên cứu và hacker mũ trắng là cơ hội đóng góp cho xã hội và kiếm thêm thu nhập cho bản thân. Dưới đây là những tổng hợp hỗ trợ cho công việc tìm kiếm lỗ hổng hoặc bắt đầu tìm hiểu để tham gia các chương trình Bug Bounty. Trang web cung cấp Bug Bounty: Bugcrowd: https://www.bugcrowd.com/ Hackerone: https://www.ha

Tìm kiếm websehll với Web Shell Detector Master

  Các source code được chia sẻ miễn phí trên internet chính là nơi để bị gắn shell vào website của bạn mà không hề hay biết. Một giải pháp hiệu quả là sử dụng Web Shell Detector Master để quét các file có chứa đoạn mã được chèn (File Scan Shell). Cách làm như sau: 1. Tải file tại website http://shelldetector.com/ hoặc https://github.com/emposha/PHP-Shell-Detector 2. Giải nén các thư mục trong tệp PHP-Shell-Detector-master.zip ra thư mục gốc của website gồm có: lang media version README.md shelldetect.db shelldetect.ini shelldetect.php 3. Đăng nhập vào file shelldetect.php theo đường dẫn https://web-cua-ban.com/shelldetect.php với username: admin và mật khẩu protect  4. Chờ quét và kiểm tra (lưu ý: kiểm tra kỹ trước khi xoá một đoạn code hoặc một file nào đó mà nghi ngờ là bị gắn shell) Navitive (Không có shell) Positive (Có shell) 5. Ngoài ra, nếu nghi ngờ file bị nhiễm virus có thể quét trực tuyến bằng các website: https://www.virustotal.com http://shelldetector.com  tại mục Submit S

Google Hacking - Kiến thức mà Pentester thường bỏ qua!

Mình để ý thấy có nhiều bạn đang bị lu mờ giữa 2 khái niệm Pentest và Hacking. Thực sự thì cũng sẽ khó có thể phân biệt rõ ràng nhưng "Hacking" là cụ từ bạn sẽ sử dụng khi bạn tìm thấy lổ hổng ( cả về lổ hổng logic và lổ hổng đến từ tech ) và khai thác được lổ hổng đó. Còn Pentest theo mình thì chỉ là kiểm tra đánh giá tính bảo mật của một hệ thống hoặc một server nào đó thôi. Ok! Bắt đầu với chủ đề mà mình đề cập tới sau đây. Có nhiều bạn trẻ hỏi mình: "Làm sao để có thể nhanh chóng tìm được lỗi từ ứng dụng web?". Câu trả lời của mình là:"Hãy bắt đầu với Google Hacking." Google Hacking là một thuật ngữ mà gói gọn một loạt các kĩ thuật cho phép truy vấn trên công cụ tìm kiếm Google.com, đôi khi được dùng để xác định các lổ hổng trong các ứng dụng web cụ thể.(Cụ thể như thế nào thì mình sẽ cố gắng giải thích tiếp trong giới hạn kiến thức mà mình biết). Bên cạnh việc truy vấn từ google có thể tiết lộ các lỗ hổng trong các ứng dụng web, Google Hacking cho phé