Ăm toi
BỘ GIÁO DỤC VÀ ĐÀO TẠO
ĐẠI HỌC NGOẠI NGỮ TIN HỌC THÀNH PHỐ HỒ CHÍ MINH
________________________
LUẬN VĂN TỐT NGHIỆP CỬ NHÂN CNTT
CÁC KIỂU TẤN CÔNG TRÊN MẠNG
Giáo viên huớng dẫn:
T
T
h
h
ầ
ầ
y
y
nNhóm sinh viên thực hiện:
Đặng Phạm Phúc Duy- MASV:0611180
Nguyễn Hoàng Quốc Phong - MASV:0611235 THÀNH PHỐ HỒ CHÍ MINH NĂM 2010
Các kiểu tấn công trên mạng
MỞ ĐẦU
Hiện nay, công nghệ thông tin đang phát triển ngày càng mạnh mẽ. Nhu cầu
sử dụng mạng trong đời sống hàng ngày là rất cao, ưu điểm của mạng máy tính đã
được thể hiện khá rõ trong mọi lĩnh vực của cuộc sống. Đó chính là sự trao đổi,
chia sẻ, lưu trữ và bảo vệ thông tin. Nhưng liệu khi tham gia vào hoạt động trên
mạng thông tin của chúng ta có thực sự an toàn, đó là câu hỏi mà nhiều người
thường xuyên đặt ra và đi tìm lời giải đáp. Bên cạnh nền tảng mạng máy tính hữu
tuyến, mạng máy tính không dây ngay từ khi ra đời đã thể hiện nhiều ưu điểm nổi
bật về độ linh hoạt, tính giản đơn, khả năng tiện dụng. Do đặc điểm trao đổi thông
tin trong không gian truyền sóng nên khả năng thông tin bị rò rỉ ra ngoài là điều dể
hiểu.Nếu chúng ta không khắc phục những điểm yếu này thì môi trường mạng sẽ
công từ chối dịch vụ. Các phương pháp phòng chống các kiểu tấn công trên.
Chƣơng 3.Mạng không dây: Tổng quan về Wireless, WLAN, các công nghệ trong
WLAN. Các mô hình mạng WLAN, đồng thời cũng cho thấy ưu và nhược điểm
của WLAN.
Chƣơng 4.Bảo mật mạng không dây: Tổng quan về cách thức mã hóa truyền dẫn
trong WLAN.Nguyên lý hoạt động, ưu nhược điểm của các phương thức bảo mật
cho mạng không dây.
Chƣơng 5.Tấn công mạng không dây: Trình bày các kiểu tấn công đặc thù trên
mạng không dây, và cách phòng chống các kiểu tấn công đó.
Chƣơng 6.Demo: Thực hiện tấn lấy mật khẩu của mạng không dây được bảo mật
bằng WEP. Sau thực hiện tấn công Man In Middle Attack kết hợp với Phishing
trong mạng chiếm lấy tài khoản truy nhập website của người dùng.
Các kiểu tấn công trên mạng MỤC LỤC
CHƢƠNG 1: GIỚI THIỆU 8
1.1. Tổng quan tình hình an ninh mạng trong những năm gần đây. 8
1.2. Các kiểu tấn công phổ biến trên mạng máy tính. 9
3.3.1.1. Nhóm lớp vật lý PHY 39
3.3.1.2. Nhóm liên kết dữ liệu MAC 41
3.3.2. Giới thiệu một số công nghệ mạng không dây. 42
3.4. Giới thiệu Wireless Lan 44
3.4.1. Lịch sử ra đời. 44
3.4.2. Ưu điểm của WLAN. 45
3.4.3. Nhược điểm của WLAN. 46
3.4.4. Các mô hình mạng WLAN. 46
3.4.5. Các thiết bị phụ trợ WLAN. 49
3.4.6. WireLess Access Point 49
3.4.7. Mô hình thực tế của mạng WLAN. 51
3.4.8. Một số cơ chế trao đổi thông tin trong WLAN 52
3.5. Tổng kết chương 53
CHƢƠNG 4: BẢO MẬT MẠNG KHÔNG DÂY 54
4.1. Cách thức tiến hành bảo mật cho WLAN 54
4.2. Cơ chế chứng thực 55
4.2.1. Nguyên lý RADIUS SERVER 55
4.2.2. Giao thức chứng thực mở rộng EAP 57
4.3. Tổng quan về mã hóa 59
4.3.1. Mật mã dòng 59
4.3.2. Mật mã khối 60
4.4. Các phương thức bảo mật trong WLAN 62
4.4.1. Bảo mật bằng WEP 62
Các kiểu tấn công trên mạng
4.4.1. Ưu và nhược điểm của WEP 68
4.4.2. Bảo mật bằng WPA/WPA2. 68
4.4.4. Bảo mật bằng TKIP 70
4.4.5. Bảo mật bằng AES 71
4.4.6 Lọc (Filtering). 71
- WLAN: Wireless Lan.
- TKIP: Temporal Key Integrity Protocol.
- AES: Advanced Encryption Standard.
- SSID: Service Set identifier.
- FHSS: Frequency Hopping Spread Spectrum.
- IEEE: Institute of Electrical and Electronic Engineers.
- OFMD: Orthogonal frequency-division multiplexing.
Các kiểu tấn công trên mạng
CHƢƠNG 1: GIỚI THIỆU
1.1. Tổng quan tình hình an ninh mạng trong những năm gần đây.
tấn công bằng sâu máy tính trên diện rộng sẽ lại phổ biến và Trojan vẫn tiếp
Các kiểu tấn công trên mạng
tục đóng vai trò chủ yếu trong các hoạt động tấn công qua mạng. Các loại
hình tấn công từ chối dịch vụ diễn ra trên quy mô lớn trong nửa đầu năm
2009.
- Xuất hiện các kiểu tấn công mới: Đầu năm 2010 các mạng xã hội ảo càng
bị tấn công chiếm lấy tài khoản thông tin nhiều hơn. Điện toán đám mây
đang được coi là đính ngắm của các hacker trong những tháng tiếp theo
(Nguồn ).
1.2. Các kiểu tấn công phổ biến trên mạng máy tính.
- Tấn công trực tiếp: Những cuộc tấn công trực tiếp thông thường được sử
dụng trong giai đoạn đầu để chiếm quyền truy nhập bên trong. Một phương
pháp tấn công cổ điển là dò tìm tên người sử dụng và mật khẩu. Đây là
phương pháp đơn giản, dễ thực hiện và không đòi hỏi một điều kiện đặc biệt
nào để bắt đầu. Kẻ tấn công có thể sử dụng những thông tin như tên người
dùng, ngày sinh, địa chỉ, số nhà…để đoán mật khẩu. Trong trường hợp có
được danh sách người sử dụng và những thông tin về môi trường làm việc,
có một trương trình tự động hoá về việc dò tìm mật khẩu này. Trong một số
trường hợp phương pháp này cho phép kẻ tấn công có được quyền của người
quản trị hệ thống (root hay administrator).
- Nghe trộm: Việc nghe trộm thông tin trên mạng có thể đưa lại những thông
tin có ích như tên, mật khẩu của người sử dụng, các thông tin mật chuyển
qua mạng. Việc nghe trộm thường được tiến hành ngay sau khi kẻ tấn công
đã chiếm được quyền truy nhập hệ thống, thông qua các chương trình cho
phép đưa card giao tiếp mạng (Network Interface Card-NIC) vào chế độ
nhận toàn bộ các thông tin lưu truyền trên mạng. Những thông tin này cũng
có thể dễ dàng lấy được trên Internet.
Các kiểu tấn công trên mạng
1.3. Mục tiêu của báo cáo.
Với sự phát triển mạnh mẽ của mạng máy tính hiện nay, nhu cầu sử dụng mạng
cho việc trao đổi và chia sẽ thông tin, tham gia trao đổi buôn bán. Thì mạng máy
tính trở thành môi trường dể tấn công nhất cho các hacker. Do đó bảo mật mạng
đang trở đang là điều cấp thiết với nhu cầu hiện nay.
Bài báo cáo “các kiểu tấn công trên mạng” được thực hiện nhằm mục tiêu báo
cáo về các kiểu tấn công phổ biến trên mạng. Tìm hiểu công nghệ mạng không dây
và các phương pháp tấn công. Và quan trọng là cách phòng chống những cách tấn
công trên.
Mục tiêu đề ra là:
Tìm hiểu một số kiểu tấn công phổ biến trên mạng.
Tìm hiểu công nghệ mạng không dây các phƣơng pháp tấn công đặc thù
vào mạng không dây.
Cách phòng phống các kiểu tấn công trên.
thông tin nhạy cảm khác.
- Biến thể của Sniffer là các chương trình nghe lén bất hợp pháp như: Công cụ
nghe lén Yahoo, MSN, ăn cắp password Email v…v…
Những điều kiện để Sniff xảy ra:
- Sniff có thể hoạt động trong mạng Lan, mạng WAN, mạng WLAN.
- Điều kiện cần chỉ là dùng cung Subnet Mark khi Sniffer.
- Ngoài ra ta còn cần một công cụ để bắt và phân tích gói tin như: Cain&Abel,
Ettercap, HTTP sniffer.
2.1.1 Các loại Sniff và cơ chế hoạt động.
Active sniff:
- Môi trường: chủ yếu hoạt động trong môi trường có các thiết bị chuyển mạch
gói.Phổ biến hiện nay là các dạng mạch sử dụng switch.
- Cơ chế hoạt động: Chủ yếu hiện nay thường dùng cơ chế ARP và RARP (2
cơ chế chuyển đổi từ IP sang MAC và từ MAC sang IP) bằng cách phát đi
Các kiểu tấn công trên mạng
các gói tin đầu độc, mà cụ thể ở đây là phát đi các gói thông báo cho máy gởi
gói tin là “tôi là người nhận” mặc không phải là “người nhận”.
- Đặc điểm: do phải gởi gói tin đi nên có thể chiếm băng thông mạng.Nếu
sniff quá nhiều máy trong mạng thì lượng gói gởi đi sẽ rất lớn (do liên tục
gởi đi các gói tin giả mạo) có thể dẫn đến nghẽn mạng hay gây quá tải trên
chính NIC của máy đang dùng sniff (thắt nút cổ chai).
Ngoài ra các sniffer còn dùng một số kỹ thuật để ép dòng dữ liệu đi qua NIC của
mình như:
- MAC fooding: làm tràn bộ nhớ switch từ đó switch sẽ chạy chế độ
forwarding mà không chuyển mạch gói.
- Giả MAC: các sniffer sẽ thay đổi MAC của mình thành MAC của một
máy hợp lệ và qua được chức năng lọc MAC của thiết bị.
- Arpwatch
- Symantec EndPoint
Đối với Passive Sniff:
- Khó có khả năng phát hiện, vì bất kỳ host nào trong mạng cũng có thể bắt
được gói tin.
- Tuy nhiên dạng mạng để loại sniff này hoạt động chủ yếu dạng mạng thường
dùng trong gia đình rất ít sử dụng cho doanh nghiệp.
- Tuy nhiên,hiện nay các doanh nghiệp thường dùng mạng không dây cho các
máy tính xách tay thì có thể sử dụng thêm các tính năng lọc MAC của thiết
bị, hay có thể xác thực bằng tài khoản,mật khẩu hay khóa truy cập.
2.1.3. Cách phòng chống Sniff.
Active Sniff:
- Công cụ kiểm tra băng thông: Như đã nêu trên các sniffer có thể gây nghẽn
mạng do đó có thể dùng các công cụ kiểm tra băng thông. Tuy nhiên, cách
làm này không hiệu quả.
- Công cụ bắt gói tin: Các sniffer phải đầu độc arp nên sẽ gởi arp đi liên tục,
nếu dùng các công cụ này ta có thể thấy được ai đang sniff trong mạng.Cách
Các kiểu tấn công trên mạng
này tương đối hiệu quả hơn, nhưng có một vài công cụ sniff có thể giả IP và
MAC để đánh lừa.
- Thiết bị: Đối với thiết bị ta có thể dùng các loại có chức năng lọc MAC để
phòng chống.Riêng với switch có thể dùng thêm chức năng VLAN trunking,
có thể kết hợp thêm chức năng port security (tương đối hiệu quả do dùng
VLAN và kết hợp thêm các chức năng bảo mật).
- Cách khác: Ngoài ra ta có thể cấu hình SSL, tuy hiệu quả, nhưng chưa cao
vẫn có khả năng bị lấy thông tin.
Đối với ngƣời dùng:
khai thác, truy cập mạng để tránh mất mát thông tin qua trọng.
- Để hạn chế sniff trên các hệ thống, ta nên hạn chế nhiều người tiếp xúc phần
vật lý của hệ thống, subnet của LAN, cấu hình VLAN, port secure trên
switch.
2.2. Phishing
- Phishing là loại hình gia lận (thương mại) trên Internet, một thành phần của
Social Engineering – “kỹ nghệ lừa đảo” trên mạng. Nguyên tắc của phishing
là bằng cách nào đó “lừa” người dùng gửi thông tin nhạy cảm như tên, địa
chỉ, mật khẩu, số thẻ tín dụng, mã thẻ ATM… đến kẻ lừa đảo (scammer).
Các thực hiện chủ yếu là mô phỏng lại giao diện trang web đăng nhập (login
page) của các website có thật, kẻ lừa đảo sẽ dẫn dụ nạn nhân (victim) điền
các thông tin vào trang “dỏm” đó rồi truyền tải đến anh ta (thay vì đến server
hợp pháp) để thực hiện hành vi đánh cắp thông tin bất hợp pháp mà người sử
dụng không hay biết.
- Theo thời gian, những cuộc tấn công phishing không còn chỉ nhằm vào các
tài khoản Internet của AOL mà đã mở rộng đến nhiều mục tiêu, đặc biệt là
các ngân hàng trực tuyến, các dịch vụ thương mại điện tử, thanh toán trên
mạng,… và hầu hết các ngân hàng lớn ở Mỹ, Anh, Úc hiện đều bị tấn công
bởi phishing. Vì cũng vì nhằm vào mục tiêu đánh cắp credit card nên nó còn
được gọi là Carding.
2.2.1. Cơ chế hoạt động.
Các kiểu tấn công trên mạng
Trước đây, hacker thường dùng trojan (gián điệp) đến máy nạn nhân để chương
trình này gửi mật khẩu hay thông tin đến kẻ tấn công. Sau này cách dùng lừa đảo
lấy thông tin được sử dụng nhiều hơn. Lừa đảo thì có rất nhiều cách, phổ biến và dễ
thực hiện vẫn là phishing. Nếu bạn từng nghe qua kỹ thuật “Fake Login Email” sẽ
References: <>
In-Reply-To: <>
Message-ID: <>
Reply-To: Verify <>
Sender: Verify <>
MIME-Version: 1.0
Content-Type: text/plain
Content-Transfer-Encoding: 8bit
Dear Citibank Member,This email was sent by the Citibank server to verify
your e-mail address. You must complete this process by clicking on the link
below and entering in the small window your Citibank ATM/DebitCard
number and PIN that you use on ATM.
This is done for your protection -t- becaurse some of our members no longer
have access to their email addresses and we must verify it.To verify your e-
mail address and access your bank account,click on the link below. If nothing
happens when you click on the link (or if you use AOL)K, copy and paste the
link into
the address bar of your web browser.
:ac=/3/?
3X6CMW2I2uPOVQW
y
Thank you for using Citibank!
C
This automatic email sent to:
Do not reply to this email.
R_CODE: ulG1115mkdC54cbJT469
Nếu quan sát kỹ, chúng ta sẽ thấy một số điểm “thú vị” của email này:
- Về nội dung thư: Rõ là câu cú, ngữ pháp lộn xộn, có cả những từ sai chính
tả, ví dụ becaurse, this automatic Và ai cũng rõ là điều này rất khó xảy ra
thành phần đứng sau chữ @. Ví dụ như link trên thì đường dẫn thực sự là
sd96V.pIsEm.NeT/3/?3X6CMW2I2uPOVQW.
- Sử dụng ký tự %01. Trình duyệt sẽ không hiển thị những thông tin nằm sau
kí tự này. Ví dụ <a
href=” %01@ />/?3X6CMW2I2uPOVQW”>Tên liên kết </a>. Lúc đó khi bạn đưa trỏ
chuột vào Tên liên kết thì trên thanh trạng thái chỉ hiển thị thông tin ở phía
trước ký tự %01.
Với Website giả ta dùng các cách sau:
Các kiểu tấn công trên mạng - Nếu nhấn vào liên kết ở email đó nó đưa bạn đến một trang đăng nhập
(dỏm). Dù bên ngoài nó giống hệt trang thật, ngay cả địa chỉ hay thanh trạng
thái nhìn cũng có vẻ thật.Nhưng nếu bạn xem kỹ liên kết trên thanh address
bar thì bạn sẽ thấy ở phía sau chữ @ mới là địa chỉ thật. Bạn mà điền thông
tin vào thì xem như… tiêu. Tốt hơn hết là xem mã nguồn (view source) của
form thì rõ là form thông tin không phải truyền đến citibank mà là đến một
nơi khác.
- Với cách tiếp cận theo kiểu “biết cách tấn công để phòng thủ” trên, chúng ta
sẽ thấy rõ hơn bản chất của một cuộc tấn công phishing – tấn công đơn giản,
nhưng hiệu quả thì rất cao. Một khi bạn hiểu được cách thức tấn công thì
chắc rằng bạn cũng sẽ có cách đối phó thích hợp. 2.2.3. Tổng kết Phishing
- Cẩn thận với những email lạ, đặc biệt là những email yêu cầu cung cấp
thông tin dù vẫn biết là phải tránh nhưng không ít trường hợp đều chủ
quan.
2.3. SQL injection
SQL injection là một kĩ thuật cho phép những kẻ tấn công lợi dụng lỗ hổng trong
việc kiểm tra dữ liệu nhập trong các ứng dụng web và các thông báo lỗi của hệ
quản trị cơ sở dữ liệu để "tiêm vào" (inject) và thi hành các câu lệnh SQL bất hợp
pháp. Hậu quả của nó rất tai hại vì nó cho phép những kẻ tấn công có thể thực hiện
các thao tác xóa, hiệu chỉnh, … do có toàn quyền trên cơ sở dữ liệu của ứng dụng,
thậm chí là server mà ứng dụng đó đang chạy. Lỗi này thường xảy ra trên các ứng
dụng web có dữ liệu được quản lí bằng các hệ quản trị cơ sở dữ liệu như SQL
Server, MySQL, Oracle, DB2, Sysbase. Đứng ở vị trí là một người lập trình web và
người quản trị bạn cần phải có những hiểu biết rõ ràng về sql injection để có thể
ngăn ngừa và và phòng tránh nó.
Cách thức hoạt động của một ứng dụng web: Các kiểu tấn công trên mạng
Hình 2.1: Quá trình gởi nhận dữ liệu trong quá trình user duyệt web
Bƣớc 1: User (kẻ tấn công) gởi một request đến web server với dấu ( „ ) để kiểm
tra xem trang web có bị dính lỗi SQL Injection không.
Bƣớc 2: Web Server nhận được request và tiến hành tạo câu truy vấn để lấy dữ liệu
từ Database Server.
Bƣớc 3: Database Server thực hiện câu truy vấn và trả về thông báo lỗi cho Web
server .
Bƣớc 4: Web Server trả về thông báo lỗi cho user (kẻ tấn công).
lỗ hổng về an toàn nào. Người dùng không thể đăng nhập mà không có tên đăng
nhập và mật khẩu hợp lệ. Tuy nhiên, đoạn mã này thực sự không an toàn và là tiền
đề cho một lỗi SQL injection. Đặc biệt, chỗ sơ hở nằm ở chỗ dữ liệu nhập vào từ
người dùng được dùng để xây dựng trực tiếp câu lệnh SQL. Chính điều này cho
phép những kẻ tấn công có thể điều khiển câu truy vấn sẽ được thực hiện.
Ví dụ, nếu người dùng nhập chuỗi sau vào trong cả 2 ô nhập liệu
username/password của trang login.htm là: ' OR ' ' = ' '. Lúc này, câu truy vấn sẽ
được gọi thực hiện là.
SELECT * FROM T_USERS WHERE USR_NAME ='' OR ''='' and
USR_PASSWORD= '' OR ''=''.
Câu truy vấn này là hợp lệ và sẽ trả về tất cả các bản ghi của T_USERS và đoạn mã
tiếp theo xử lí người dùng đăng nhập bất hợp pháp này như là người dùng đăng
nhập hợp lệ.
2.3.2. Dạng tấn công sử dụng câu lệnh SELECT.
Dạng tấn công này phức tạp hơn. Để thực hiện được kiểu tấn công này, kẻ tấn công
phải có khả năng hiểu và lợi dụng các sơ hở trong các thông báo lỗi từ hệ thống để
dò tìm các điểm yếu khởi đầu cho việc tấn công. Xét một ví dụ rất thường gặp trong
các website về tin tức. Thông thường, sẽ có một trang nhận ID của tin cần hiển thị
rồi sau đó truy vấn nội dung của tin có ID này.
Ví dụ: Mã nguồn cho chức năng
này thường được viết khá đơn giản theo dạng.
Các kiểu tấn công trên mạng
Trong các tình huống thông thường, đoạn mã này hiển thị nội dung của tin có ID
trùng với ID đã chỉ định và hầu như không thấy có lỗi. Tuy nhiên, giống như ví dụ