Hiển thị kết quả từ 1 đến 2 / 2
  1. #1
    Tham gia
    28-03-2009
    Bài viết
    30
    Like
    0
    Thanked 0 Times in 0 Posts

    Trang login với tất cả các ngôn ngữ! So hot

    em có 1 trang login với 2 cái textbox User và Pass, 1 nút Submit
    em viết 1 đoạn code kiểm tra login có cái câu lệnh SQL như sau :

    strSQL="select * from CheckLogin where username='"+user+"' and password='"+pass+"'" ;

    Với user và pass là dữ liệu ng` dùng nhập vào. Việc kiểm tra xem như bình thường ko có vấn đề gì xảy ra. Đến khi thầy của em gõ vào cùng 1 chuỗi kí tự vào 2 textbox thì nó vẫn log vào đc mặc dù chuỗi ký tự đó ko trùng với CSDL.

    Anh nào biết chuỗi kí tự đó ko share cho em thử lại với. Lâu rùi nên em quên mất
    Quote Quote

  2. #2
    Tham gia
    18-04-2005
    Bài viết
    288
    Like
    0
    Thanked 1 Time in 1 Post
    Quote Được gửi bởi ngocquy_ytc View Post
    em có 1 trang login với 2 cái textbox User và Pass, 1 nút Submit
    em viết 1 đoạn code kiểm tra login có cái câu lệnh SQL như sau :

    strSQL="select * from CheckLogin where username='"+user+"' and password='"+pass+"'" ;

    Với user và pass là dữ liệu ng` dùng nhập vào. Việc kiểm tra xem như bình thường ko có vấn đề gì xảy ra. Đến khi thầy của em gõ vào cùng 1 chuỗi kí tự vào 2 textbox thì nó vẫn log vào đc mặc dù chuỗi ký tự đó ko trùng với CSDL.

    Anh nào biết chuỗi kí tự đó ko share cho em thử lại với. Lâu rùi nên em quên mất
    Nếu bạn dùng câu lệnh này để kiểm tra đăng nhập thì thua rồi, lỗi ở đây là SQL Injection, lỗi nghiêm trọng nhất của việc bảo mật trong lập trình ứng dụng. Với trường hợp của bạn thì khi nhập ở ô password giá trị: ' or ''=' thì sẽ đăng nhập vào được. Để fix lỗi này bạn có thể dùng các hàm replace để check dữ liệu đầu vào.

    Thân,

Bookmarks

Quy định

  • Bạn không thể tạo chủ đề mới
  • Bạn không thể trả lời bài viết
  • Bạn không thể gửi file đính kèm
  • Bạn không thể sửa bài viết của mình
  •