Tắt Quảng Cáo [X] Đăng Nhập để ẩn Tất Cả Quảng Cáo #j2team_discussion ***SQL INJECTION LỖ HỔNG CON KIẾN, HẬU QUẢ CON VOI*** SQL Injection là một lỗ hổng rất cơ bản nhưng lại dễ dàng bị bỏ qua trong quá trình phát triển ứng dụng. Lỗ hổng này nguy hiểm tới mức cho phép các h@cker lấy quyền quản trị của website, thay đổi nội dung, lợi dụng để ăn cắp các thông tin nhạy cảm, hoặc thậm chí làm bàn đạp tấn công chiếm quyền quản trị toàn hệ thống. Đây là phương thức tấn công yêu thích của Hacker khi lần đầu tiếp cận với website của bạn. Lỗ hổng này có thể hiểu đơn giản như sau. Trang web của bạn được tạm chia thành hai thành phần là Code và Cơ sở dữ liệu (CSDL - Database). Các chức năng của trang Web như đăng ký, đăng nhập, mua hàng, đọc tin tức được lập trình viên tạo ra phải kết nối vào Database. Việc kết nối này giúp cho thông tin của bạn và khách hàng được lưu trữ, kiểm tra và xử lý. Để Code và Database có thể hiểu được nhau thì Code phải sử dụng ngôn ngữ của Database là SQL để giao tiếp. Tỉ dụ, có một ông khách muốn lấy những qủa CAM trong rổ HOA QUẢ nhưng với điều kiện là ĐÃ CHÍN trong trang Web của bạn. Phần Code lúc này nói cho Database hiểu được nhu cầu của ông khách kia là: * _̉ ̣ = ̣_́ = Đ̃ ́ Với lòng tham và cách chơi không cần xanh chín, ông khách kia đã sửa đoạn yêu cầu Loại quả của mình cần mua lúc này là "Cam--" (Có hai dấu gạch ngang ở cuối) thay vì "Cam". Code có biết gì đâu, cũng ngoan ngoãn làm theo, và gửi cho Database câu truy vấn là: * _̉ ̣ = -- ̣_́ = Đ̃ ́ CSDL lúc này tự nhiên trả về tất cả các quả Cam mà không cần biết nó đang ở Trạng_Thái nào. Vì trong ngôn ngữ của Database thì hai cái dấu gạch ngang (--) được hiểu là bỏ qua hết những thứ đằng sau. Hành động của ông khách kia được gọi là Injection (tiêm vào), và cái thứ tiêm vào là ngôn ngữ SQL. Nên người ta gọi là SQL Injection. Cre: Cookie Hân Hoan #sql #cookiehanhoan #cookieowasp #cookiebaomatweb
Trước mình có xem clip sql inject của anh code dạo mà còn hơi lấn cấn, giờ đọc bài này được thông não luôn
Cảm ơn chủ thớt. Rất ngắn gọn dễ hiểu. Hi vọng có series "Mỗi ngày 1 kiến thức lập trình" thú vị như này
Thời mình còn học phổ thông, tầm 15 năm trước thì đã thấy các forum hacker suốt ngày làm cái SQL Injection này rồi. Nên giờ có cty chuyên bảo mật B nào đó mà vẫn dính lỗi này thì đúng kiểu bị cười vào mặt ý )
Bên java việc dùng preparedstatement đã khắc phục được trường hợp này nhưng ko biết mấy ngôn ngữ khác thì sao
Dạo này học sql riết sợ với ám ảnh nên ngày nào cũng lướt thấy sql hết trơn, đọc rom-com cũng dính nữa luôn á các bác
Trc làm project về web với C# thầy có khuyên e dùng LINQ. Ko biết có phải để tránh phải cái SQL Injection kia ko nhỉ