Như đã đề cập về vấn đề thiết lập kết nối trong phần 1, bất cứ1 gói tin SYN, máy
chủcũng phải để1 phần tài nguyên của hệthống nhưbộnhớ đệm đểnhận và
truyền dữliệu cho đường truyền đó. Tuy nhiên, tài nguyên của hệthống là có hạn
và hacker sẽtìm mọi cách đểhệthống tràn qua giới hạn đó. ( Đây cònđược gọi là
half-open connection vì máy khách mởkết nối giữa chừng)
Theo hình 9.III.2-1: Nếu máy chủsau khi gửi trảmột gói tin SYN/ACK đểthông
báo chấp nhận kết nối cho máy yêu cầu nhưng nếu địa chỉIP của máy yêu cầu này
là giảmạo thì gói tin không thể đến được đích, nên máy chủvẫn phải dành tài
nguyên cho yêu cầu đó. Sau một thời gian không nhận được phản hồi từmáy
khách, máy chủlại tiếp tục gửi một gói tin SYN/ACK đểxác nhận lần nữa và cứ
nhưvậy, kết nối vẫn tiếp tục mở.
55 trang |
Chia sẻ: lvbuiluyen | Lượt xem: 2133 | Lượt tải: 1
Bạn đang xem trước 20 trang tài liệu Nghiên cứu một số vấn đề về bảo mật ứng dụng web trên internet - Chương 9: Từ chối dịch vụ (Dos), để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Khoa CNTT
Chương 9: Từ chối dịch vụ (Dos)
-Trang 112-
III.2. Lợi dụng TCP thực hiện phương pháp SYN flood
truyền thống:
Hình 9.III.2-1: Tấn công DoS truyền thống
Như đã đề cập về vấn đề thiết lập kết nối trong phần 1, bất cứ 1 gói tin SYN, máy
chủ cũng phải để 1 phần tài nguyên của hệ thống như bộ nhớ đệm để nhận và
truyền dữ liệu cho đường truyền đó. Tuy nhiên, tài nguyên của hệ thống là có hạn
và hacker sẽ tìm mọi cách để hệ thống tràn qua giới hạn đó. ( Đây còn được gọi là
half-open connection vì máy khách mở kết nối giữa chừng)
Theo hình 9.III.2-1: Nếu máy chủ sau khi gửi trả một gói tin SYN/ACK để thông
báo chấp nhận kết nối cho máy yêu cầu nhưng nếu địa chỉ IP của máy yêu cầu này
là giả mạo thì gói tin không thể đến được đích, nên máy chủ vẫn phải dành tài
nguyên cho yêu cầu đó. Sau một thời gian không nhận được phản hồi từ máy
khách, máy chủ lại tiếp tục gửi một gói tin SYN/ACK để xác nhận lần nữa và cứ
như vậy, kết nối vẫn tiếp tục mở.
Nếu như hacker gửi nhiều gói tin SYN đến máy chủ đến khi máy chủ không thể
tiếp nhận thêm 1 kết nối nào nữa thì lúc này hệ thống đã bị phá vỡ.
Khoa CNTT
Chương 9: Từ chối dịch vụ (Dos)
-Trang 113-
Kết luận:
Chỉ với một đường truyền băng thông nhỏ, hacker đã có thể phá vỡ một hệ thống.
Thêm vào đó, địa chỉ IP của hacker có thể được sửa đổi nên việc xác định thủ
phạm là một vấn đề hết sức khó khăn.
III.3. Tấn công vào băng thông
III.3.1. Kiểu tấn công thứ 1
Hacker hoàn toàn có khả năng làm ngập hệ thống vì băng thông của hacker lớn
hơn băng thông của máy đích. Kiểu tấn công này không bị hạn chế bởi tốc độ
truyền mạng.
Ví dụ 9.III.3.1-1: Hacker có một đường truyền tốc độ cao T1 ( 1.544- Mbps ) hay
lớn hơn có thể dễ dàng phá vỡ một hệ thống có đường truyền 56Kbps.
III.3.2. Kiểu tấn công thứ 2
Kiểu tấn công này được sử dụng khi đường truyền mạng của hacker là quá thấp so
với đường truyền của máy đích.
Không giống như kiểu tấn công DoS truyền thống ( phần 2 ), kiểu tấn công vào
băng thông lớn hơn sẽ lợi dụng những gói tin từ những hệ thống khác nhau cùng
một lúc tiến đến hệ thống đích khiến cho đường truyền của hệ thống đích không
còn khả năng đáp ứng, máy chủ không còn khả năng nhận một gói tin nào nữa.
Khoa CNTT
Chương 9: Từ chối dịch vụ (Dos)
-Trang 114-
Hình 9.III.3.2-1: Kiểu tấn công DoS vào băng thông
Theo hình 9.III.3.2-1, tất cả các gói tin đi vào 1 mạng máy tính qua 1 "Big-Pipe" (
ống dẫn lớn ), sau đó được router chia ra những "Small Pipe" ( ống dẫn nhỏ ) cho
nhiều máy tính con tùy theo địa chỉ IP của gói tin.
Nhưng nếu toàn bộ "Big-Pipe" bị làm ngập bằng những gói tin chỉ hướng đến 1
máy nhất định trong mạng máy tính con này, router đành phải chấp nhận loại bỏ
phần lớn các packet để chỉ còn lại số lượng vừa đủ đi qua "Small Pipe" của máy
tính đó. Kiểu tấn công này sẽ loại máy đích ra khỏi Internet.
Đây là phương pháp tấn công kiểu từ chối dịch vụ nhưng không là DoS mà gọi là
DDoS ( kiểu từ chối dịch vụ phân tán ), nghĩa là cùng một lúc nhiều máy sẽ được
phát động để gửi gói tin đến máy đích ( mặc dù đường truyền của mỗi máy không
cao nhưng nhiều đường truyền lại hợp thành một ống dẫn “ Big Pipe”), làm cho
máy đích không còn khả năng tiếp nhận gói tin và bị loại khỏi mạng Internet, như
sơ đồ minh họa sau:ợc router chia ra những "Sm
Khoa CNTT
Chương 9: Từ chối dịch vụ (Dos)
-Trang 115-
computer con tùy
Hình 9.III.3.2-2: Tấn công DDoS
DRDoS (Distributed Reflection Denial of Service) - Thế hệ tiếp theo của
DDoS:
Đây cũng chính là nguyên nhân khiến cho trang grc.com bị phá vỡ.
Hình sau sẽ minh họa kiểu tấn công DRDoS này.
Khoa CNTT
Chương 9: Từ chối dịch vụ (Dos)
-Trang 116-
Hình 9.III.3.2-3. Tấn công kiểu DRDoS
Bằng cách giả địa chỉ IP của máy đích, hacker sẽ cùng lúc gửi nhiều gói tin
đến các hệ thống máy mạnh trên mạng, các hệ thống này khi nhận gói tin SYN
giả này, chấp nhận kết nối và gửi trả một gói tin SYN/ACK để thông báo. Vì
địa chỉ IP của gói tin SYN bị hacker sửa đổi thành địa chỉ IP máy đích nên
những gói tin SYN/ACK sẽ được gửi về cho máy đích. Cùng một lúc nhận
được nhiều gói tin, đường truyền của máy đích không đủ khả năng đáp ứng, hệ
thống máy đích từ chối nhận bất kì gói tin nào và lúc này hệ thống máy đích
đã bị sụp đổ.
Khoa CNTT
Chương 9: Từ chối dịch vụ (Dos)
-Trang 117-
III.4. Kiểu tấn công vào tài nguyên hệ thống
Đây là kiểu tấn công nhằm vào tài nguyên hệ thống hơn là tài nguyên mạng như
CPU, bộ nhớ, file hệ thống, tiến trình…..Hacker là một người dùng hợp lệ của hệ
thống, và được một lượng tài nguyên giới hạn trên hệ thống. Tuy nhiên, hacker sẽ
lạm dụng quyền truy cập này để yêu cầu thêm tài nguyên. Như vậy, hệ thống hay
những người dùng hợp lệ sẽ bị từ chối sử dụng tài nguyên chia sẻ.
Kiểu tấn công sẽ khiến cho hệ thống không thể sử dụng được vì tài nguyên đã bị
sử dụng hết, không còn tiến trình để thực thi nữa.
IV. BIỆN PHÁP PHÒNG CHỐNG
Kiểu tấn công từ chối dịch vụ là kiểu tấn công gây nhiều khó khăn trong vấn đề bảo
vệ cũng như điều tra tìm ra thủ phạm nhất, bởi vì hầu hết hacker đã thay đổi địa chỉ
IP của máy mình nên rất khó xác định ai là thủ phạm.
Để phòng chống khả năng khuyếch đại đường truyền, cần:
• Huỷ khả năng broadcast tại router biên
• Tăng kích thước hàng đợi kết nối
-> kết quả: có thể phòng tránh khả năng tràn hàng đợi qua nhiều kết nối, nhưng
cách này sử dụng nhiều tài nguyên
• Giảm thời gian thiết lập kết nối
• Dùng những phần mềm phát hiện và phá hủy kiểu tấn công DoS:
Hầu hết những hệ điều hành hiện nay đều hỗ trợ khả năng phát hiện và phòng chống
kiểu tấn công lụt SYN.
Khoa CNTT
Chương 9: Từ chối dịch vụ (Dos)
-Trang 118-
Tuy nhiên cũng đã có những phần mềm được có khả năng tránh kiểu tấn công này.
Ví dụ như với Linux kernels 2.0.30 và về sau cài đặt một tùy chọn gọi là SYN Cookie,
kernel có nhiệm vụ truy tìm và lưu vết những khả năng có thể xảy ra kĩ thuật SYN.
Sau đó, kernel sẽ sử dụng một giao thức mã hoá như SYN cookie cho phép người
dùng hợp lệ của hệ thống tiếp tục kết nối đến hệ thống
Với WindowNT 4.0 trở về sau, sử dụng kĩ thuật backlog, mỗi khi hàng đợi kết nối
không đủ đáp ứng, hệ thống tự động cung cấp tài nguyên cho hàng đợi, vì thế hàng
đợi sẽ không bị phá vỡ.
• Ứng dụng chỉ cho phép mỗi một máy con chỉ được thiết lập số kết nối tối đa theo
qui định tránh trường hợp hacker gửi cùng lúc nhiều yêu câu gây tắc nghẽn.
Nhận xét:
Kiểu tấn công từ chối dịch vụ tuy chỉ khiến cho hệ thống bị phá vỡ trong vài phút
nhưng hậu quả thì khá to lớn (ảnh hưởng trên phạm vi tiền và uy tín). Đây là kĩ thuật
thường được hacker sử dụng trong trường hợp không thể chiếm quyền quản trị trên
hệ thống hoặc thông tin, hoặc muốn phá hủy uy tín của cơ quan đó.Thêm vào đó việc
giả mạo địa chỉ khiến cho hacker càng dễ dàng thực hiện viêc tấn công mà không sợ
bị phát hiện. Thông thường kĩ thuật này được thực hiện kèm theo sự hỗ trợ của vài
công cụ như ping of death, teardrop…Những công cụ này được liệt kê thêm trong
chương 8 tiếp theo.
Khoa CNTT
Chương 10: Một số kĩ thuật tấn công khác
-Trang 119-
Chương 10
MỘT SỐ KĨ THUẬT TẤN CÔNG KHÁC
Nội dung :
I. Mã hóa URL.
II. Kiểu tấn công vượt đường dẫn
III. Tấn công dựa vào kí tự rỗng
IV. Ngôn ngữ trình chủ
Khoa CNTT
Chương 10: Một số kĩ thuật tấn công khác
-Trang 120-
CHƯƠNG 10: MỘT SỐ KĨ THUẬT TẤN CÔNG KHÁC
DE
I. MÃ HÓA URL (URL Encoding)
I.1. Khái niệm
Theo RFC 1738 định nghĩa URL và RFC 2369 cho URIs, những kí tự được giới
hạn sử dụng trên URL hoặc URI là một tập các kí tự US-ASCII. Theo RFC 1738,
2369 những kí tự chữ số, kí tự đặc biệt như “ $-_.+!*’() ” và một số kí tự dành
riêng là không bị mã hoá trên URL hay URIs. Còn những kí tự đặc biệt khác thì
được mã hóa như khoảng trắng, ”…Sau khi trình chủ nhận được dữ liệu này,
trình chủ sẽ tự động giải mã để thao tác như bình thường.
Vậy hacker có thể lợi dụng được gì trong URL mã hóa này.
Những nhà phát triển ứng dụng có thể sẽ thiết kế ứng dụng để kiểm tra dữ liệu
nhập vào của người dùng có hợp lệ hay không, những kí tự đặc biệc như
trong thẻ script thường được dùng trong những kĩ thuật tấn công như XSS sẽ bị
lọai bỏ Vậy để hợp thức hóa nội dung dữ liệu cần nhập, hacker thay vì nhập trực
tiếp kí tự đặc biệt vào ô nhập thì họ có thể nhập những kí tự đã được mã hoá theo
chuẩn RFC 1738, RFC 2369. Như vậy bằng cách đó, hacker có thể dễ dàng vượt
qua kiểm soát này.
Khoa CNTT
Chương 10: Một số kĩ thuật tấn công khác
-Trang 121-
Ví dụ 10.I.1-1:
p%3a%2f%2fwww.yourserver.com%2fbadscript.js%22%3e%3c%2fscript%3e
Biến mydata sẽ mang nội dung:
I.2. Một số biện pháp phòng chống
• Tránh sử dụng phương thức GET vì nếu dùng GET, dữ liệu dễ dàng được
thêm vào URL. Vì thế, sử dụng phương thức POST bất cứ khi nào có thể.
• Trong trường hợp URL bắt buộc được sử dụng để chuyển dữ liệu lên trình
chủ, cần giới hạn kiểu dữ liệu, nên kiểm tra dữ liệu trong ứng dụng trước khi
sử dụng.
• Không nên sử dụng ngôn ngữ máy khách để kiểm tra tính đúng đắn của dữ
liệu.
II. KIỂU TẤN CÔNG VƯỢT ĐƯỜNG DẪN
II.1. Khái niệm
Nhiều ứng dụng sử dụng tập tin hệ thống của trình chủ trong “lớp trình bày” để
hiển thị thông tin lưu trử tạm thời. Những tập tin này bao gồm những tập tin hình
ảnh , tập tin HTML, hay những ứng dụng CGI. Thư mục WWW-ROOT là một
thư mục gốc ảo bên trong trình chủ, nơi mà được truy xuất bởi trình duyệt. Ứng
dụng lưu trữ thông tin bên trong hoặc bên ngòai WWW-ROOT.
Nếu ứng dụng không kiểm tra những kí tự đặc biệt, thường được sử dụng trong
đường dẫn như “/” thì có thể rằng ứng dụng đã có một lỗ hổng cho kiểu tấn công
Khoa CNTT
Chương 10: Một số kĩ thuật tấn công khác
-Trang 122-
vượt đường dẫn. Hacker có thể yêu cầu trình chủ trả về kết quả là nội dung những
tập tin vật lí như /etc/password…
Tóm lại:
Kiểu tấn công này cũng dựa vào sự lỏng lẻo trong quá trình kiểm tra dữ liệu trên
URL, cookie, HTTP Header yêu cầu. Lợi dụng quyền truy xuất một tập tin của
ứng dụng, nhờ đó hacker có thể xem được file lưu trữ trên hệ thống.
Ví dụ 10.II.1-1:
“dangnhapthanhcong.asp”
nhưng nếu hacker thay đổi tên tập tin cần truy xuất như sau:
../etc/password
như vậy hacker có thể xem nội dung file password được lưu trữ trong hệ thống.
II.2. Một số biện pháp phòng chống
Việc phòng chống kiểu tấn công vượt đường dẫn là một thử thách lớn cho những
nhà ứng dụng trong một hệ thống phân tán. Tuy nhiên, cách phòng chống tốt nhất
vẫn là Ứng dụng cần kiểm tra việc truy xuất file trước khi xuất kết quả cho trình
duyệt.
Khoa CNTT
Chương 10: Một số kĩ thuật tấn công khác
-Trang 123-
III. TẤN CÔNG DỰA VÀO KÍ TỰ RỖNG
III.1. Khái niệm
Nhiều ứng dụng Web thường sử dụng ngôn ngữ lập trình như C, Java để tạo
modul xử lý những công việc như thao tác trên những dữ liệu nhập vào từ người
dùng. Lợi dụng kí tự kết thúc chuỗi mà hacker sẽ thêm vào một chuỗi nhập để
đánh lừa ứng dụng.
Ví dụ 10.III.1-1:
Giả sử hacker đưa vào một chuỗi “AA\0BB” thì qua chương trình lập trình bằng
ngôn ngữ C, chuỗi này có thể bị cắt ngắn thành AAAA vì C xem \0 là dấu hiệu
kết thúc chuỗi. Hacker có thể lợi dụng điều này để vượt qua các khâu kiểm tra nội
dung chuỗi.
III.2. Một số biện pháp phòng chống
Cách duy nhất để phòng chống trường hợp này đó là chỉ chấp nhận những dữ liệu
hợp lệ. Những kí tự như “\” phải bị lọai bỏ trước khi ứng dụng sử dụng chúng.
IV. NGÔN NGỮ PHÍA TRÌNH CHỦ
IV.1. Khái niệm
SSI là đoạn mã được nhúng vào trong trang Web để yêu cầu trình chủ cung cấp
thông tin ở một điểm nào đó trong trang.
Ví dụ 10.IV.1-1:
Khoa CNTT
Chương 10: Một số kĩ thuật tấn công khác
-Trang 124-
Dòng lệnh trên nhúng nội dung file “test.asp” vào trong trang Web.
Tuy nhiên, SSI không phải được hỗ trợ trong hầu hết các trình chủ, Apache và IIS
là 2 trình chủ hỗ trợ SSI. Trang Web có sử dụng SSI thường được lưu dưới dạng
.shtml hoặc .stm (là phần mở rộng của .html hay .htm) để báo hiệu cho trình chủ
biết trang này có sử dụng SSI để tiết kiệm thời gian xử lí cho trình chủ (không
mất thời gian tìm kiếm).
Quá trình thực hiện xử lí một trang Web yêu cầu:
Nếu không có bất kì chỉ thị nào khác, trình chủ chỉ gửi nội dung trang Web cho
trình duyệt nhưng với một SSI, thì công việc tuần tự theo những bước như sau:
• Trình chủ nhận dữ liệu và phân tích dữ liệu (tìm kiếm và phân loại những câu
lệnh đặc biệt) để chỉ thị thực hiện
• Dưa trên những câu lệnh mà trình chủ tìm thấy, trình chủ thực thi những câu
lệnh đó để trả kết quả cho trình duyệt.
• Trả kết quả về cho trình duyệt
Có 3 khả năng thực hiện:
• Nhận thông tin từ một file và chèn vào trong trang
• Gán giá trị cho một số biến
• Gọi chương trình CGI
Nội dung câu lệnh SSI xem trong phần phụ lục.
Khoa CNTT
Chương 10: Một số kĩ thuật tấn công khác
-Trang 125-
IV.2. Cách tấn công
Hacker lợi dụng những ô nhập để chèn thêm vào đó nội dung một câu lệnh SSI.
Ví dụ 10.IV.2-1:
<!--#jdbc select="SELECT * FROM User" name="result"
driver="org.gjt.mm.mysql.Driver"
url="jdbc:mysql://localhost:3306/project" -->
Thiết lập câu lệnh Select
Câu lệnh này di chuyển con trỏ đến dòng đầu tiên trong tập tin.
Hiển thị nội dung dòng đầu tiên.
IV.3. Biện pháp phòng chống
Với người quản trị, cấu hình lại trình chủ sao cho trình chủ không hỗ trợ SSI.
Với người lập trình, kiểm tra kĩ nội dung dữ liệu gửi từ người dùng. Loại bỏ
những kí tự như # -- !…Tuy nhiên điều này nên được thực hiện tại trình chủ,
không nên kiểm tra tính đúng đắn của dữ liệu bằng ngôn ngữ phía trình khách, vì
khả năng thay đổi nội dung của trang Web.
Khoa CNTT
Chương 11: Tổng kết quá trình tấn công của Hacker
-Trang 126-
Chương 11
TỔNG KẾT QUÁ TRÌNH TẤN CÔNG
CỦA HACKER
Nội dung:
I. Thu thập thông tin ở mức hạ tầng của mục tiêu
II. Khảo sát ứng dụng Web
III. Tấn công
Khoa CNTT
Chương 11: Tổng kết quá trình tấn công của Hacker
-Trang 127-
CHƯƠNG 11:
TỔNG KẾT QUÁ TRÌNH TẤN CÔNG CỦA HACKER
DE
Theo tài liệu Hacking Exposed của Stuart McClure, Joel Scambray, George Kurtz thì
các kẻ tấn công thường thực hiện các giai đoạn sau khi tấn công
I. THU THẬP THÔNG TIN Ở MỨC HẠ TẦNG CỦA MỤC
TIÊU
• Bước 1: FootPrinting (thu thập thông tin):
Đây là cách mà hacker làm khi muốn lấy một lượng thông tin tối đa về máy
chủ/doanh nghiệp/người dùng, bao gồm chi tiết về địa chỉ IP, Whois, DNS
..v.v - là những thông tin chính thức có liên quan đến mục tiêu.
Công cụ hỗ trợ: UseNet , search engines (công cụ tìm kiếm) , Edgar Any Unix
client, nslookup Is -d , Sam spade,
dig
• Bước 2: Scanning (Quét thăm dò):
Phần lớn thông tin quan trọng từ server có được từ bước này , bao gồm quét cổng,
xác định hệ điều hành, .v.v.. để biết các port trên server, nghe đường dữ liệu.
Các công cụ: fping, icmpenum Ws_ping ProPack, nmap, SuperScan, fscan nmap,
queso, siphon.
• Bước 3: Enumeration (liệt kê tìm lỗ hổng):
Khoa CNTT
Chương 11: Tổng kết quá trình tấn công của Hacker
-Trang 128-
Bước thứ ba là tìm kiếm những tài nguyên được bảo vệ kém, hoạch tài
khoản người dùng mà có thể sử dụng để xâm nhập, bao gồm các mật khẩu
mặc định, các script và dịch vụ mặc định. Rất nhiều người quản trị mạng
không biết đến hoặc không sửa đổi lại các giá trị này.
Các công cụ phụ trợ: null sessions, DumpACL, sid2user, OnSite Admin
showmount, NAT Legion banner grabbing với telnet, netcat, rpcinfo.
• Bước 4: Gaining access (Tìm cách xâm nhập):
Bây giờ hacker sẽ tìm cách truy cập vào mạng bằng những thông tin có
được ở ba bước trên. Phương pháp được sử dụng ở đây có thể là tấn
công vào lỗi tràn bộ đệm, lấy và giải mã file password, hay brute force (kiểm tra
tất cả các trường hợp) password.
Các công cụ: tcpdump, L0phtcrack readsmb, NAT, legion, tftp, pwdump2 (NT)
ttdb, bind, IIS, HTR/ISM.DLL.
• Bước 5: Escalating privilege (Leo thang đặc quyền):
Trong trường hợp hacker xâm nhập đựợc vào mạng với một tài khoản nào đó, thì
họ sẽ tìm cách kiểm soát toàn bộ hệ thống. Hacker sẽ tìm cách crack password
của admin, hoặc sử dụng lỗ hổng để leo thang đặc quyền.
John và Riper là hai chương trình crack password rất hay được sử dụng.
Công cụ: L0phtcrack, Ic_messages, getadmin, sechole.
• Bước 6: Pilfering (Dùng khi các file chứa pass bị sơ hở):
Khoa CNTT
Chương 11: Tổng kết quá trình tấn công của Hacker
-Trang 129-
Thêm một lần nữa các máy tìm kiếm lại đựơc sử dụng để tìm các phương
pháp truy cập vào mạng. Những file text chứa password hay các cơ chế không an
toàn khác có thể là đích cho hacker.
Thông tin lấy từ bước trên đủ để ta định vị server và điều khiển server. Nếu bước
này không thành công, đến bước .
Công cụ hỗ trợ: rhost, LSA Secrets user data, configuration files, Registry.
• Bước 7: Covering Tracks (Xoá dấu vết) :
Sau khi đã có những thông tin cần thiết, hacker tìm cách xoá dấu vết, xoá các file
log của hệ điều hành làm cho người quản lý không nhận ra hệ thống đã bị xâm
nhập hoặc có biết cũng không tìm ra kẻ xâm nhập là ai.
Xóa log. Công cụ: Zap, Event log GUI, rootkits, file streaming.
• Bước 8: Creating Backdoors (Tạo cửa sau chuẩn bị cho lần xâm nhập tiếp theo
được dễ dàng hơn):
Hacker để lại "Back Doors", tức là một cơ chế cho phép hacker truy nhập trở lại
bằng con đường bí mật không phải tốn nhiều công sức, bằng việc cài đặt Trojan
hay tạo user mới (đối với tổ chức có nhiều user).
Công cụ ở đây là các loại Trojan, keylog, creat rogue user accounts, schedule
batch jobs, infect startup files, plant remote control services, install monitoring
mechanisms, replace apps with Trojan.
Khoa CNTT
Chương 11: Tổng kết quá trình tấn công của Hacker
-Trang 130-
Công cụ: members of wheel, administrators cron, At rc, Startup folder, registry
keys, netcat, remote.exe, VNC, BO2K, keystroke loggers, add acct to secadmin
mail aliases login, fpnwclnt.dll
II. KHẢO SÁT ỨNG DỤNG WEB
Phương pháp khảo sát khá phổ biến, đó là Xem mã nguồn và lợi dụng các lỗi cho
phép xem mã nguồn.
Một số ngôn ngữ web thông dụng hiện nay có nhiều lỗi này như Active Server Pages
(ASP), Common Gateway Interface (CGI), ColdFusion Server (CFM), Hypertext
Preprocessor (PHP).
Tìm các site bị lỗi này bằng cách dùng www.google.com, search từ khóa liên quan.
Sử dụng allinurl: trước đoạn string đặc biệt cần kiếm, thì những trang Web tìm kiếm
được chắc chắn sẽ có chuỗi cần tìm.
Ví dụ 11.II-1: "allinurl:/advadmin" (không có ngoặc kép) thì chỉ liệt kê ra những
trang có URL có dạng :
Tìm các file trên thì thêm chữ type file: trước tên file cần tìm
trên các chuyên khu web.
Ví dụ 11.II-2:
+ Muốn tìm file mdb (đây là file chứa mật khẩu của các trang Web, dùng Access để
mở) thì vào và đánh type file:mdb
Khoa CNTT
Chương 11: Tổng kết quá trình tấn công của Hacker
-Trang 131-
+ Tìm file SAM (đây là file chứa Password của Windows NT, dùng L0phtCrack để
Crack) thì vào và đánh type file:SAM
• Tấn công vượt qua các cơ chế kiểm soát (authentication, authorization)
Bao gồm các phương pháp như đoán mật khẩu, thay đổi thông tin cookies, các kĩ
thuật directory traversal, leo thang đặc quyền, các phương pháp tấn công dựa vào
SQL, SQL injection...
• Tìm hiểu sâu về các chức năng của ứng dụng web
Tìm hiểu cách thực hiện của các phần trong ứng dụng, đặc biệt như các order
input, confirmation, order tracking. Ở đây ta có thể áp dụng các phương pháp như
SQL Injection, input validation...
• Tìm hiểu luồng di chuyển của thông tin
Các thông tin tương tác giữa client và server, các thông tin tương tác với database.
Hiện nay việc viết mã để thực hiện việc giao tiếp thông tin thường phải đảm bảo
được tính hiệu quả (nhanh), và bảo mật (có thể sẽ chậm hơn). Thường thì tính
hiệu quả được ưu tiên hơn do đó có thể sẽ phát sinh lỗi trong quá trình đó và giúp
hacker có thể lợi dụng các lỗi như SQL input...để đoạt quyền điều khiển hệ thống.
III. TẤN CÔNG
Sau khi đã thu thập và khảo sát kỹ càng đối tượng, hacker bắt đầu thực hiện tấn công
nhằm xâm nhập vào hệ thống lấy thông tin, đưa thông tin xấu vào, dành quyền kiểm
soát,… Còn nếu không thành công trong việc xâm nhập, thì Dos là cách thức cuối
cùng mà hacker thường lựa chọn để làm cho hệ thống không thể hoạt đông được.
Khoa CNTT
Chương 11: Tổng kết quá trình t