cac buoc tan cong httt

25
1 Báo cáo thc tp tt nghip Đề tài: Các bước tn công hthng thông tin Giảng viên hướng dn Th.S Nguyn Ngọc Điệp Sinh viên thc hin Phm ThLan Lp D09CNPM1

Upload: tan0710

Post on 02-Jan-2016

164 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Cac Buoc Tan Cong HTTT

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

Page 2: Cac Buoc Tan Cong HTTT

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

Page 3: Cac Buoc Tan Cong HTTT

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

Page 4: Cac Buoc Tan Cong HTTT

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.

Page 5: Cac Buoc Tan Cong HTTT

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

Page 6: Cac Buoc Tan Cong HTTT

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

Page 7: Cac Buoc Tan Cong HTTT

7

Whois

Page 8: Cac Buoc Tan Cong HTTT

8

View Raw Website

Nslookup

Page 9: Cac Buoc Tan Cong HTTT

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:

Google

Lycos

Iwon

Exiter

Hotbot

AOL

MSN

Ví dụ với từ khóa “ebay” ta được kết quả sau:

Page 10: Cac Buoc Tan Cong HTTT

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…

Page 11: Cac Buoc Tan Cong HTTT

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…

Page 12: Cac Buoc Tan Cong HTTT

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

Page 13: Cac Buoc Tan Cong HTTT

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/:

Page 14: Cac Buoc Tan Cong HTTT

14

3. Định vị vị trí bằng Google Earth

Page 15: Cac Buoc Tan Cong HTTT

15

Page 16: Cac Buoc Tan Cong HTTT

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

Page 17: Cac Buoc Tan Cong HTTT

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:

Page 18: Cac Buoc Tan Cong HTTT

18

Mở Command và gõ nmap –v –A dantri.com.vn ta được kết quả sau:

Page 19: Cac Buoc Tan Cong HTTT

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

Page 20: Cac Buoc Tan Cong HTTT

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

Page 21: Cac Buoc Tan Cong HTTT

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

Page 22: Cac Buoc Tan Cong HTTT

22

Có thể nhập trực tiếp như sau Nslookup type=any dantri.com.vn ta được kết quả :

Page 23: Cac Buoc Tan Cong HTTT

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

Page 24: Cac Buoc Tan Cong HTTT

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.

Page 25: Cac Buoc Tan Cong HTTT

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