<![CDATA[Latest posts for the topic "Giúp về thủ thuật về phòng chống SQL-ịnection"]]> /hvaonline/posts/list/8.html JForum - http://www.jforum.net Giúp về thủ thuật về phòng chống SQL-ịnection /hvaonline/posts/list/40840.html#251309 /hvaonline/posts/list/40840.html#251309 GMT Giúp về thủ thuật về phòng chống SQL-ịnection hàm post thay cho hàm get trong form (vậy các website nếu không muốn bị sql injection thì chuyển hết form sang phương thức post chăng? Post, Get là phương thức của form, không phải hàm) - Tạo trang bảo vệ dùng code php (bảo vệ cái gì?) - Tạo class database chống sql injection (đi tạo cái class này rồi sẽ bị dẫn về lại câu hỏi "làm cách nào chống sql injection?") - Đặt biến id (biến gì?) - Đặt biến cho câu query (dấu @ đặt trước hàm là để che lỗi nếu hàm xảy ra lỗi) Mấu chống của việc chống sql injection là kiểm tra và loại bỏ dữ liệu nguy hiểm mà user có thể input vào. Muốn chống hiệu quả thì phải tìm hiểu coi người ta inject sql như thế nào.]]> /hvaonline/posts/list/40840.html#251356 /hvaonline/posts/list/40840.html#251356 GMT Giúp về thủ thuật về phòng chống SQL-ịnection

lovestormknx wrote:
Đọc 7 thủ thuật chống sql injection của bạn thì thấy bạn cần tìm hiểu thêm về sql injection, một số thủ thuật nghe nó "kỳ quái" và ngôn từ không chuẩn quá: 
Cám ơn anh đã nhận xét đúng đắng .

lovestormknx wrote:
- Dùng hàm post thay cho hàm get trong form (vậy các website nếu không muốn bị sql injection thì chuyển hết form sang phương thức post chăng? Post, Get là phương thức của form, không phải hàm) 
Em hiểu khi nào dùng Get và khi nào dùng Post ,
- Đặt biến id (biến gì?)  
Mỗi table products có ít nhất 1 PK và biến ID này là biến phụ dùng để chuyển dữ liệu list products sang detall products và đặt bằng dấu " ' ".
Mấu chống của việc chống sql injection là kiểm tra và loại bỏ dữ liệu nguy hiểm mà user có thể input vào. Muốn chống hiệu quả thì phải tìm hiểu coi người ta inject sql như thế nào. 
Em cũng có tìm hiểu sơ qua về các cách inject . Ở trên em chỉ là nêu ra vắng tắt chứ còn trình bày từng cách 1 thì rất dài dòng .Hiện tại em chỉ học năm 3 và đây la site đầu tiên em viết cho tư nhân .Nên cần nhiều ý kiến để hoàn thành tốt công việc , cũng như tìm hiểu thêm về SQL - injection Cám ơn anh đã ý kiến .]]>
/hvaonline/posts/list/40840.html#251360 /hvaonline/posts/list/40840.html#251360 GMT
Giúp về thủ thuật về phòng chống SQL-ịnection /hvaonline/posts/list/40840.html#251372 /hvaonline/posts/list/40840.html#251372 GMT Giúp về thủ thuật về phòng chống SQL-ịnection /hvaonline/posts/list/40840.html#251379 /hvaonline/posts/list/40840.html#251379 GMT Giúp về thủ thuật về phòng chống SQL-ịnection /hvaonline/posts/list/40840.html#251391 /hvaonline/posts/list/40840.html#251391 GMT Giúp về thủ thuật về phòng chống SQL-ịnection /hvaonline/posts/list/40840.html#251485 /hvaonline/posts/list/40840.html#251485 GMT Giúp về thủ thuật về phòng chống SQL-ịnection /hvaonline/posts/list/40840.html#251871 /hvaonline/posts/list/40840.html#251871 GMT Giúp về thủ thuật về phòng chống SQL-ịnection

saxvai wrote:
Mình thấy java , .net có hỗ trợ việc chống sql injection rất tốt. Do nó có cơ chế setParameter trong câu lệnh truy vấn, và loại bỏ ý nghĩa của các ký tự đặc biệt. Còn php thì bạn cũng có thể viết một hàm để sử dụng nếu bạn lười. Còn nếu bạn siêng thì có thể tìm hiểu và sử dụng một vài framework có hỗ trợ sẵn . ^^ 
Java có những hỗ trợ gì sẵn có liên quan đến việc chống SQL Injection vậy bồ ;-) ?]]>
/hvaonline/posts/list/40840.html#251872 /hvaonline/posts/list/40840.html#251872 GMT
Giúp về thủ thuật về phòng chống SQL-ịnection

bolzano_1989 wrote:

saxvai wrote:
Mình thấy java , .net có hỗ trợ việc chống sql injection rất tốt. Do nó có cơ chế setParameter trong câu lệnh truy vấn, và loại bỏ ý nghĩa của các ký tự đặc biệt. Còn php thì bạn cũng có thể viết một hàm để sử dụng nếu bạn lười. Còn nếu bạn siêng thì có thể tìm hiểu và sử dụng một vài framework có hỗ trợ sẵn . ^^ 
Java có những hỗ trợ gì sẵn có liên quan đến việc chống SQL Injection vậy bồ ;-) ? 
PreparedStatement đó bồ]]>
/hvaonline/posts/list/40840.html#251902 /hvaonline/posts/list/40840.html#251902 GMT
Giúp về thủ thuật về phòng chống SQL-ịnection

saxvai wrote:

bolzano_1989 wrote:

saxvai wrote:
Mình thấy java , .net có hỗ trợ việc chống sql injection rất tốt. Do nó có cơ chế setParameter trong câu lệnh truy vấn, và loại bỏ ý nghĩa của các ký tự đặc biệt. Còn php thì bạn cũng có thể viết một hàm để sử dụng nếu bạn lười. Còn nếu bạn siêng thì có thể tìm hiểu và sử dụng một vài framework có hỗ trợ sẵn . ^^ 
Java có những hỗ trợ gì sẵn có liên quan đến việc chống SQL Injection vậy bồ ;-) ? 
PreparedStatement đó bồ 
PreparedStatement dùng không phù hợp vẫn bị tấn công SQL Injection.]]>
/hvaonline/posts/list/40840.html#251910 /hvaonline/posts/list/40840.html#251910 GMT
Giúp về thủ thuật về phòng chống SQL-ịnection PreparedStatement dùng không phù hợp vẫn bị tấn công SQL Injection.  Uhm, cái nì tớ hoàn toàn đồng ý. Bởi vì nó còn phụ thuộc vào ngừoi lập trình phần lớn. Bởi thế nên sự cẩu thả và lừoi biếng sẽ tiềm ẩn những nguy cơ bị hack rất nhiều. Mà thôi, tôi nghĩ chúng ta cũng hơi lạc đề. Bởi vì tác giải chỉ muốn biết các giải pháp chống sql injection thôi. Như các bạn khác cũng đã đề cập, nếu muốn chống sql injection, thì việc vô hiệu hoá những ký tự đặt biệt trong hệ quản trị cơ sở dữ liệu là điều cần thiết. Nên tiến hành việc kiểm tra ở cả client và server nữa để cho an toàn. Và nếu được thì bạn có thể dùng store procedure để lấy kết quả về. Store procedure có khả năng loại bỏ ý nghĩa của các ký tự đặt biệt mà người sử dụng thêm vào. ]]> /hvaonline/posts/list/40840.html#251938 /hvaonline/posts/list/40840.html#251938 GMT Giúp về thủ thuật về phòng chống SQL-ịnection /hvaonline/posts/list/40840.html#252357 /hvaonline/posts/list/40840.html#252357 GMT Giúp về thủ thuật về phòng chống SQL-ịnection /hvaonline/posts/list/40840.html#252364 /hvaonline/posts/list/40840.html#252364 GMT Giúp về thủ thuật về phòng chống SQL-ịnection http://au2.php.net/addcslashes) để mã hoá dữ liệu trước khi đưa vào câu truy vấn VD: Code:
$id=$_REQUEST['id'];
$sql="SELECT * FROM abc_table WHERE id='".addcslashes($id,"'")."'";
ở ví dụ trên mình dùng ký tự ' vì thế mình sẽ escape hết tất cả các ký tự ' trong biến đưa vào query. ]]>
/hvaonline/posts/list/40840.html#252912 /hvaonline/posts/list/40840.html#252912 GMT