Upload
tan0710
View
164
Download
2
Embed Size (px)
Citation preview
1
Báo cáo thực tập tốt nghiệp
Đề tài: Các bước tấn công hệ thống thông tin
Giảng viên hướng dẫn Th.S Nguyễn Ngọc Điệp
Sinh viên thực hiện Phạm Thị Lan
Lớp D09CNPM1
2
Mục lục
Lời nói đầu ................................................................................................................ 4
Chương 1 Footprinting .............................................................................................. 5
I. Giới thiệu về Footprinting .............................................................................. 5
II. Phương pháp thực hiện Footprinting .............................................................. 5
III. Các công cụ được sử dụng trong Footprinting ............................................ 6
1. Sam Spade ...................................................................................................... 6
2. Super Email Spider ......................................................................................... 9
3. VitualRoute Trace ........................................................................................ 10
4. Maltego ......................................................................................................... 10
IV. Google Hacking ......................................................................................... 11
1. Google Hacking là gì? .................................................................................. 11
2. Hacker có thể là được những gì? .................................................................. 11
3. Những cú pháp tìm kiếm nâng cao với Google: .......................................... 12
4. Các công cụ sử dụng trong Google Hacking: Gooscan, GoogleHacks, Sige
Digger ............................................................................................................... 12
V. Lab ................................................................................................................ 13
Chương 2 Scanning ................................................................................................. 16
I. Network Scanning .......................................................................................... 16
II. Các phương pháp Scanning ............................................................................ 17
III. Lab ................................................................................................................. 17
1. Sử dụng phần mềm Nmap ............................................................................ 17
3
Chương 3 Enumeration ........................................................................................... 19
I. Enumeration là gì? ........................................................................................... 19
II. Banner Grabbing ............................................................................................. 19
III. Enumerating các dịch vụ mạng ..................................................................... 19
Chương 4 System hacking ...................................................................................... 23
I. Giới thiệu System Hacking .............................................................................. 23
II. Lab .................................................................................................................. 23
Chương 5 Trojan and BackDoor ............................................................................. 24
I. Giới thiệu về Trojan và Backdoor .................................................................... 24
II. Các kiểu Trojan- Backdoor: ............................................................................ 24
III. Cách phòng chống ......................................................................................... 24
Chương 6 Sniffer ..................................................................................................... 25
4
Lời nói đầu
Hệ thống thông tin là thành phần thiết yếu trong mọi cơ quan, tổ chức, đem lại
khả năng xử lý thông tin, nhưng hệ thống thông tin cũng chứa rất nhiều điểm yếu.
Do máy tính được phát triển với tốc độ rất nhanh để đáp ứng nhiều yêu cầu của
người dùng, các phiên bản được phát hành liên tục với các tính năng mới được thêm
vào ngày càng nhiều, điều này làm cho các phần mềm không được kiểm tra kỹ trước
khi phát hành và bên trong chúng chứa rất nhiều lỗ hổng có thể dễ dàng bị lợi dụng.
Thêm vào đó là việc phát triển của hệ thống mạng, cũng như sự phân tán của hệ
thống thông tin, làm cho người dùng truy cập thông tin dễ dàng hơn và tin tặc cũng
có nhiều mục tiêu tấn công dễ dàng hơn.
Song song với việc xây dựng hệ thống thông tin hiện đại, đáp ứng nhu cầu của
các cơ quan, tổ chức cần phải bảo vệ hệ thống thông tin, đảm bảo cho hệ thống đó
hoạt động ổn định và tin cậy. An toàn và bảo mật thông tin là thiết yếu trong mọi cơ
quan, tổ chức.
Việc phòng chống xâm nhập của hacker đối với những người quản trị mạng
ngày càng trở nên khó khăn. Người quản trị mạng cần đặt mình vào vị trí của
người tấn công và suy nghĩ nếu mình là người tấn công mình sẽ làm gì, làm như
thế nào, các bước tiến hành ra sao? Xâm nhập bằng 1 cách thì bảo vệ phải nghĩ ra
10 cách.
Sau đây là các bước thông thường mà hacker thực hiện đối với 1 hệ thống:
Thu thập thông tin Scanning Xâm nhập và có quyền điều khiển hệ thống
Duy trì quyền điều khiển trên hệ thống Xóa dấu vết.
Mỗi bước tấn công sẽ được trình bày cụ thể trong 1 chương.
Em xin gửi lời cảm ơn chân thành đến thầy Nguyễn Ngọc Điệp đã nhiệt tình
giúp đỡ để em hoàn thành đề tài thực tập này.
Do mới bước đầu tìm hiểu về đề tài này nên không tránh khỏi những thiếu sót,
em rất mong nhận được sự góp ý của thầy để hoàn thiện hơn nữa bài báo cáo này.
5
Chương 1 Footprinting
I. Giới thiệu về Footprinting
Footprinting là kỹ thuật giúp tìm kiếm thông tin về một doanh nghiệp, cá
nhân hay tổ chức.
Fooprinting là một trong ba giai đoạn cần phải làm trước khi thực hiện
một cuộc tấn công.
Một kẻ tấn công dành 90% thời gian cho việc tìm kiếm thông tin về mục
tiêu tấn công và 10% khác để thực hiện tấn công.
Kết quả của quá trình Footprinting là lấy được các thông tin cơ bản của
mục tiêu tấn công:
Tên, địa chỉ công ty
Website công ty
Các thành viên trong công ty
Sơ đồ mạng…
Trong quá trình này Hacker chủ yếu dùng các phương tiện thông tin công
cộng như báo chí, internet, để tìm hiểu các thông tin hợp pháp về mục tiêu.
Footprinting hầu như không thể phát hiện vì đây là hành động hợp pháp
II. Phương pháp thực hiện Footprinting
Có 2 phương pháp thực hiện Footprinting:
1. Passive Footprinting
Tìm kiếm thông tin qua các bài báo, trang web, hoặc từ các đối thủ với mục
tiêu…
2. Active Footprinting
Physical contact: trực tiếp tiếp xúc với mục tiêu để tìm kiếm thông tin như:
công ty, nhân viên, network detail...
Email contact: liên lạc qua email để tìm hiểu thông tin
6
III. Các công cụ được sử dụng trong Footprinting
Sam Spada
Super Email Spider
VitualRoute Trace
Google Earth
Whois
Site Digger
1. Sam Spade
Cho phép người dùng có thể thực hiện các hành động:
Ping
7
Whois
8
View Raw Website
Nslookup
…
9
2. Super Email Spider
Tìm kiếm thông tin về địa chỉ email của cơ quan/ tổ chức sử dụng Search
Engine:
Lycos
Iwon
Exiter
Hotbot
AOL
MSN
…
Ví dụ với từ khóa “ebay” ta được kết quả sau:
10
3. VitualRoute Trace
Hiển thị các đường kết nối và địa chỉ, khu vực đường kết nối đi qua
4. Maltego
Là công cụ được sử dụng để phát hiện ra liên kết giữa:
Người sử dụng
Tổ chức
Cơ quan
Website
Domain
Dải mạng
Địa chỉ ip…
11
IV. Google Hacking
1. Google Hacking là gì?
Là thuật ngữ được sử dụng khi Hacker tìm cách tìm lỗ hổng của mục tiêu hoặc
dữ liệu nhạy cảm thông qua bộ máy tìm kiếm Google.
Google Hacking Database là một cơ sở dữ liệu lưu trữ những câu lệnh để thực
thi nhiệm vụ trên.
2. Hacker có thể là được những gì?
Tìm ra các lỗ hổng của Server: lỗi phiên bản, bug…
Các thông tin nhạy cảm từ các thông báo đưa ra
File chứa mật khẩu
Thư mục nhạy cảm: thư mục chứa code lỗi…
12
Trang đăng nhập vào hệ thống
Trang chứa thông tin về cấu hình mạng, filewall như log firewall…
3. Những cú pháp tìm kiếm nâng cao với Google:
[intitle:] Giúp Google giới hạn kết quả tìm kiếm về những trang có chứa từ đó
trong tiêu đề.
Ví dụ : intitle:login password, allintitle:login password
[inurl:] Từ khóa này sẽ giúp bạn tìm những địa chi URL( đường dẫn) có từ
bạn cần tìm
Ví dụ: inurl:etc/password, allinurl:etc/password
[site:] Giới hạn Google chỉ truy vấn những từ khóa xác định trong 1 site hoặc
tên miền riêng biệt.
Ví dụ: site:dantri.com.vn
[filetype:] Giới hạn Google chỉ tìm kiếm những files trên internet có phần mở
rộng riêng biệt như .doc, .pdf hay .ppt…
Ví dụ: filetye:doc
[link:] Liệt kê những trang web mà có các liên kết đến những trang web chỉ
định
Ví dụ: link:www.securityfocus.com
[intext:] Tìm kiếm các từ trong 1 website riêng biệt
Ví dụ: intext:hacker
4. Các công cụ sử dụng trong Google Hacking: Gooscan, GoogleHacks, Sige
Digger
13
V. Lab
1. Google Search
Kết quả google search với từ khóa dantri.com.vn sẽ cho ta biết cấu trúc website
của www.dantri.com.vn
2. Kết quả về dantri.com.vn tại http://whois.domaintools.com/:
14
3. Định vị vị trí bằng Google Earth
15
16
Chương 2 Scanning
Quét (Scanning) là một bước tiếp theo trong tiến trình tấn công hệ thống. Giai
đoạn này giúp chúng ta xác định được nhiều thông tin của mục tiêu cần tấn công.
Chương trước, bạn đã tìm hiểu các vấn đề về Footprinting là công việc liên quan
đến con người. Có nghĩa là chúng ta đã tiến hành thu thập thông tin về tổ chức mà
chúng ta tấn công, như vị trí địa lý, thói quen sinh hoạt của nhân viên…Đến phần
này, Scanning, chúng ta sẽ làm việc với máy móc. Tức là sau khi chúng ta tìm
được vài thông tin có liên quan đến máy tính cần tấn công, công đoạn tiếp theo là
thu thập thông tin về máy tính đó. Những thông tin cần thu thập như tên máy
(computer name), địa chỉ ip, cấu hình máy tính, hệ điều hành, dịch vụ đang chạy,
port đang mở…Những thông tin này sẽ giúp cho hacker có kế hoạch tấn công hợp
lý, cũng như việc chọn kỹ thuật tấn công nào. Quét giúp định vị hệ thống còn hoạt
động trên mạng hay không. Một hacker chân chính sử dụng cách này đề tìm kiếm
thông tin của hệ thống đích.
I. Network Scanning
Network scanning là quá trình tìm hiểu thông tin về các live host trên mạng để
giúp hacker quyết định kiểu tấn công nào sẽ được sử dụng để tấn công vào hệ
thống. Trong quá trình scanning, hacker sẽ tìm hiểu các thông tin về:
Host: IP, OS, port, services đang mở...
Network: Network topology, network security...
Vulnerability: các lỗi của host hoặc network...
Điều kiện cần của Scanning: có khả năng kết nối với mục tiêu.
Hacker sẽ gửi nhiều gói tin tới target và dựa vào các gói tin trả về để phân tích
tìm thông tin
17
II. Các phương pháp Scanning
Host scan: mục tiêu là host computer để tìm ra IP, port, services, OS/
Ví dụ: Nếu nhận được ping echo reply tức là host chắc chắn tồn tại, nếu port 139,
145 mở thì host sẽ đang sử dụng OS Windows family từ 2000 trở lên...
Network scan: scan mạng tìm ra các live host làm mục tiêu attack hoặc các
NIC hoạt động trong promiscuous mode để nhận diện ra các hệ thống IDS,
hotneypot...
Vulnerability scan: tìm ra các lỗi của OS, services mà host đang sử dụng để
attack
III. Lab
1. Sử dụng phần mềm Nmap
Nmap download tại http://nmap.org/download.html ,có cả Zenmap hỗ trợ
Guide mode
Kết quả nhận được với Zenmap:
18
Mở Command và gõ nmap –v –A dantri.com.vn ta được kết quả sau:
19
Chương 3 Enumeration
I. Enumeration là gì?
Enumeration (Liệt kê) là bước tiếp theo trong quá trình tìm kiếm thông tin của
tổ chức, xảy ra sau khi đã scanning và là quá trình tập hợp và phân tích tên người
dùng, tên máy, tài nguyên chia sẽ và các dịch vụ. Nó cũng chủ động truy vấn hoặc
kết nối tới mục tiêu để có được những thông tin hợp lý hơn. Enumeration (liệt kê)
có thể được định nghĩa là quá trình trích xuất những thông tin có được trong phần
scan ra thành một hệ thống có trật tự. Những thông tin được trích xuất bao gồm
những thứ có liên quan đến mục tiêu cần tấn công, như tên người dùng(user name),
tên máy tính(host name), dịch vụ(service), tài nguyên chia sẽ(share). Những kỹ
thuật liệt kê được điều khiển từ môi trường bên trong. Enumeration bao gồm cả
công đoạn kết nối đến hệ thống và trực tiếp rút trích ra các thông tin. Mục đích của
kĩ thuật liệt kê là xác định tài khoản người dùng và tài khoản hệ thống có khả năng
sử dụng vào việc hack một mục tiêu. Không cần thiết phải tìm một tài khoản quản
trị vì chúng ta có thể tăng tài khoản này lên đến mức có đặc quyền nhất để cho
phép truy cập vào nhiều tài khoản hơn đã cấp trước đây.
II. Banner Grabbing
Kỹ thuật chủ yếu nhất của enumeration là banner grabbing. Nó có thể được
định nghĩa đơn giản như là kết nối đến ứng dụng từ xa và quan sát đầu ra. Nó có
nhiều thông tin cho kẻ tấn công từ xa. Ít nhất chúng ta cũng đã xác định được mô
hình dịch vụ đang chạy mà nhiều trường hợp là đủ để tạo nên quá trình nghiên cứu
các điểm yếu.
Phòng chống: tắt các dịch vụ không cần thiết, chúng ta có thể giới hạn việc
truy cập tới các dịch vụ điều khiển truy cập mạng.
III. Enumerating các dịch vụ mạng
1. Http fingerprinting
a) Telnet
20
Telnet là một giao thức mạng được dùng trên các kết nối Internet hoặc các kết
nối tại mạng máy tính cục bộ LAN.
Mục đích của giao thức TELNET là cung cấp một phương tiện truyền thông
chung chung, có tính lưỡng truyền, dùng độ rộng 8 bit, định hướng byte. TELNET
là một giao thức khách-chủ (client-server protocol), dựa trên nền TCP, và phần
khách (người dùng) thường kết nối vào cổng 23 với một máy chủ, nơi cung cấp
chương trình ứng dụng thi hành các dịch vụ.
Sử dụng telnet để tìm hiểu thông tin từ cổng dịch vụ đang mở, sử dụng công
cụ từ xa để lấy thông tin thông qua cổng telnet mà hầu hết các hệ điều hành điều
hổ trợ. C:\>telnet www.google.com 80
GET/~ross/index.html HTTP/1.0
b) Netcat
Là một tool cho phép ghi và đọc data thông qua giao thức TCP và UDP.
Netcat có thể sử dụng như port scanner, backdoor, port redirecter, port listener,…
Sử dụng netcat bằng dòng lệnh: - Chế độ kết nối : nc [-tùy_chọn] tên_máy
cổng1[-cổng2] - Chế độ lắng nghe: nc -l -p cổng [-tùy_chọn] [tên_máy] [cổng]
Ví dụ: Lấy banner của Server: nc đến 192.168.10.102, cổng 80 Quét
2. DNS Enumeration
DNS Enumeration là quá trình định vị tất cả các máy chủ DNS và tương ứng của
họ hồ sơ cho một tổ chức. Một công ty có thể có cả hai nội bộ và bên ngoài máy
chủ DNS có thể mang lại thông tin như tên người dùng, tên máy tính, và địa chỉ IP
của hệ thống mục tiêu tiềm năng. Hiện có rất nhiều các công cụ có thể được sử
dụng để có được thông tin cho thực hiện DNS liệt kê. Các ví dụ về các công cụ có
thể được sử dụng để liệt kê DNS nslookup, DIỄN, Registry Mỹ cho số Internet
(ARIN), và Whois. để kê khai DNS, chúng ta phải có sự hiểu biết về DNS và làm
thế nào nó hoạt động. Chúng ta phải có kiến thức về các bản ghi DNS. Danh sách
các bản ghi DNS cung cấp một cái nhìn tổng quan các loại bản ghi tài nguyên (cơ
sở dữ liệu hồ sơ) được lưu giữ trong các tập tin khu vực của tên miền System
(DNS). DNS thực hiện một cơ sở dữ liệu phân tán, phân cấp, và dự phòng thông
tin liên kết với các tên miền Internet và địa chỉ. Trong những miền máy chủ, các
loại hồ sơ khác nhau được sử dụng cho các mục đích khác nhau. Danh sách sau
đây mô tả bản ghi DNS phổ biến các loại và sử dụng của họ: A (địa chỉ)-Bản đồ
một tên máy chủ đến một địa chỉ IP SOA (Start of Authority)-Xác định máy chủ
DNS có trách nhiệm cho các tên miền thông tin CNAME (tên kinh điển)-Cung cấp
tên hoặc bí danh cho địa chỉ ghi MX (thư trao đổi) Xác định các máy chủ mail cho
21
tên miền SRV (dịch vụ)-Nhận dạng các dịch vụ như dịch vụ thư mục PTR
(pointer)-Bản đồ địa chỉ IP để lưu trữ tên NS (tên máy chủ)-Xác định máy chủ tên
khác cho tên miền
DNS Zone Transfer thường được sử dụng để tái tạo dữ liệu DNS trên một số máy
chủ DNS, hoặc để sao lưu các tập tin DNS. Một người sử dụng hoặc máy chủ sẽ
thực hiện một yêu cầu chuyển giao khu vực cụ thể từ một “name server”.Nếu máy
chủ tên cho phép di chuyển vùng xảy ra, tất cả các tên DNS và IP địa chỉ lưu trữ
bởi các máy chủ tên sẽ được trả lại trong văn bản ASCII con người có thể đọc
được.
Nslookup
22
Có thể nhập trực tiếp như sau Nslookup type=any dantri.com.vn ta được kết quả :
23
Chương 4 System hacking
I. Giới thiệu System Hacking
System Hacking bao gồm những kỹ thuật lấy Username và Password, nâng
quyền trong hệ thống, sử dụng keyloger để lấy thông tin của đối phương( trong
bước này cũng có thể Hacker để lại Trojan), ẩn thông tin của process đang hoạt
động( Rootkit) và xóa những log hệ thống.
Đối với phần lấy thông tin về username và password Local, hacker có thể
crack pass trên máy nội bộ nếu sử dụng phần mềm cài lên máy đó, hay sử dụng
CD boot Knoppix để lấy syskey, bước tiếp theo là giải mãi SAM để lấy hash của
Account hệ thống. Chúng ta có thể lấy username và password thông qua remote
như SMB, NTLM hay thông qua 1 Account đã biết của hệ thống.
Với phần mềm nâng quyền trong hệ thống, Hacker có thể sử dụng lỗ hổng của
Window, các phần mềm chạy trên hệ thống nhằm lấy quyền Admin điều khiển hệ
thống. Trong bài thực hành ta khai thác lỗ hổng của Kapbersky Lab 6.0 để nâng
quyền từ user bình thường sang user Adminnistratior trong Win XP sp2.
Phần Keylogger ta sử dụng SC-keyloger để xem các hoạt động của nạn nhân
như giám sát nội dung bàn phím, thông tin về chat, thông tin về sử dụng máy,
thông tin về các tài khoản user sử dụng.
Tiếp theo ta sử dụng Rootkit để ẩn các process của keyloger, làm cho người
admin hệ thống không thể phát hiện ra là mình đang bị theo dõi. Cuối cùng ta xóa
log và dấu vết thâm nhập hệ thống.
II. Lab
24
Chương 5 Trojan and BackDoor
I. Giới thiệu về Trojan và Backdoor
Trojang horse là chương trình máy tính thường được ẩn dưới các chương trình
khác, có chứa code ẩn được viết để khai thác lỗ hổng hoặc gây nguy hại cho hệ
điều hành, chủ yếu dùng để ăn cắp các thông tin nhạy cảm như password account,
file…
Backdoor là chương trình tạo kết nối từ xa. Hacker thường sử dụng để kết nối
lấy file hoặc điều khiển tới máy của nạn nhân mà cs thể bypass quá trình
authentication. Hacker thường caiaf đặt trên máy của nạn nhân để dễ dàng kết nối
cho lần xâm nhập sau.
Spyware : chương trình thu thập thông tin về user, hoạt động ngầm để thu
thập về các hoạt động của người dùng. Kết hợp với Adware để quảng cáo( pop-up)
cjp các site thương mại.
Điều kiện cần của Trojan và Backdoor:
Phải có tên máy của victim( cài đặt hoặc copy vào máy victim)
Trojan – Backdoor thường được nhúng phần server.exe trong các chương
trình hợp lệ để lừa nạn nhân và hacker sẽ dùng client để tạo kết nối tới nạn nhân
khi nạn nhân online.
Rất dễ tạo Trojan từ các tool kit có rất nhiều trên Internet như Stealth, Beat.
II. Các kiểu Trojan- Backdoor:
Trojan thường có 1 hoặc nhiều tính năng:
Remote connect access: kết nối và điều khiển từ xa
Sending data: gửi file giữa hacker và victim
Destructive and DoS: phá hủy file hoặc máy và DoS
Security software disable: tắt firewall, antivirus software để dễ dàng kết nối
III. Cách phòng chống
Sử dụng các phần mềm Trojan detection, antivirus update thường xuyên.
25
Kết hợp các biện pháp IDS để phát hiện Trojan.
Thường xuyên kiểm tra các port mở trên máy
Chương 6 Sniffer