Một số tips giúp ứng dụng Ruby on Rails bảo mật hơn

Tram Ho

Tổng quan

Các Web framework ra đời giúp cho các lập trình viên phát triển các ứng dụng web một cách nhanh chóng và tiện lợi. Các framework cung cấp sẵn một số thư viện hoặc một số function cho phép các lập trình viên sử dụng cho một số tác vụ cụ thể mà không cần thực hiện code từ đầu. Các framework cũng thường cung cấp một số hàm có sẵn các cơ chế chống lại các lỗ hổng bảo mật. Ví dụ, Ruby on Rails cung cấp một số hàm truy vấn cơ sở dữ liệu có thể chống lại SQL injection. Hoặc các form của ứng dụng Ruby on Rails sẽ được tạo ra các token ngẫu nhiên để chống lại lỗi CSRF nếu chúng ta gọi csrf_token của form trong khi tạo ra form.

Tuy nhiên, không phải cứ framework cung cấp sẵn các hàm và có khả năng chống lại các lỗ hổng bảo mật thì chúng ta sẽ hoàn toàn an toàn khi phát triển ứng dụng. Điều trên chỉ đúng khi lập trình viên sử dụng đúng theo hướng dẫn của nhà phát triển và sử dụng một cách an toàn. Để hiểu hơn vấn đề này, chúng ta sẽ cùng theo dõi các ví dụ theo các lỗi được trình bày bên dưới.

Security guides

Injection

Lỗ hổng xảy ra khi ứng dụng Rails không thực hiện validate đầu vào người dùng cung cấp.

Example

SQL Injection

Dưới dây là một ví dụ về việc sử dụng không đúng các hàm truy vẫn cơ sở dữ liệu dẫn đến lỗ hổng bảo mật SQL Injection:

Đoạn code trên bị lỗi SQL Injection ở cả 2 tham số:params[:state]params

Chia sẻ bài viết ngay

Nguồn bài viết : Viblo