Chia Sẽ Kinh Nghiệm Về IT



Tìm Kiếm Với Google
-


Gởi Ðề Tài Mới  Gửi trả lời
 
Công Cụ Xếp Bài
Tuổi 03-12-2009, 01:59 PM   #1
hoctinhoc
Guest
 
Trả Lời: n/a
CEH- Linux Hacking
CEH- Linux Hacking


Module này sẽ giúp bạn làm quen với cái vấn đề sau:

· Basic Commands in Linux
· Linux File Structure
· Compiling Programs in Linux
· Linux Security
· Linux Vulnerabilities
· Linux IP chains
· Linux Rootkits
· Rootkit Countermeasures
· Linux intrusion Detection systems
· Tool in Linux
· Linux Security Countermeasures


I/ Sơ lược: Cấu trúc File & Các lệnh cơ bản trong Linux

- Các lệnh định danh có thể ảnh hướng đến an ninh nếu sử dụng không thích hợp
- Linux Shell (hệ vỏ): Dùng để cung cấp cho người dùng một hệ gia tiếp được thi hành dễ dàng. Đồng thời có nhiệm vụ bảo vệ hạt nhân của hệ điều hành khỏi tác động trực tiếp của người sử dụng.
Các loại shell: /sh (Bourn Shell), /ksh (Korn Shell), /bash (Bourn Again Shell), /csh (C shell), /tcsh

- Account trên Linux/Unix: bao gồm nhiều thông tin trong đó 2 phần liên quan đến việc sử dụng là username và userID
o username: khi sử dụng để login, gán quyền, ... chúng ta thực hiện thông qua username, nhưng hệ thống lại hiểu và làm theo userID
o userID: Số đi kèm với username, hệ thống dùng số này để quản lý. Như vậy nếu có 2 username khác nhau nhưng dùng chung 1 userID, thì hệ thống xem 2 tên này chỉ là 1.
- User và Group:
o mỗi user trên Linux bắt buộc phải thuộc 1 group nào đó (gọi là Primary Group), ngoài ra còn có thể lựa chọn tham gia vào các group khác (gọi là Secondary Group), theo một số tài liệu thì user có thể tham gia vào tối đa 16 Secondary Group.
o Linux không có Registry, cũng không có Group Policy. Nên tất cả thông tin về users và groups đều được lưu vào files. Vì vậy, bạn có thể mở các files này ra sửa trực tiếp (thay vì dùng lệnh để quản lý user).
- Quyền hạn: Linux và Unix chỉ phân biệt user làm 2 loại:
o User có quyền root: Tất cả những user có userID=0, thường thì với 1 máy mới, chúng ta sẽ có ngay 1 user tên root và có userID=0.
o User thường: Tất cả các user có userID # 0.
- File – Directory:
o Mọi thứ là 1 tập tin
o Tối đa 256 ký tứ
o Phân biệt chữ hoa, chữ thường
o Phần mở rộng không cần thiết
o Các ký tự đặt biệt
- Bắt đầu với: . (dấu chấm)(period)
- Không dùng /, ?, *, -
- Tránh dùng khoảng trắng ,sử dụng dấu gạch dưới thay thế

1/ Sytem File:
o Hệ thống file Linux được tổ chức theo dạng tree (cây). Có một vị trí khởi điểm, gọi là root (gốc).
o Bất kỳ một hệ thống Unix/Linux nào cũng có một thư mục đặc biệt gọi là thư mục
gốc (root directory) ký hiệu là dấu slash (“/”).
o Tất cả các thư mục và tập tin khác, kể cả system files (các tập tin hệ thống) và system directories (các thư mục hệ thống) cũng chỉ là cấp con của root.

2/ System Directory:
o / : Thường đươc gọi với tên ‘root directory’ – nghĩa là thư mục gốc. Đây là nơi chứa mọi thư mục con khác và luôn bắt buộc phải có cho bất kỳ hệ thống Linux nào.
o /bin: Thư mục này chứa tất cả các lệnh cần thiết được dùng cho user
o /sbin: Tương tự như bin. Tuy nhiên, các lệnh ở đây thường không được dùng bởi các user thông thường, mặc dù họ có thể sử dụng chúng nếu cần thiết và nếu được cho phép
o /ect: Lưu giữ các file cấu hình của máy cục bộ (localhost)
o /root: Thư mục của user root
o /lib: Thư mục này lưu giữ các thư viện cần thiết cho hệ thống hoạt động.
o /src: Thư mục này chứa các file source
o /doc: Thư mục chứa các file văn bản
o /man: Thư mục chứa file hướng dẫn (help)
o /share: Thư mục chia sẻ

3/ Làm quen với lệnh man:
- man : việc sử dụng tốt lệnh man để lấy thông tin sử dụng của các lệnh đã gần như trở thành điều kiện bắt buộc cho những ai muốn sử dụng Linux.

- man [command]:
Thông thường mọi câu lệnh đều có tuỳ chọn –h (hoặc –help) để in ra cho người dùng các thông tin mô tả và các tuỳ chọn của nó.
Ví dụ: man –h hoặc man –help

- Within man:
• spacebar/f = forward = chuyển tiếp
• b = back
• q = quit = thoát
• / = search forward = tìm kiếm tiếp
• ? = search backward = quay trở lại tìm kiếm
• n = repeat search = lặp lại tìm kiếm

4/ Hiển thị nội dung Files:
o Lệnh cat : dùng để hiển thị nội dung file lên màn hình
Gõ: cat file.txt

o Lệnh more or less : hiển thị nội dung của file lên một trang màn hình tại một thời điểm
Gõ: more file.txt -or- less file.txt

o Lệnh head: hiển thị nội dung 10 dòng đầu tiên của file lên màn hình
Gõ: head file.txt sau đó gõ: head -25 file.txt à xem thế nào?

o Lệnh tail: hiển thị nội dung 10 dòng cuối cùng của file lên màn hình
Gõ: tail file.txtsau đó gõ: tail -25 file.txtàxem thế nào?


- Tìm hiểu thêm 1 số lệnh căn bản liên quan đến Thư mục – Tập tin
o man: Hiển thị các thông tin chi tiết về công dụng, cú pháp, cách dùng của một lệnh khác.

Cú pháp: man <tên_lệnh_khác>
Ví dụ: man ls
Bạn cũng có thể gõ man man để xem các thông tin giúp đỡ chính lệnh man

o ls
Cú pháp: ls [tham_số] [thư_mục]

Nếu như bạn cung cấp phần thư_mục thì ls sẽ liệt kê các file trong thư mục hiện tại
Ví dụ:
ls - ls –a ls –al/usr

o cd: Dùng để chuyển tới một thư mục khác

Cú pháp: cd [tên_thư_mục]
Ví dụ: cd /home

o cp: dùng để chép file hoặc thư mục từ nơi này đến nơi khác

Cú pháp: cp [tham_số] <file_hoặc_thư_mục_nguồn> <file_hoặc_thư_mục_đích>
Ví dụ:
cp /tmp/myfile.txt myfile.text
cp /home/*.cgi ./
cp -r /usr/ tpthuan01 /usr/ tpthuan02

o mv: Lệnh này sẽ di chuyển/đổi tên file từ nơi này đến nơi khác.

Cú pháp: mv <file_hoặc_thư_mục_nguồn> <file_hoặc_thư_mục_đích>
Ví dụ về di chuyển:
mv /tmp/myfile.txt /usr/tpthuan
mv myfolder /tmp
mv /usr/* /tmp
Ví dụ về đổi tên, vừa di chuyển vừa đổi tên::
mv myfile1.txt myfile2.txt
mv /usr/oldfoler ./newfolder

o mkdir: Lệnh này dùng để tạo một thư mục mới.

Cú pháp: mkdir <tên_thư_mục_muốn_tạo>
Ví dụ:
mkdir mydir
mkdir /tmp/mydir2

o rm: lệnh này dùng để xoá file
Cú pháp: rm <tên_file_muốn_xoá>
Ví dụ:
rm myfile.txt
rm /usr/nbthanh/nbtfile.txt
rm /tmp/*

- Linux Networking Commands – Các lệnh Networking

o arp: Hầu như được sử dụng để kiểm tra kết nối hiện tại và địa chỉ IP
o ipconfig: Dùng để cấu hình và kiểm tra các network card/ interface
o netstat: Lệnh này dùng để xem trạng thái hiện tại của Network
o snlookup: Dùng để kiểm tra thông tin về tên miền và ip của một máy chủ
o ping: dùng gửi gói tin đến một máy chủ cụ thể để kiểm tra xem có phản hồi hay không
o route: Liệt kê bảng định tuyến cho máy chủ
o shred: Xoá 1 file 1 cách an toàn bằng cách ghi đè nội dung của nó
o traceroute: Cho phép xác định các trạm (IP_Router) mà gói tin đi qua để đến đích
o ps: trình bày tình trạng của các tiến trình

II/ Installing, Configuring, and Compiling Linux Kernel
Bạn có thể tải Kernel, phiên bản mới nhất tại : www.linux.org

Step 1:
§ Đăng nhập với quyền “root”
§ ‘cp linux-2.4.2.tar.gz /usr/src ‘ Copy file linux-2.4.2.tar.gz vào /usr/src
§ ‘cd /usr/src/’ Chuyến đến thư mục /usr/src
§ Kiểm tra source của kernel cũ trong /usr/src/linux
§ Chép phiên bản hiện tại để lưu dự phòng ‘mv /usr/src/linux linux-X.X.X’
§ ‘tar –zxvf linux-2.4.2.tar.gz’ Giải nén file
§ Chuyển kernel source ‘mv /usr/src/linux /usr/src/linux-2.4.2’
§ Tạo một liên kết đến nó ‘ln-s /usr/src/linux-2.4.2 /usr/src/linux’

Step 2:
§ Cấu hình kernel
§ cd đến thư mục chứa Kernel source /usr/src
§ Gõ: make menuconfig nếu bạn thích chế độ văn bản – Đề nghị dùng: xconfig

Step 3:
Quay lại command line và gõ : make dep để biên dịch kernel

Step 4:
§ Xoá tất cả files (.o, hoặc object file) đã tạo trong quá trình biên dịch
§ make clean

Step 5:
§ Tạo một ảnh đĩa khởi Linux
§ Tạo bzImage
§ Tạo các mô-đun mới cho cài đặt
§ Tạo các mô-đun mới
§ Sau khi hoàn tất biên dịch
§ Tạo mô-đung cài đặt
§ Chuyển file Bzimage đến vị trí của kernel
§ mv /usr/src/linux-2.4.17/arch/i386/boot/bzImage/boot/vmlinuz-2.4.17


Step 6:
§ Định vị file khởi động Linux LILO
§ Chỉnh sữa tập tin /ect/lilo.conf,
§ Thêm vào các dòng sau:
mage=/boot/vmlinuz-2.4.17
lable=linux-2.4.17
root=/dev/hda3
read-only
§ Lưu lại với tên: lilo.conf
§ Chạy chương trình lilo /sbin/lilo
§ Khởi động lại máy tính.




- How to instal a Kernel patch – Cài đặt bản vá lỗi
§ Tải Kernel Patch tại www.linux.org
§ Copy file Kernel vừa tải về đến thư mục /usr/src/linux
§ Chuyển đến thư mục bằng lệnh cd /usr/src/linux
§ Giải nén Patch vào thư mục /usr/scr/linux (sử dụng lệnh tar, gzip, etc)
§ Sau khi giải nén sẽ có file tên patch-2.x.x hoặc patch-2.x.x-yy được tạo trong thư mục /usr/src/linux
§ Để áp dụngpatch cho kernel gõ: run patch –p1 < patch-2.x.x hoặc patch –p1 < patch-2.x.x-yy

III/ Compile programs in Linux - Trình biên dịch trong Linux
  • GCC là trình biên dịch dưa trên dòng lệnh
  • Nó có thể được dùng để biên soạn và thực hiện C, C++ và Fortran code
  • Bạn có thể tải phiên bản mới nhất tại địa chỉ: http://gcc.gnu.org
  • Hầu hết các công cụ hacking Linux được viết bằng C. Khi bạn tải 1 công cụ hacking thì nó thường là mã nguồn C hoặc là C++. Bạn không cần phải biết lập trình C/C++ để biên dịch 1 chương trình.

1/ GCC Commands
§ Ví dụ về C++ code:
#include <iostream>
int main ()
{
std::cout << “Hello, world!”;
return 0;
}

§ Để biên dịch code trên dùng lệnh:
gcc –Wall hello.c –o hello

§ Để chạy chương trình, gõ:
./hello


2/ Make File
· Bạn hãy đọc tài liệu “how to compile program” có trong file READ kèm theo chương trình, vì đôi khi dòng lệnh biên dịch cho vài chương trình rất dài.
· Makefile là một command file cho các trình biên dịch (nó giống như bạn tạo 1 file .bat và chạy nó trong môi trường DOS hoặc Windows)
· Ví dụ: Giả sử bạn có một chương trình đồ họa gọi là face.cpp, và bạn muốn biên dịch nó bằng dòng lệnh: g++ -o face face.cpp –L/usr/X11R6/lib –lm –lX11 –lgd –lg2
· Bây giờ để biên dịch face, bạn sẽ sử dụng lệnh: make hoặc make face

3/ Make install command
Có 4 lệnh (command) để biên dịch, liên kết và cài đặt chương trình:
· ./configure (có thể không có lệnh này)
· make : tiện ích điều khiển quá trình biên dịch và liên kết
· make install: Đặt file thư viện của trình biên dịch vào đúng thư mục /usr/local/bin
· make clean: Xóa các file tạm đã được tạo ra trong quá trình biên dịch và liên kết


IV/ Linux Vulnerabilities
  • Số lượng lổ hổng được khai thác trong lõi Linux ngày càng tăng thêm
  • The U.S. Computer Emergency Readiness Team (CERT), thông báo rằng, Linux và Unix kết hợp lại có hơn 2.328 lỗ hổng, so với 812 lỗ hổng của Microsoft Windows.
  • Từ mã nguồn có sẵn, được lưu hành rộng rãi cho bất cứ các dự án Linux, vì thế mà tất cả hacker trên thế giới chú ý đến.

1/ Vulnerabilities được phát hiện trong nhiều packag, bao gồm:
    • Apache, balsa, bind, bugzilla, cdrecord, cfengine
    • Cron, cups, cvs, ethereal, evolution, exim, fetchmail, fileutils
    • Gdm, ghostsript, glibcm, gnupg, gzip, hylafax, inetd, iproute, KDE, kerberos, kernel
    • Lprng, lsh, lynx, mailman, man, mozilla, mpg123, mplayer, multt, MySQL, openssh, openssl
    • Perl, pine, PHP, postfix, PostgreSQL, proftpd, python, rsync, samba, screen, sendmail, snort, stunnel, sudo, tcpdump, vim, webmin, wget, wu-ftpd, xchat, Xfree86, xinetd,xpdf, zlib




2/ Chrooting
· Linux là một Hệ thống mã nguồn mở với nhiều nhà cung cấp, cung cấp các tùy chọn khác nhau
· Linux không an toàn như những OS khác
· Linux được tối ưu hóa cho thuận tiện và không dễ dàng bảo mật hoặc tự nhiên (natural)
· Bảo mật trên Linux sẽ khác nhau đối với các user khác nhau (The security on Linux will vary from user to user)

3/ Why is Linux Hacked
· Linux được sử dụng rộng rãi cho một số lượng lớn các máy chủ trên thế giới
· Từ mã nguồn có sẵn, nên rất dễ dàng để tìm ra các lỗ hổng của hệ thống
· Nhiều ứng dụng trên Linux được cài đặt theo mặc định, vì thế có nhiều điểm yếu để tấn công.
· Có rất nhiều chương trình mặc định cài đặt setuid
· Có rất nhiều chương trình mặc định cài daemon
- Admin cần phải loại bỏ daemon
- Thay đổi file rc.d (/etc.rc.d) và inetd.conf (/etc/inetd.conf)

4/ How to Apply Patches to Vulnerable Programs
- Kiểm tra các phân phối Linux trên trang chủ của họ, ví dụ: Redhat, Debian, Alzza …
- Vào trang web của các nhà cung cấp để tải về các bản vá lỗi

5/ Scanning Networks
- Chỉ cần biết một địa chỉ IP của một hệ thống đích, kẻ tấn công có thể bắt đầu quét cổng (scan port), tìm kiếm lỗi trong hệ thống mà qua đó có thể truy cập được.
- Một hệ thống điển hình có 2^16 – 1 port, trong đó có ít nhất 01 cổng TCP và 01 cổng UDP
- Một trong số các cổng là một cách thức tiềm năng để vào hệ thống
- Công cụ quét được ưa chuộng là Nmap

V/ Giới thiệu một số Scanning Tool

1/ Nmap
- Nmap là một công cụ được sử dụng cho việc xác định các host đang hoạt động và đang hoạt động với các dịch vụ (service) gì.
- Nmap có thể là một công cụ chẩn đoán cho các quản trị viên.






2/ Nessus
· Một trong các loại công cụ cần thiết cho bất kỳ kẻ tấn công, hoặc phòng thủ, là scan lỗ hổng
· Công cụ này cho phép kẻ tấn công kết nối đến một hệ thống mục tiêu và kiểm tra các lỗ hổng , lỗi cấu hình, các thiết lập mặc định đó cho phép kẻ tấn công truy cập và hầu hết các báo cáo gần nhất về lỗ hổng của hệ thống.
· Nessus là một mã nguồn mở được ưa thích
· Nessus là công cụ quét Network mạnh mẽ, nó cũng có thể được cấu hình để chạy một loạt các cuộc tấn công.





3/ Port Scan Detection Tool
· KLAXON
· Scanlogd
o Link tham khảo: http://www.openwall.com/scanlogd
o Detects and logs TCP port scans
- Chỉ phát hiện các bảng ghi (log) và các cổng quét TCP (TCP scans), nhưng không ngăn cản
- Bạn sẽ chỉ nhận được tổng kết thông tin trong các hệ thống đăng nhập
· Psionic PortSentry
- Link tham khảo: http://new.linuxfocus.org/English/September2001/article214.shtml
- Portscan phát hiện các chương trình daemon, Portsentry có khả năng phát hiện, quét cổng (bao gồm cả quét ẩn) trên network interfaces của người sử dụng server
- Sau khi báo động, nó có thể chặn các tấn công thông qua hosts.deny, dropped route, or firewall rule.

4/ Password Cracking in Linux: Xcrack
· Xcrack là công cụ tìm kiếm bất kỳ các mật khẩu phù hợp với những chữ có trong từ điển tập tin cung cấp cho người sử dụng, nhưng nó sẽ không áp dụng bất kỳ sự kết hợp hoặc sữa đổi của những chữ đó.
· Nó là một công cụ tương đối nhanh.
· John the Ripper là công cụ password cracking khác cũng được ưa chuộng




5/ Firewall in Linux: IPTables
o IPTable là sự thay thế Ipchains trong Linux Kernel, và có nhiều tính năng hơn IPChains
o Khả năng kiểm tra kết nối thông minh stateful packet
o Bất kỳ Packet nào muốn đi vào PC của bạn đều phải đi qua Input Chain
o Bất kỳ Packet nào từ PC của bạn muốn ra ngoài Network đều phải đi qua Output Chain
o Bất kỳ Packet nào PC của bạn muốn gửi đến một Destination khác đều phải qua Forward Chain
o A clean separation of packet filtering and NAT
o Giới hạn tỉ lệ kết nối và đăng nhập có hiệu lực
o Khả năng filter trên TCP flag, TCP Option và các MAC address



IPTable Command

o iptables –A INPUT –s 0/0 –i eth0 –d 192.168.1.1 –p TCP –j ACCEPT
- Iptables đang được cấu hình để Firewall (192.168.1.1) chấp nhận các TCP packet đến interface eth0
o iptables –A OUTPUT –p icmp –icmp-type echo-request –j ACCECPT
iptables –A INPUT –p icmp –icmp-type echo-reply –j ACCEPT
- Iptable được cấu hình để Firewall cho phép gửi yêu cầu ICMP (echo-request , ping) và chấp nhận phản hồi ICMP (echo-reply)

6/ Basic Linux Operating System Defense
o Hệ điều hành Linux có một số được cài đặt sẵn các cơ chế bảo vệ, bạn nên kích hoạt bằng cách thay đổi tham số system kernel trong /proc filesystem hoặc /etc/sysctl.conf
o Thay đổi /etc/sysctl.conf để sữa đổi các tham số kernel




7/ SARA (Security Auditor’s Research Assistant)
o SARA là sản phẩm thế hệ thứ 3 dựa trên nền tảng Unix, là công cụ phân tích bảo mật hộ trợ FPI, được xếp hạng 20 trong bảng xếp hạn về công cụ bảo mật.
o SARA hoạt động trên hầu hết các loại hệ điều hành Unix, bao gồm cả Linux và Mac OS X.
o SARA là bản nâng cấp từ SATAN tool
o Để dựng và chạy SARA là một quá trình biên soạn đơn giản và phần còn lại được thực hiện thông qua một trình duyệt

8/ Netcat
TCP/IP swiss army knife đơn giản là một tiện ích Unix đọc và ghi dữ liệu qua kết nối mạng sử dụng giao thức TCP hoặc UDP. Được thiết kế để trở nên là một back-end đáng tin cậy, có thể sử dụng trực tiếp hoặc dễ dàng định hướng bởi các chương trình hoặc các script khác. Nó có khả năng tạo bất kỳ các kết nối mà bạn cần, và khả năng xây dựng đáng chú ý.




9/ tcpdump
Là một công cụ mạnh mẽ cho công việc giám sát network (network monitor) và dữ liệu (data) thu được, nó còn cho phép bạn xem lưu lượng trên hệ thống mạng. Tcpdump có thể dùng để in ra các header của packet trên một interface phù hợp với một biểu thức được định sẵn. Bạn có thể sử dụng công cụ này để theo dõi các trục trặc của network.





10/ Snort
Linh hoạt trong việc phân tích packet hoặc bảng ghi nhầm phát hiện các cuộc tấn công, Snort là một libpcap-based packet sniffer/logger, có thể được sử dụng như một lightweight NIDS (network intrusion detection system).
Snort có khả năng cảnh báo thời gian thực, có cảnh báo nó sẽ gửi một file riêng biệt đến syslog, hoặc thậm chí gửi đến một máy tính Windows thông qua Samba




11/ SAINT
SAINT (Security Administrator’s Integrated Network Tool) là một công cụ đánh giá bảo mật cơ bản dựa trên SATAN. Bao gồm các tính năng quét thông qua một firewall, cập nhật và kiểm tra thông tin bảo mật từ CERT & CIAC, có 4 mức độ bảo mật (đỏ, vàng, nâu, xanh lá cây) và một tính năng phong phú trên giao diện HTML.




11/ Wireshark
Network traffic analyzer wireshark là công cụ phân tích lưu lượng của một network, hoặc “sniffer”., dành cho hệ điều hành Unix và Unix-like .
Sử dụng giao diện GTK+, một thư viện đồ hoạ giao diện người dùng, libpcap, packet capture và lọc các thư viện (filtering library)








12/ Abacus Port Sentry
Portscan detection daemon Port entry có khả năng phát hiện các portscan (bao gồm cả quét ẩn) trên các network interface của máy tính.
Sau khi báo động, nó có khả năng chặng tấn công thông qua hosts.deny, dropped route, hoặc firewall rule. Đó là một phần của chương trình Abacus .


13/ Dsniff Collection
Là một trong những công cụ mạnh dành cho sniffing mật khẩu và các thông tin trên network
Bao gồm các kỹ thuật tin vi nhằm đánh bại hệ thống phòng vệ các network switcher.



14/ Hping2
o Hping2 có khả năng gửi các gói tin ICMP/UDP/TCP đã được custom lại và hiển thị kết quả ở máy đích như các gói ping dạng ICMP replies
o Phân mảnh, thay đổi nội dung cũng như kích thước gói tin và truyền tải file dưới dạng những giao thức được hỗ trợ.
o Có thể dùng hping để kiểm tra các rule của firewall



15/ Sniffit
Sniffit là một công cụ monitor và packet sniffer. Nó là một packet sniffer dành cho các TCP/UDP/ICMP packet. Nó không những cung cấp thông tin kỹ thuật chi tiết về các gói tin (SEC, ACK, TTL, Window, .v.v) mà còn đóng gói nội dụng trong các định dạng khác nhau (hex, plain text, v.v.)


16/ Nemesis
Nemesis Project được thiết kế để có một dòng lệnh cơ bản và linh động cho UNIX/Linux


17/ LSOF (List Open File)
Là một công cụ chẩn đoán hữu hiệu dành cho Unix. Lsof liệt kê các thông tin về bất cứ tập tin được mở bởi tiến trình đang chạy trên hệ thống.


18/ IPTraf
Là một ncurses-based, giám sát IP mạng LAN từ đó tạo ra các số liệu thống kê bao gồm cả mạng lưới thông tin TCP, UDP counts, thông tin OSPF và ICMP, Ethernet load info , số liệu thống kê nút (node stat), IP checksum lỗi (error), và những thứ khác





19/ LIDS
LIDS là ứng dụng phát hiện xâm nhập/ bảo vệ hệ thống trong nhân Linux. Mục đích là bảo vệ hệ thống Linux chống xâm nhập root bằng cách vô hiệu hoá một số lệnh gọi hệ thống can thiệp vào kernel



20/ Hunt
· Là một công cụ session hijacking tool.
· Một trong những lợi thế của Hunt so với các session hijacking tool khác là nó sử dụng các kỹ thuật để tránh ACK storm.
· Hunt tránh các tấn công ACK storm và giảm các kết nối bằng cách sử dụng ARP spoofing để xác minh máy tính của người tấn công như là một relay giữa nguồn và đích.
· Người tấn công sử dụng Hunt để sniff các packet vào nguồn và đích để gửi qua kết nối.
· Người tấn công có thể chọn để hoạt động giống như một relay và chuyển tiếp (forward) các packet đến nơi được định sẵn, hoặc anh ta có thể hijack session
· Người tấn công có thể gõ vào những lệnh mà nó được chuyển tiếp đến một nơi trừ khi mã nguồn không thể đọc được.



21/ TCP Wrappers
· TCP Wrappers cho phép người dùng giám sát hoặc lọc các yêu cầu (incoming request) về SYSTAT, FINGER , FTP, TELNET, R-Commands, TFTP, TALK, và các dịch vụ mạng khác.
· Nó cung cấp điều khiển truy cập để hạn chế những gì mà các hệ thống kết nối với network daemon
· Nó cung cấp một vài protection từ host spoofing

Có 4 thành phần sau:
· Tcpd – The actual wrapper program
· Tcpdmatch, tcpdchk – ACL (Access Control List) testing programs
· Try-from-tests host lookup function
· Safe-finger-a better version of finger

VI/ Linux Rootkits
    • Bằng cách cài đặt một rootkit, kẻ xâm nhập có thể duy trì quyền truy cập vào hệ thống.
    • Một rootkit có chứa một thiết lập của tools và khả năng thay thế được cho nhiều thành phần của hệ điều hành, được sử dụng để ẩn các bằng chứng về sự hiện diện của kẻ tấn công và để cho các backdoor tấn công truy cập vào hệ thống.
    • Rootkit cần được cài đặt và truy cập ở quyền root, và chỉ cần cài đặt 1 lần là hacker có thể quay lại truy cập vào hệ thống bất cứ lúc nào.





1/ Knark & Torn
    • Knark:
      • Sau đây là danh sách các file đi kèm với Knark:
        • Makefile, apache.c, Apache.cgi, backup, Bj.c, caine, Clearmail, dmesg, Dmsg, ered, Exec, fix, Fixtext, ftpt, Gib, gib.c, H dso, hidef, Inc.h, init, Lesa, login Lpdx, lpdx.c, Make-ssh-host-key, make-ssh-known-hosts, Module, nethide, Pgr, removeme, Rexec, rkhelp, sl2 Sl2.c, snap, Ssh_config, sshd_config, Ssht, statdx2, Sysmod.o, sz, T666, unhidef, Wugod, zap
      • KNARK đi kèm với một vài exploit cũng tốt, chẳng hạn như Lpdx, T666, Wugod
    • Torn:
Là loại Rootkit đầu tiên được precompiled và cho phép người dùng bảo vệ mật khẩu; Mật khẩu này được mã hóa.

Các bạn có thể tham khảo thêm: Tuxit, Adore, Ramen, Bestkit


2/ Rootkit Countermeasures : Các biện pháp đối phó với Rootkit
Chkrootkit là một công cụ xem có dấu hiệu của một rootkit trên local. Nó chứa tập lệnh kiểm tra các lệnh nhi phân trên hệ thống có bị thay đổi hay không.



VII/ Linux Security




1/ Application Security
  • Rain.Forest.Puppy’s
    • CGI vulnerability scanner
  • Flawfinder:
    • It is a Python program that searches throught the source code for potential security flaws, listing them sorted by risk, with the most potentially dangerours flaws shown first. The risk level depends not only on the function, but also on the values of the parameters of the function
  • StackGuard
    • A compiler that emits programs hardened against “stack smashing” attacks. Stack smashing attacks are a common form of penetration attack. Programs that have been compiled with StackGuard are largely immune to stack smashing attack. Protection requires no source code changes at all
  • Libsafe
    • It is generally accepted that the best solution to buffer overflow and format string attacks is to fix the defective programs

2/ Advanced Intrusion Detection Environment (AIDE)
  • AIDE is a free replacement for Tripwire
  • It creates a database from the regular expression rules that it finds from the config file
  • Once this database is a snapshot of the system in its normal state and the yardstick by which all subsequent updates and changes will be measured
3/ Encryption tool




Tham khảo: 4/ Log and Traffic Monitors Tools




Tham khảo:
5/ Linux Security Auditing Tool (LSAT)
  • LSAT là một bổ sung để kiểm định sự an toàn của hệ thống Linux/Unix
  • Nó kiểm tra cấu hình hệ thống và các thiết lập mạng trên local, phổ biến cho các hệ thống an ninh, config các lỗi và các package không cần thiết
  • LSAT gồm có:
    • Checkcfg, checkdotfiles, checkfiles, checkftpusers, checkhostsfiles, checkinetd, checkinittab, checkissue, checkkbd, checklimits, checklogging, checkmodules, checkmd5, checknet, checknetforward, and checkset, to name afew
6/ Linux Security Countermeasures: Các biện pháp bảo mật trên Linux
  • Physical Security:
    • Khóa máy tính của bạn trong một nơi an toàn (ví dụ: bỏ vô két sắt khóa lại ^^).
  • Password Security:
    • Không được đặt mật khẩu dễ đoán được (ví dụ: đặt 123456 là khó đoán nhất ^^).
    • Không chia sẽ account cho bất cứ ai.
    • Kiểm tra user account với null passwd (không passwd) trong /etc/shadow
  • Network Security:
o đầu tiên là cấm truy cập từ network theo mặc định
      • $cat “ALL:ALL” >> /etc/hosts.deny

o Ngừng tất cả các service chưa sử dụng ví dụ như: sendmail, NFS
      • $chkconfig –list
      • $chkconfig –del sendmail
      • $chkconfig –del nfslock
      • Chkconfig –del rpc

Kiểm tra system logs trong /var/log đặt biệt là trong /var/log/secure

· Update your Linux system regularly:
o Kiểm tra và fix lỗi (bug fixes) link: http://www.redhat.com/support/errata
o Các gói update bạn có thể tìm ở đây: ftp://updates.redhat.com.

7/ Steps for Hardening Linux
· Giảm tối đa các phần mềm cài đặt
· Nâng cấp các bản vá lỗi cho hệ thống
· Bảo vệ quyền cho các file hệ thống và S*ID binaries
· Cải tiến đăng nhập và bảo mật user
· Thiết lập một số cơ chế kiểm soát an ninh vật lý và khởi động
· Bảo vệ daemons thông qua việc kiểm soát mạng lưới truy cập
· Thường xuyên đăng nhập và kiểm định thông tin
· Cấu hình các phần mềm bảo mật (IDS, host firewall)

Theo: ICT24H.net






  Trả lời ngay kèm theo trích dẫn này
Gửi trả lời



Quyền Hạn Của Bạn
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Mở
Hình Cảm xúc đang Mở
[IMG] đang Mở
Mã HTML đang Tắt




Bây giờ là 05:33 AM. Giờ GMT +7



Diễn đàn tin học QuantriNet
quantrinet.com | quantrimang.co.cc
Founded by Trương Văn Phương | Developed by QuantriNet's members.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.