BÀI TẬP THỰC HÀNH AN TOÀN & BẢO MẬT THÔNG TIN PHẦN 2 : AN TOÀN VÀ BẢO MẬT HỆ THỐNG 12 tiết Bài 1 : Sao lưu dự phòng dữ liệu B 1: Khởi động máy vào log on Admin , vào thư mục C: tạo t
Trang 2/* input : two non_negative intergers a,b ,b>=2
output : base b representation of a */
int a,b;
long repre(int a,int b);
long repre0(int a,int b);
Trang 3/* input : Two positive integers x,y in base b representation
output : x+y in base b representation */
long a,b,x,y,z,t;
int A[100],X[100],Y[100],Z[100],i,n,N;
long repre(long a,long b);
long add(long x,long y);
printf("x=%ld y=%ld b=%ld N=%d \n",x,y,b,N);
for(i=0;i<=N;i++) printf("X[%d]=%d Y[%d]=%d \n",i,X[i],i,Y[i]); add(x,y); for(i=0;i<=N;i++) printf("Z[%d]=%d \n",i,Z[i]);
Trang 4/* input : 2 positive integers x , y in base b representation, b>=2 , having N+1 digits respectively ;
output : x*y in base b representation , with N+M+2 digits */ long a,x,y,z,t,bb,b,k,B[20] ;
int A[20],X[20],Y[20],Z[20],i,n,N,M,A0,A1;
long repres(long x,long b);
long mult(long x,long y);
void main () /* cr5i C , 21 / 6 / 1998 */
for(i=0 ; i<=n ; i++) Y[i]=A[i] ;
printf("x=%ld y=%ld b=%ld N=%ld M=%ld ",x,y,b,N,M); for (i=0 ; i<=N ;i++)
for(ii=0 ; ii<= N+M+1 ; ii++ ) Z[ii]=0 ;
for (ii=0 ; ii<=M ; ii++)
{
ca=0 ; for(jj=0 ; jj<=N ; jj++ ) {
a=Z[ii+jj]+(X[jj]*Y[ii])+ca ; k=1 ; while(k*b<=a) k++ ; k ; A1=k ; A0=a-k*b;
long a0; int b0 ;
long repes (long a0 ,int b0 )
A[i]=k ; a0-=k*bb ; }
A[0]=a0;
} /* b - repres*/
Trang 5Bài 5: Thuật giải Beazout tính gcd của a & b
/*Bezout*/
#include <stdio.h>
#include <math.h>
long A,B;
long bezout(long A,long B);
void main() /*main*/
q=a/b;r=a-q*b;x=x2-q*x1;y=y2-q*y1; a=b;b=r;x2=x1;x1=x;y2=y1;y1=y;
} d=a;x=x2;y=y2;
Trang 6Bài 6 : Tính lũy thừa modulo nghich đảo
/* Multiplicative inverse (ok!) */
q=a/b;r=a-q*b;x=x2-q*x1;y=y2-q*y1; a=b;b=r;x2=x1;x1=x;y2=y1;y1=y; }
d=a;x=x2;y=y2;
}
Trang 7Bài 7 : Chương trình mã –dich dùng RSA
/* Chuong trinh MA-DICH tren RSA Plain text duoc bieu dien duoi dang mot day so nguyen */
typedef long vector[I+1];
long MP(long long x,long y,long z);
long inverse(long x,long m),ME(long x,long y,long z);
printf("phi2=%ld e2=%ld d2=%ld
\n",phi2,e2,d2);printf("");
xx=12345;
xx1=ME(xx,M1,e1);xx2=ME(xx1,M1,e1);xx3=ME(xx2,M1,e1);
Trang 8cprintf("\n KET QUA DICH : ",xx);
long A0,p1,Z[40];int i1;
BR(p0);N=n;for (i1=0;i1<=N;i1++) Z[i1]=Q[i1];
A0=MP(A0,A0,m0);
if(Z[i1]>0) p1=MP(A0,p1,m0);
}/*i1*/
} return (p1);
}/*phep tinh luy thua modulo*/
long s;
long BR(long s)
Trang 9ii++;x=q;q=(x>>1);Q[ii]=x-(q<<1);
} n=ii;
}/*Bit-Representation,bieu dien x theo bimary*/ long x,y,k;
long MP(long x,long y,long k)
{
int ii;long P,t1,t2,Y[40];double tem;t1=x;t2=y; if(x<0) {x=-x;x=k-(x%k);} else x=x%k;
if(y<0) {y=-y;y=k-(y%k);} else y=y%k;
if ((x==0)||(y==0)) {P=0;goto label1;}
x=t1;
y=t2;
label1:return(P);
}/*phep nhan modulo*/
long b,a;/*0<b<a,Multicative inverce of b mod a*/ long inverse(long b,long a)
{
Trang 10long A,B,d,q,r,x,x1,x2,y,y1,y2,tem;
A=a;B=b; /*Dung Beazout*/
if(b==0)
{ d=a;x=1;y=0;
}/*if*/
else { x2=1;x1=0;y2=0;y1=1;
while (b>0) {
long MP(long long ,long ,long ); //Nhan luy thua
long inverse(long ,long ); //Modulo nghich dao
long ME(long ,long ,long ); //Luy thua modulo
void BR(long ); //Doi sang dang bit (co so 2)
int SNT(long);
int snt( long);
Trang 11long Bezout (long a, long b);//tinh gcd
Trang 12long ME(long x0,long m0,long p0){
//Tính Luy thua Modulo
Trang 13//tao ngau nhien SNT
Trang 14if((z=snt(random(10000)))!=0) {
arr[i]=z;i++;
} }
cout<<"chieu dai chuoi = "<<n<<endl;
cout<<"\nVAN BAN CAN MA HOA "<<a;
for(int ii=0;ii<n;ii++)
{
if((a[ii]!=' ')) {
xx[ii]= (a[ii] - '0');
} else
Trang 16a=b; b=r; x2=x1;x1=x;y2=y1; y1=y;
} d=a; x=x2;y=y2;
Bài 9: Mã hóa một file text (thu1.txt) dùng RSA
/* Mã một file text dùng RSA */
typedef long vector[I+1];
long MP(long long x,long y,long z);
long inverse(long x,long m),ME(long x,long y,long z); long BR(long s);/*long codage(long x,long y,long z,long t,long v);*/
Trang 17long A0,p1,Z[40];int i1;
BR(p0);N=n;for (i1=0;i1<=N;i1++) Z[i1]=Q[i1];
/*for (i1=0;i1<=N;i1++)
printf("Q[%d]=%ld \n",i1,Q[i1]);getchar();*/
Trang 18A0=x0%m0;p1=1;/*printf ("A0=%ld N=%d ",A0,N);getchar();/* A0=x1modMM B pesentation of x1*/
if(p0>0);
{
if (Z[0]>0) p1=A0;
for(i1=1;i1<=N;i1++) {
ii++;x=q;q=(x>>1);Q[ii]=x-(q<<1);
} n=ii;
}/*Bit-Representation,bieu dien bit*/
Trang 19x=t1;
y=t2;
label1:
return(P);
}/*phep nhan modulo*/
long b,a;/*0<b<a,Multicative inverse of b mod a*/ long inverse(long b,long a)
}/*if*/
else { x2=1;x1=0;y2=0;y1=1;
while (b>0)
Trang 20{ q=a/b;
Menu tạo khóa :
1.Tạo bảng SNT ( hoặc đưa SNT từ BF song phải kiểm tra số NT)
Trang 21Yêu cầu chọn e (nhập e từ KB)
Chương trình K/tra e có NTCN với Fi
Nếu e không là số NT cùng nhau với Finhập lại e
Chương trình tính tiếp d = eømod N (Dùng Beazout)
Xuất cặp khóa (e,N) và (d,N)
Trong thực tế : Nhập text chuyển khối dữ liệu thành số nguyên
- Nhập khóa từ bảng khóa (d,N) (của tôi)
- Mã xác thực : c = md mod N gửi đi
- Bên nhận (cần xác thực) dùng Public Key của “tôi” để giải > giả được “tôi” đúng là tôi
Bấm C ( bảo mật thông điệp)
Nhập thông điệp cần bảo mật “m” từ KB
Lấy (e,N) của bên nhận thông điệp từ bang khóa hoặc PK server
Mã bằng (e,N) của bên nhận : c= me
modN gửi c đi
Bên nhận dùng (d,N) của mình để giải mật Nếu giải được OK!
Trang 22BÀI TẬP THỰC HÀNH AN TOÀN & BẢO MẬT THÔNG TIN
PHẦN 2 : AN TOÀN VÀ BẢO MẬT HỆ THỐNG (12 tiết)
Bài 1 : Sao lưu dự phòng dữ liệu
B 1: Khởi động máy vào log on Admin , vào thư mục C: tạo thư mục (Dulieu) và các file h1.txt , h2.txt ; sau đó vào D: tạo thư mục Backup
B2: Start → Programs →Accessories → Systems Tools → Backup →tại cửa sổ Welcome →bỏ dấu chọn ô Always start in wizard mode → Click chọn Advance Mode → tại cửa sổ Backup Utility chọn tab Backup → click vào dấu “+” tại C: và đánh dấu chọn vào ô Dulieu → tại cửa sổ Backup media or file name chọn tab Browse … → chỉ đường dẫn tới D:\Backup và lưu file backup với tên (bk1.bkf) Sau đó chọn Start
Backup →tại cửa sổ Backup Job Information chọn Start Backup Sau khi Backup Progress xong → Vào D:\Backup để kiểm tra xem có file
B5 : Mở chương trình Backup, tại cửa sổ Backup Utility chọn tab Backup
→Click dấu ‘+’ tại C: và đánh dấu chọn vào ô dữ liệu →tại mục Backup media or file name gõ “D:\Backup\dif.bkf” →chọn Start Backup →tại cửa sổ Backup Job Information chọn Advance … →tại cửa sổ Advanced Backup Options , tại mục Backup Type chọn Differential → OK →Start Backup
B6 : tại cửa sổ Backup Utility chọn tab Restore and Manage Media và click dấu ‘+’ tại mục dif.bkf →Click dấu ‘+’ tại C: và chọn Dulieu (chỉ
có h1.txt được backup) Sau đó đóng các cửa sổ , kế tiếp vào thư mục C:\Dulieu → Click chuột phải trên h1.txt →Properities →tab General → Advanced … (đánh dấu chọn mục File is ready for archiving
B7 : Mở file h2.txt nhập thêm nội dung và save lại →Click chuột phải trên h2.txt → Properities →tab General → Advanced … (đánh dấu chọn mục File is ready for archiving
Trang 23 B8: Mở chương trình Backup →chọn tab Backup , sau đó click dấu ‘+’ tại C: , đánh dấu chọn vào ô Dulieu, tại mục Backup media or file name
gõ D:\Backup\inc.bkf , sau đó chọn Start Backup
B9: tại cửa sổ Backup Job Information chọn Advanced … → tại cửa sổ Advanced Backup Options , click vào mục Backup Type và chọn
Incremental →OK →Start Backup
B10: tại cửa sổ Backup Utility chọn tab Restore and Manage Media , click dấu ‘+’ tại mục inc.bkf, kế tiếp click dấu ‘+’ tại mục C:\Dulieu
BÀI 2 : RESTORE DATA
B1 : Xóa thư mục Dulieu
B2: Mở chương trình Backup →chọn Menu Tools →Options →tab
Restore → đánh dấu chọn vào mục Replace the file on disk only if the file on disk is older
B3: tại cửa sổ Backup Utility →vào tab Restore and Manage Media → click vao file →bk1.bkf → C: và đánh dấu chọn vào Dulieu → Chọn Start Restore → tại cửa sổ confirm restore chọn OK
BÀI 3 : Ẩn Control Panel
B1 : Vào Start → Run →MMC → OK
B2 : Sẽ xuất hiện màn hình Console1, chọn File →Add/Remove Snap-in
→Add →tại cửa sổ Add Standalone Snap-in →Group Policy Object Editor →Add →Finish
B3 : Tại màn hình Console1, chọn File →Save as (tại cửa sổ save in chọn Destop và File name : Local Policy)
B4 : Vào Local Policy →Local Computer Policy → User Configuration
→ Administrator Templates →Control Panel
B5 : Vào Prohibit access to the Control Panel →Properties (đánh dấu chọn Enable , sau đó apply và OK)
B6 : Vào Start → Run →cmd →gpupdate /force
Trang 24BÀI 4 : Ghi nhận quá trình đăng nhập (Logon)
B1 : Start →Programs →Administrative Tools →Local Security Policy
→Local Policies → Audit Policy → Click chuột phải lên Audit Account Logon Events → Properties → đánh dấu chọn Failure → Apply → OK
→cập nhật policy (gpupdate \force)
B2 : Start →Programs →Administrative Tools →Event viewer → click chuột phải lên Security → chọn Clear all events → chọn No
BÀI 5 : NETWORK MONITORING
MonitorTools →OK → Next
B2 : Start →Administrative Tools →Network Monitor →tại cửa sổ Microsoft Network Monitor, chọn OK →tại cửa sổ Select a network, click dấu ‘+’ ở mục Local Computer → chọn card LAN → OK
B3 : Tại cửa sổ Network Monitor → chọn Capture →Start (Chú ý để nguyên màn hình Network Monitor)
B4 : Start →Run →gõ cmd →ta dùng lệnh ping địa chỉ IP giữa 2 máy tính : ping 192.168.1.1 và ping 192.168.1.2
B5 : Quay lại màn hình Network Monitor → chọn Capture →Stop and View → double click trên dòng có protocol là ICMP
Trang 25BÀI 6 : IP SECURITY (IP SEC)
B2 : Tại cửa sổ Consol1 →click chuột phải trên IP Security Policies on Local Computer →chọn Create IP Security Policy→tại cửa sổ Welcome chọn Next → tại cửa sổ IP Security Policy Name gõ ‘IPSec bang Preshare Key’ vào ô name →Next → tại cửa sổ Request for Secure Communication,
bỏ dấu chọn tại mục Activate the default → Next → Finish →tại cửa sổ Test
IP Sec Preshare Key Properties → chọn Add →tại cửa sổ Welcome → Next
→ tại cửa sổ Tunnel Endpoint chọn This rule does not specify a tunnel → Next → tại cửa sổ Network Type , chọn ô Local area network LAN
→Next→tại cửa sổ IP Filter List, chọn mục All IP →Next →tại cửa sổ Filter Action , chọn mục Require Security → Next →trong cửa sổ
Authentication Method, chọn mục Use this string to protect the key
exchange, trong hộp thoại gõ ‘123’ →Next →Finish
B3 : Tại cửa sổ Consol1, click chuột phải lên IPSec bang Preshare Key → Assign →lưu Consol1 ra màn hình Desktop →đóng các cửa sổ đang có và cập nhật Policy(gpupdate /force)
B4 : Start →Progarms →Administrative Tools →Services →click chuột phải lên IPSEC Service, chọn Restart
B5: Mở chương trình Network Monitor →chọn Capture →Start
Trang 26 B6 : Start →Run →cmd →ta dùng lệnh ping địa chỉ IP giữa 2 máy tính : ping 192.168.1.1 và ping 192.168.1.2
B7 : Quay lại màn hình Network Monitor→ chọn Capture → chọn Stop and View → double click trên dòng có Protocol là ESP →chọn mục ESP
Bài 7 : Quản lý local Password
Như chúng ta đã học ở phần lý thuyết, Module 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, vấn đề học ở chương tiếp theo), ẩn thông tin của process đang hoạt động(Rootkit), và xóa những log hệ thống
Trong bài tập này ta sử dụng phầm mềm Cain để kiểm tra password của user
Bước 1
Ta cài phần mềm CAIN vào máy đối phương
Tạo một user longdao từ cmd :
C:\Documents and settings\longdt>user net longdao 12345 /add
Bước 2 :
Bật phầm mềm Cain và chọn Import Hashes from local system
Ở đây chúng ta thấy có 3 chế độ, “ Import hash from local system”, ta sử dụng
file SAM của hệ thống hiện tại để lấy hash của account(không có mã hóa
syskey), Option Import Hashes from text file, thông thường text file này là lấy
từ Pwdump(lưu hash của account hệ thống dưới dạng không bị mã hóa), Option thứ 3 là khi chúng ta có syskey và file SAM bị mã hóa bởi syskey Ca ba trường hợp nếu nhập đầy đủ thông tin chúng ta đều có thể có hash của account không
bị mã hóa bởi syskey
Trang 27Dựa vào thông tin hash này phần mềm sẽ brute force để tìm kiếm password của account
Bước 3 : Chọn user cần crack mật khẩu
Bước 4 : crack mật khẩu dùng Brute force NTLM hash
Trong bài ta chọn user longdao, kích phải tên user vừa chon và chọn Brute
force theo NTLM hash.Chọ start Sau khi chọn chế độ này ta thấy PC bắt đầu
tính toán và cho ra kết quả
Kết quả : password of longdao user is 12345
Trang 28BÀI THỰC HÀNH SYSTEM HACKING
BÀI 1: FOOTPRINTING
Đây là kỹ thuật giúp hacker tìm kiếm thông tin về 1 doanh nghiệp, cá nhân hay tổ
chức Bạn có thể điều tra được rất nhiều thông tin của mục tiêu nhờ vào kỹ thuật này Ví
dụ trong phần thực hành thứ 1 chúng ta áp dụng kỹ thuật này tìm kiếm thông tin về một domain(ví dụ là www.itvietnam.com) và xem thử email liên lạc của domain này là của ai, trong phần thực hành thứ 2 chúng ta truy tìm 1 danh sách các email của 1 keywork cho trước, phương pháp này hiệu quả cho các doanh nghiệp muốn sử dụng marketing thông qua hình thức email v.v Trong giai doạn này Hacker cố gắng tìm càng nhiều thông tin về doanh nghiệp(thông qua các kênh internet và phone) và cá nhân(thông qua email và hoạt động của cá nhân đó trên Internet), nếu thực hiện tốt bước này Hacker có thể xác định được nên tấn công vào điểm yếu nào của chúng ta Ví dụ muốn tấn công domain
www.itvietnam.com thì Hacker phải biết được địa chỉ email nào là chủ cùa domain này
và tìm cách lấy password của email thông qua tấn công mail Server hay sniffer trong mạng nội bộ v.v Và cuối cùng lấy được Domain này thông qua email chủ này
Bước 1: Tìm thông tin về Domain
Ta vào trang www.whois.net để tìm kiếm thông tin và đánh vào domain mình muốn tìm kiếm thông tin
Sau đó ta nhận được thông tin như sau:
Trang 29Ngoài việc tìm thông tin về domain như trên, chúng ta có thể sử dụng các tiện ích Reverse IP domain lookup để có thể xem thử trên IP của mình có bao nhiêu host chung với mình Vào link sau đây để sử dụng tiện ích này
http://www.domaintools.com/reverse-ip/
Việc tìm kiếm được thông tin này rất cần thiết với Hacker, bởi vì dựa vào thông tin sử dụng chung Server này, Hacker có thể thông qua các Website bị lỗi trong danh sách trên
và tấn công vào Server từ đó kiểm soát tất cả các Website được hosting trên Server
Bước 2: Tìm thông tin email
Trong bài thực hành này, chúng ta sử dụng phần mềm “1st email address spider” để tìm kiếm thông tin về các email Hacker có thể sử dụng phần mềm này để thu thập thêm thong tin về mail, hay lọc ra các đối tượng email khác nhau, tuy nhiên bạn
có thể sử dụng tool này để thu thập thêm thông tin nhằm mục đích marketing, ví dụ bạn cần tìm thông tin của các email có đuôi là @vnn.vn hay @hcm.vnn.vn để phục cho việc marketing sản phẩm
Ta có thể cấu hình việc sử dụng trang web nào để lấy thông tin , ví dụ sử dụng trang google.com để tìm kiếm Sau đó đánh từ khóa vnn.vn vào tag keyword
Sau đó chúng ta đã có được 1 list mail nhờ sử dụng trương trình này
Trang 30BÀI 2 : SCANNING
Scanning hay còn gọi là quét mạng là bước không thể thiếu được trong quá trình tấn công vào hệ thống mạng của hacker Nếu làm bước này tốt Hacker sẽ mau chóng phát hiện được lỗi của hệ thống ví dụ như lỗi RPC của Window hay lỗi trên phầm mềm dịch vụ web như Apache v.v Và từ những lỗi này, hacker có thể sử dụng những đoạn mã độc hại(từ các trang web) để tấn công vào hệ thống, tồi tệ nhất lấy shell
Phần mềm scanning có rất nhiều loại, gồm các phầm mềm thương mại như Retina, GFI,
và các phần mềm miễn phí như Nmap,Nessus Thông thường các ấn bản thương mại có thể update các bug lỗi mới từ internet và có thể dò tìm được những lỗi mới hơn Các phần mềm scanning có thể giúp người quản trị tìm được lỗi của hệ thống, đồng thời đưa ra các giải pháp để sửa lỗi như update Service patch hay sử dụng các policy hợp lý hơn
Bước 1: Sử dụng Phần mềm Nmap
Trước khi thực hành bài này, học viên nên tham khảo lại giáo trình lý thuyết về các option của nmap Chúng ta có thể sử dụng phần mềm trong CD CEH v5, hay có thể download bản mới nhất từ website: www.insecure.org Phần mềm nmap có 2 phiên bản dành cho Win và dành cho Linux, trong bài thực hành về Nmap, chúng ta sử dụng bản dành cho Window
Để thực hành bài này, học viên nên sử dụng Vmware và boot từ nhiều hệ điều hành khác nhau như Win XP sp2, Win 2003 sp1, Linux Fedora Core, Win 2000 sp4,v.v
Trước tiên sử dụng Nmap để do thám thử xem trong subnet có host nào up và các port các host này mở, ta sử dụng lệnh Nmap –h để xem lại các option của Nmap, sau đó thực hiện lệnh “Nmap –sS 10.100.100.1-20” Và sau đó được kết quả sau:
C:\Documents and Settings\longdt>nmap -sS 10.100.100.1-20 Starting Nmap 4.20 (http://insecure.org ) at 2007-08-02 10:27 Pacific Standard
Time
Interesting ports on 10.100.100.1:
Not shown: 1695 closed ports
PORT STATE SERVICE
Trang 3122/tcp open ssh
111/tcp open rpcbind
MAC Address: 00:0C:29:09:ED:10 (VMware)
Interesting ports on 10.100.100.6:
Not shown: 1678 closed ports
PORT STATE SERVICE
Not shown: 1693 closed ports
PORT STATE SERVICE
Not shown: 1695 filtered ports
PORT STATE SERVICE
139/tcp open netbios-ssn
445/tcp open microsoft-ds
MAC Address: 00:0C:29:A6:2E:31 (VMware)
Skipping SYN Stealth Scan against 10.100.100.13 because Windows does not support
scanning your own machine (localhost) this way
All 0 scanned ports on 10.100.100.13 are
Interesting ports on 10.100.100.16:
Not shown: 1689 closed ports
PORT STATE SERVICE
Trang 32Not shown: 1693 closed ports
PORT STATE SERVICE
135/tcp open msrpc
445/tcp open microsoft-ds
1000/tcp open cadlock
5101/tcp open admdog
MAC Address: 00:15:C5:65:E3:85 (Dell)
Nmap finished: 20 IP addresses (7 hosts up) scanned in 21.515 seconds
Trong mạng có tất cả 7 host gồm 6 máy Vmware và 1 PC DELL Bây giờ bước tiếp theo
ta tìm kiếm thông tin về OS của các Host trên bằng sử dụng lệnh “ Nmap –v -O ip address”
C:\Documents and Settings\longdt>nmap -vv -O 10.100.100.7 (xem chi tiết Nmap quét)
Starting Nmap 4.20 (http://insecure.org ) at 2007-08-02 10:46 Pacific Standard
Initiating SYN Stealth Scan at 10:46
Scanning 10.100.100.7 [1697 ports]
Discovered open port 1025/tcp on 10.100.100.7
Discovered open port 445/tcp on 10.100.100.7
Discovered open port 135/tcp on 10.100.100.7
Discovered open port 139/tcp on 10.100.100.7
Completed SYN Stealth Scan at 10:46, 1.56s elapsed (1697 total ports)
Initiating OS detection (try #1) against 10.100.100.7
Host 10.100.100.7 appears to be up good
Interesting ports on 10.100.100.7:
Not shown: 1693 closed ports
PORT STATE SERVICE
Trang 33135/tcp open msrpc
139/tcp open netbios-ssn
445/tcp open microsoft-ds
1025/tcp open NFS-or-IIS
MAC Address: 00:0C:29:95:A9:03 (VMware)
Device type: general purpose
Running: Microsoft Windows 2003
OS details: Microsoft Windows 2003 Server SP1
OS Fingerprint:
OS:SCAN(V=4.20%D=8/2%OT=135%CT=1%CU=36092%PV=Y%DS=1%G=Y%M=000C
29%TM=46B2187 OS:3%P=i686-pc-windowswindows)
SEQ(SP=FF%GCD=1%ISR=10A%TI=I%II=I%SS=S%TS=0)
OS:OPS(O1=M5B4NW0NNT00NNS%O2=M5B4NW0NNT00NNS%O3=M5B4NW0NNT00%O4=M5B4NW0NNT0
OS:0NNS%O5=M5B4NW0NNT00NNS%O6=M5B4NNT00NNS)WIN(W1=FAF0%W2=F AF0%W3=FAF0%W4=F
OS:AF0%W5=FAF0%W6=FAF0)ECN(R=Y%DF=N%T=80%W=FAF0%O=M5B4NW0NNS%CC=N%Q=)T1(R=YOS:%DF=N%T=80%S=O%A=S+%F=AS%RD=0%Q=)T2(R=Y%DF=N%T=80%W=0%S=Z%A=S%F=AR%O=%RD
OS:=0%Q=)T3(R=Y%DF=N%T=80%W=FAF0%S=O%A=S+%F=AS%O=M5B4NW0NNT00NNS%RD=0%Q=)T4OS:(R=Y%DF=N%T=80%W=0%S=A%A=O%F=R%O=%RD=0%Q
Network Distance: 1 hop
TCP Sequence Prediction: Difficulty=255 (Good luck!)
IPID Sequence Generation: Incremental
OS detection performed Please report any incorrect results
at http://insecure.org/nmap/submit/
Nmap finished: 1 IP address (1 host up) scanned in 3.204 seconds
Raw packets sent: 1767 (78.460KB) | Rcvd: 1714 (79.328KB)
Ta có thể xem các figerprinting tại
“ C:\Program Files\Nmap\nmap-os-fingerprints”
Tiếp tục với những máy còn lại
C:\Documents and Settings\longdt>nmap -O 10.100.100.1
Starting Nmap 4.20 (http://insecure.org ) at 2007-08-02 10:54 Pacific Standard
Time
Interesting ports on 10.100.100.1:
Not shown: 1695 closed ports
PORT STATE SERVICE
Trang 3422/tcp open ssh
111/tcp open rpcbind
MAC Address: 00:0C:29:09:ED:10 (VMware)
Device type: general purpose
Running: Linux 2.6.X
OS details: Linux 2.6.9 - 2.6.12 (x86)
Uptime: 0.056 days (since Thu Aug 02 09:34:08 2007)
Network Distance: 1 hop
OS detection performed Please report any incorrect results
at http://insecure.org/nmap/submit/
Nmap finished: 1 IP address (1 host up) scanned in 2.781 seconds
Tuy nhiên có 1 số host Nmap không thể nhận diện ra như sau:
C:\Documents and Settings\longdt>nmap -O 10.100.100.16
Starting Nmap 4.20 (http://insecure.org ) at 2007-08-02 10:55 Pacific Standard
Time
Interesting ports on 10.100.100.16:
Not shown: 1689 closed ports
PORT STATE SERVICE
MAC Address: 00:0C:29:D6:73:6D (VMware)
No exact OS matches for host (If you know what OS is
running on it, see http://insecure.org/nmap/submit/ )
TCP/IP fingerprint:
OS:SCAN(V=4.20%D=8/2%OT=21%CT=1%CU=35147%PV=Y%DS=1%G=Y%M=000C29%TM=46B21A94OS:%P=i686-pc-windowswindows)
SEQ(SP=FD%GCD=2%ISR=10C%TI=I%II=I%SS=S%TS=0)SOS:EQ(SP=FD%GCD=1%ISR=10C%TI=I%II=I%SS=S%TS=0)OPS(O1=M5B4NW0NNT00NNS%O2=M5BOS:4NW0NNT00NNS%O3=M5B4NW0NNT00%O4=M5B4NW0NNT00NNS%O5=M5B4NW0NNT00NNS%O6=M5OS:B4NNT00NNS)WIN(W1=FAF0%W2=FAF0%W3=FAF0
%W4=FAF0%W5=FAF0%W6=FAF0)ECN(R=Y%DOS:F=Y%T=80%W=FAF0%O=M5B4NW0NNS%CC=N%Q=)T1(R=Y%DF=Y%T=80%S=O%A=S+%F=AS%RD=0OS:%Q=)T2(R=Y%DF=N%T=80%W=0%S=Z%A=S%F=AR%O=%RD=0%Q=)T3(R=Y%DF=Y%T=80
%W=FAF0OS:%S=O%A=S+%F=AS%O=M5B4NW0NNT00NNS%RD=0%Q=)T4(R=Y%DF=N%T=80%W=0%S=A%A=O%F=OS:R%O=%RD=0%Q=)T5(R=Y%DF=N%T=80%W=0
%S=Z%A=S+%F=AR%O=%RD=0%Q=)T6(R=Y%DF=N%TOS:=80%W=0%S=A%A=O%F
=R%O=%RD=0%Q=)T7(R=Y%DF=N%T=80%W=0%S=Z%A=S+%F=AR%O=%RD=OS:0
%Q=)U1(R=Y%DF=N%T=80%TOS=0%IPL=38%UN=0%RIPL=G%RID=G%RIPCK=G
Trang 35%RUCK=G%RUL=OS:G%RUD=G)IE(R=Y%DFI=S%T=80%TOSI=S%CD=Z%SI=S%DLI=S)
Network Distance: 1 hop
OS detection performed Please report any incorrect results
“ Nmap –v –p 80 sV 10.100.100.16” để xác định version của IIS
C:\Documents and Settings\longdt>nmap -p 80 –sV
PORT STATE SERVICE VERSION
80/tcp open http Microsoft IIS webserver 5.0
MAC Address: 00:0C:29:D6:73:6D (VMware)
Service Info: OS: Windows
Service detection performed Please report any incorrect results at http://insec
ure.org/nmap/submit/
Nmap finished: 1 IP address (1 host up) scanned in 6.750 seconds
Vậy ta có thể đoán được phần nhiều host là Window 2000
Server Ngoài việc thực
hành trên chúng ta có thể sử dụng Nmap trace, lưu log v.v
Bước 2: Phát hiện các điểm yếu
Sử dụng phần mềm Retina để phát hiện các vulnerabilities và tấn công bằng Metaesploit framework.Retina của Ieye là phần mềm thương mại(cũng như GFI, shadow v.v ) có thể update các lỗ hỗng 1 cách thường xuyên và giúp cho người Admin hệ thống có thể đưa ra những giải pháp để xử lý
Bây giờ ta sử dụng phần mềm Retina để dò tìm lỗi của máy Win 2003 Sp0(10.100.100.6) Report từ chương trình Retina:
TOP 20 VULNERABILITIES
Ta liệt kê TOP 20 vulnerabilities trên mạng
Rank Vulnerability Name Count
1 echo service 1
2 ASN.1 Vulnerability Could Allow Code Execution 1
3 Windows Cumulative Patch 835732 Remote 1
4 Null Session 1
5 No Remote Registry Access Available 1
6 telnet service 1
7 DCOM Enabled 1
Trang 368 Windows RPC Cumulative Patch 828741 Remote 1
9 Windows RPC DCOM interface buffer overflow 1
10 Windows RPC DCOM multiple vulnerabilities 1
11 Apache 1.3.27 0x1A Character Logging DoS 1
TOP 20 OPERATING SYSTEMS
The following is an overview of the top 20 operating systems on your network
12 Apache 1.3.27 HTDigest Command Execution 1
13 Apache mod_alias and mod_rewrite Buffer Overflow 1
14 ApacheBench multiple buffer overflows 1
15 HTTP TRACE method supported 1
TOP 20 OPEN PORTS
The following is an overview of the top 20 open ports on your network
Rank Port Number Description Count
1 TCP: 7 ECHO Echo 1
2 TCP: 9 DISCARD - Discard 1
3 TCP: 13 DAYTIME - Daytime 1
4 TCP: 17 QOTD - Quote of the Day 1
5 TCP: 19 CHARGEN - Character Generator 1
6 TCP: 23 TELNET - Telnet 1
7 TCP: 42 NAMESERVER / WINS - Host Name Server 1
8 TCP: 53 DOMAIN - Domain Name Server 1
19 TCP: 8080 Generic - Shared service port 1
20 UDP: 7 ECHO - Echo 1
Như vậy ta đã xác định hệ điều hành của máy 10.100.100.6, các Port mở của hệ thống
và các lỗi của hệ thống Đây là thông tin cần thiết để người Admin nhận diện lỗi và vá lỗi Trong Top 20 vulnerabilities ta sẽ khai thác bug lỗi thứ 10 là RPC DCOM bằng chương trinh Metaesploit framework(CD CEH v5) Ta có thể kiểm tra các thông tin lỗi này trên chính trang của Ieye hay securityfocus.com, microsoft.com