1. Trang chủ
  2. » Giáo án - Bài giảng

An toàn hệ điều hành và hợp ngữ

200 6 0

Đ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

Tiêu đề An toàn hệ điều hành và hợp ngữ
Trường học Hutech University
Chuyên ngành Computer Security
Thể loại Bài giảng
Năm xuất bản 2022
Thành phố Ho Chi Minh City
Định dạng
Số trang 200
Dung lượng 9,85 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Cấu trúc

  • BÀI 1: T NG QUAN V AN TOÀN H U HÀNH (11)
    • 1.2.1 Authentication (13)
    • 1.2.2 Authorization (14)
    • 1.2.3 Accounting (14)
    • 1.3.3 Race Condition (18)
    • 3.2.1 SQL injection (37)
    • 3.2.2 OS Command Injection (37)
    • 3.2.3 Buffer Overflow (38)
    • 3.2.4 Uncontrolled Format String (39)
    • 3.2.5 Integer Overflow (39)
    • 3.2.6 Zero-Day Exploits (40)
    • 3.3 QUÁ TRÌNH KHAI THÁC (41)
  • BÀI 4: CÔNG C B O M T (44)
    • 4.1.1 Nmap (44)
    • 4.1.2 Nessus (45)
    • 4.1.3 Fuzzing (46)
    • 4.1.4 OpenVas (47)
    • 4.1.5 MBSA (48)
    • 4.1.6 SecureCheq (49)
    • 4.1.8 Secunia PSI (49)
    • 4.1.9 Retina (49)
    • 4.1.10 QualysGuard (50)
    • 4.2 CÔN (50)
  • BÀI 5: B O V H TH NG T P TIN (82)
    • 6.1.1 Malware (108)
    • 6.1.2 Virus (108)
    • 6.1.3 Worms (109)
    • 6.1.4 Trojan (109)
    • 6.1.5 Rootkit (110)
    • 6.1.6 Spyware (110)
    • 6.1.7 Programmatic (111)
    • 6.4.1 Secure Boot U (119)
    • 6.4.2 Early Antimalware (ELAM) (119)
    • 6.4.4 User Account Control (121)
    • 6.4.6 Bitlocker (123)
  • BÀI 7: H P NG (126)
    • 7.9.4 ghi chú (133)
    • 7.11 THANH GHI (137)
      • 7.18.4 Ví d (169)
      • 7.19.1 Ví d (171)
      • 7.20.1 ASCII (0)
      • 7.20.2 BCD (0)
      • 7.20.3 Ví d (175)
      • 7.23.1 Cú pháp (186)
      • 7.23.2 Ví d (187)
      • 7.23.3 C u trúc D li u X p ch ng (188)
      • 7.26.2 Con tr (194)
      • 7.26.3 Hàm g i h th ng x lý t (194)
      • 7.26.4 T (194)
      • 7.26.5 M (195)
      • 7.26.9 c (196)
      • 7.26.10 Ví d (196)

Nội dung

T NG QUAN V AN TOÀN H U HÀNH

Authentication

Authorization

Accounting

1.3.1 T n công tài kho n qu n tr này, username, password g các v võ login Spoofing

Pentium 4 windows/system32/config boot thì hoàn

1.3.1.2 T n công nâng quy n nà admin thành cô backdoor

Administration Tools) crack link crack link

Race Condition

- Non-repudiation log tiên ( root root

- fix victim các file email vào các

- lên máy malware malware , các keylogger, rootkit

- hai thác khác nhau: Buffer overflow, Integer overflow, use after free

Khi hacker sau khi kh backdoor xóa cookie cache,

==> Start ==> menu==> Customize ==> Advanced ==> Clear list checklist my most recently opened documents

HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer và xóa key auditing ghi log

1.4.1 B o v m t kh u slogan dò password và các ký fingerprint

root thanh ghi thanh ghi thì c g Windows Vista

1.4.5 Các bi n pháp chung chip

Exe log trang n server user admin dò password

2.1 KHÁI NI N authentication) subject) ình,

(external entity user binding subject)

mà minh thông là các hàm f F mà f: A C hàm logic hàm l L, l:

8 admin/superuser quên logout hàm f a c=f(a) c=f(a) khác c c a A

6.9 ×10 16 rong user superuser login passwd hay nispassw

(salting bit salt bit) công hoàn toàn không k k là

X version bit trên ch y làm ch m t n công d ng ngo i tuy n

Khi không thể truy cập vào tập C, trong tình huống offline, chúng ta cần tìm cách xử lý các lỗi xảy ra trong quá trình này Trong trường hợp online, việc sử dụng các giải pháp hợp lý là rất quan trọng để tránh gặp phải những khó khăn không mong muốn Để giảm thiểu rủi ro, chúng ta có thể tìm kiếm các phương án thay thế nhằm đảm bảo hiệu suất và tính khả thi của hệ thống.

- Có th i gian tr gi a 2 l n th không thành công theo m nhanh, ví d (Exponential Backoff)

- Có th ng cho phép gõ sai m t kh u và b t d ng khá lâu khi b t ng, th m chí tháo b quy n p

- Có th giam l ng (Jailing), t ng mô ph ng th nghi m nghiên c u hành vi c a k t n công

Ngoài các biện pháp quan trọng trong việc sử dụng phòng tắm, một mặt hàng hạng nhất (quá tuổi sử dụng) sẽ phải được thay thế bằng một mặt hàng mới Việc này cần được thực hiện thông qua việc nhắm đến các tiêu chí khi tiến hành bồi thường Cần lưu ý rằng mặt hàng mới sử dụng sẽ phải đảm bảo tính hợp pháp và ghi nhận rằng việc này cần phải tuân thủ luật định, không thể phó thác cho việc quay vòng sử dụng mặt hàng cũ một cách dễ dàng.

2.3 THÁCH TH C NG c b ng m t kh u truy n th ng có m t v n là tính s d ng l i c a m t kh u M t kh u ph i nhi u l n, m t khi có k quan sát tóm b c m t kh u, h n hoàn toàn có th thay th i ch m t kh p h th ng thàn u k ch nghe tr m ng truy n k t n i terminal và h th phát l i (replay p gi m o thành công

Vì v thách th c ng (challenge- response) có th c s d kh c ph c v này Hai bên, User (U) và h th ng (S) có th th ng nh t v i nhau thi t l p m t hàm f bí m p s g b

S U: r, m t giá tr sinh ng u nhiên

Hệ thống có thể xác định f(r) Rõ ràng, các thông tin gửi qua mạng truyền là liên kết, vì ngẫu nhiên không thể sử dụng tên công phát lộ Tất nhiên, việc hệ thống nhận được một hàm bí mật f có vai trò là một yêu cầu lớn Thực ra, thực hiện nâng cao việc xác lập một mật khẩu dùng (bí mật chung giữa người dùng và hệ thống).

Ví d : Hàm f có th là m t hàm m i x ng ph bi n Ví d s d ng f(X) = DES K a m t kh u, chính là giá tr bí m t chia s gi i dùng và h th ng

Mật khẩu dùng một lần (one-time password) được phát triển bởi L Lamport, với ý tưởng sử dụng chuỗi giá trị mà mỗi giá trị trong chuỗi này sẽ tạo ra một mật khẩu mới Mật khẩu cuối cùng trong chuỗi sẽ được sinh ra khi người dùng cung cấp mật khẩu trước đó, đảm bảo tính bảo mật cho hệ thống.

2.4 XÁC TH C QUA SINH TR C c h i có th c s d nh duy nh t t ng cá th Nh n d m sinh tr r ch ng h vi c xác nh danh t i thông qua gi m khuôn m t Khoa h c nghiên c u v sinh tr c t m t s y u t sinh tr c có th s d nh mang tính duy nh

Dấu vân tay là một trong những đặc điểm sinh trắc học phổ biến nhất, được sử dụng để nhận diện cá nhân Dấu vân tay có thể được thu thập thông qua thiết bị quét Tuy nhiên, nhận diện dấu vân tay gặp khó khăn do sự khác biệt lớn giữa các mẫu, đặc biệt là khi có sự xô lệch trong quá trình quét Do đó, bài toán nhận diện dấu vân tay có thể được chuyển đổi thành một bài toán so khớp đồ thị.

So sánh nói có thể được thực hiện theo hai cách: so sánh về giọng nói và so sánh về nội dung So sánh giọng nói liên quan đến việc đối chiếu các mục ghi nhận trong hệ thống Kỹ thuật thực hiện thông qua việc phân tích chi tiết các tính chất tín hiệu và thực hiện các phép kiểm tra giả thuyết thống kê, nhằm xác định nội dung của câu trả lời có phù hợp với câu hỏi hay không.

M t: Nh võng m c m c là d u hi nh duy nh t cho t ng i Nh có th c thông qua máy ch p, khi nhìn vào khe ch nh c a nh các y u t Các phép ki m tra gi thi t th c s d lo i b s trùng kh p ng u nhiên.

- M áp trên, khi m c gi c i ta có các thi t b ch p và chi t xu t các y u t n thi t mà t h p c a chúng c cho là có th nh duy nh ng

Mẫu gõ phím (keystroke pattern) là phương pháp theo dõi và ghi nhận thời gian cũng như khoảng cách giữa các lần gõ phím Kỹ thuật này có thể được sử dụng để xác thực danh tính người dùng thông qua mẫu gõ phím độc đáo của họ.

Xác minh thông qua việc nhận diện biometrics là yếu tố quan trọng trong việc xác thực danh tính Chúng giúp nhân viên ngân hàng truy cập vào hệ thống máy tính từ xa, ngay cả khi ở vị trí xa xôi Điều này làm tăng tính an toàn cho hệ thống, giảm thiểu rủi ro từ việc lạm dụng thông tin cá nhân.

Để đảm bảo an toàn cao nhất cho việc xác thực, cần phải kết hợp giữa xác thực bằng mật khẩu và xác thực bằng vân tay Việc này tạo ra một thách thức lớn cho các hệ thống công nghệ thông tin trong việc áp dụng các phương pháp xác thực đa dạng Một số hệ thống dựa trên Unix cho phép sử dụng các mô-đun xác thực có thể cắm vào (pluggable authentication modules - PAM).

Câu 2: chip chip giây thì giá thành là 1

3.1 L I PH N M M dòng code click vào , download trung k

SQL injection

SQL injection mang hacker chèn web inject các mã SQLquery/command vào input login username và password, remote execution dump data và SQL server

1 CWE-89 trong duy trì trúc truy SQL (còn là SQL injection)"

- Server Page: ASP, JSP, ASP.NET, PHP

OS Command Injection

Buffer Overflow

CWE 193 Off by One Error

CWE 466 Return of Pointer Value Outside of Expected Range

Uncontrolled Format String

Integer Overflow

Zero-Day Exploits

Các hacker virus, worm,trojan này, có "0 ngày" mà cái tên "zero-day"

QUÁ TRÌNH KHAI THÁC

anti-virus, anti-malware virus, malware

CÔNG C B O M T

Nmap

Nmap là công cụ quét mạng miễn phí, hỗ trợ nhiều hệ điều hành và cho phép quét nhanh chóng, hiệu quả Nó cung cấp nhiều phương thức quét khác nhau, là công cụ bảo mật được phát triển chủ yếu cho hệ điều hành *nix, phù hợp với nhiều nền tảng và hỗ trợ phát triển giao diện.

Nmap là công cụ mã nguồn mở miễn phí dùng để quét mạng và kiểm tra nhiều hệ thống Nó rất hữu ích trong việc giám sát các host hoặc dịch vụ và cập nhật thời gian thực Nmap sử dụng gói tin để quét các host trên một mạng lưới, với khả năng áp dụng các bộ lọc gói tin.

Hình 4.1: Công c Nmap s d ng trên Windows

Nessus

u Nessus là m t d án mã ngu n m xu t b i Renaud Dera vào n c a các thành ph c công b công khai T tháng 10

Nessus 5.0, phát hành vào tháng 12 năm 2012, là một công cụ quét bảo mật mạnh mẽ hỗ trợ nhiều hệ điều hành khác nhau, bao gồm UNIX, Linux, Mac OS X và Windows Phiên bản hiện tại là 6.6.2, cung cấp giao diện người dùng thân thiện và khả năng truy cập trên nhiều nền tảng.

Fuzzing

Fuzzing là m t k thu t ki m th h ng ho c bán t ng liên quan n vi c cung c u vào không h p l , b t ng ho c ng u nhiên vào m trình máy tính

Fuzzing là một kỹ thuật quan trọng trong lĩnh vực bảo mật, được thực hiện tại Wisconsin Phương pháp này khám phá lỗ hổng trong các hệ thống như UNIX, Windows và Mac bằng cách gửi dữ liệu không hợp lệ, bất ngờ và ngẫu nhiên vào các hệ thống khác nhau Mục tiêu của fuzzing là phát hiện các hành vi bất thường và lỗi của hệ thống, bao gồm treo hệ thống, không khởi động mã và rò rỉ bảo mật.

OpenVas

OpenVAS (Hệ thống quét bảo mật mở) là một công cụ quét bảo mật mạng miễn phí, được phát triển dưới giấy phép GNU General Public License (GNU GPL) Nó bao gồm nhiều thành phần chính, có sẵn thông qua một số gói Linux, giúp người dùng kiểm tra và bảo vệ hệ thống mạng của mình.

Mặc dù máy quét của OpenVAS không hoạt động trực tiếp trên thiết bị Windows, nó vẫn cung cấp hỗ trợ cho nhiều máy khác trên nền tảng này OpenVAS không phải là máy quét nhanh nhất, nhưng nó là một công cụ bảo mật thông tin mạnh mẽ mà bạn có thể tìm thấy miễn phí.

Nó quét hàng ngàn lệnh, hỗ trợ các nhiệm vụ và ngữ thời, đồng thời lên lịch quét Cần chú ý và tránh sai sót trong việc quản lý vị trí những kết quả quét Tuy nhiên, yêu cầu sử dụng Linux ít nhất cho thành phần chính.

Hình 4.4: Công c OpenVAS trong backtrack

MBSA

Microsoft Baseline Security Analyser (MBSA) là công cụ quét bảo mật cho các máy tính Windows, giúp phát hiện các gói dịch vụ thiếu sót, cấu hình bảo mật không đúng và các lỗ hổng bảo mật phổ biến Phiên bản 2.3 hỗ trợ các hệ điều hành như Windows 8.1, Windows 8 và Windows Server 2012 R2, đồng thời tương thích với các phiên bản cũ hơn như Windows XP.

Mặc dù miễn phí và thân thiện với người dùng, MBSA vẫn có những thiếu sót trong việc quét những thiết lập Windows nâng cao, các bảo kiện, phần mềm không phải của Microsoft, và những lỗ hổng mà công cụ này không phát hiện được Điều này giúp người dùng tìm kiếm và giảm thiểu rủi ro bảo mật chung.

SecureCheq

SecureCheq thực hiện trên nhiều máy quét nội bộ bàn Windows và các máy chính việc thiệt lập Windows nâng cao khác nhau, không phụ thuộc vào các chuẩn CIS, ISO hay COBIT Nó tập trung vào các cấu hình phổ biến liên quan tới thực hành công, bảo vệ dữ liệu, bảo mật giao tiếp và quản lý tài khoản người dùng cũng như kiểm soát log.

SecureCheq là một công cụ đơn giản giúp quét các máy tính cá nhân Sau khi quét, bạn sẽ thấy danh sách tất cả các thiết bị được kiểm tra cùng với kết quả đúng và sai.

Mặc dù SecureCheq có khả năng quét các thiết lập cấu hình nâng cao, nhưng nó vẫn thiếu một số loại hình và các mã độc trên mạng internet Tuy nhiên, nó bổ sung MBSA tốt, quét các mảnh và sau đó SecureCheq cung cấp các loại hình nâng cao.

4.1.7 Security Ad ntegrated Network (SAINT) c bi t ph n m Scan các l h ng b o m t c ch y trên n n UNIX s d ng mi n phí và các h u hành mã ngu n m m i v h tr t nhà phát tri n.

Secunia PSI

PSI là một công cụ hữu ích, giúp theo dõi và báo cáo tất cả các ứng dụng đang chạy trên máy tính Nó cho phép người dùng tải về các bản vá lỗi và cập nhật miễn phí trên Internet, đồng thời tương thích với Windows XP và Windows 7.

Retina

Máy quét là thiết bị giúp phát hiện các lỗ hổng và phần mềm độc hại trong hệ thống máy tính thông qua các máy chủ và các cổng vào hệ thống Thiết bị này cho phép bạn quét toàn bộ hệ thống và phát hiện ra các lỗ hổng.

Phần mềm Retina Network Security Scanner cung cấp báo cáo chi tiết về các lỗ hổng trên các phần mềm, giúp người quản lý hiểu rõ hơn về mức độ rủi ro mà hệ thống của họ đang phải đối mặt Công cụ này cho phép tạo ra báo cáo về những gì được phát hiện trong quá trình quét lỗ hổng bảo mật, với khả năng sắp xếp theo tên, mức độ rủi ro, hoặc mã mức nghiêm trọng Sau khi báo cáo được tạo ra, người dùng có thể dễ dàng chuyển đổi nó sang định dạng HTML hoặc Word.

QualysGuard

Công cụ QualysGuard là một giải pháp quét và kiểm tra an toàn liên tục cho hệ thống Nó kiểm tra các plugin để bảo mật, phát hiện lỗ hổng và cung cấp thông tin về tính an toàn của website Công cụ này giúp kiểm soát và thông báo cho chủ sở hữu về các vấn đề bảo mật của trang web, đồng thời hỗ trợ trên nền tảng Windows.

CÔN

(Reverse engineering - RE) cùn chính là

4.2.2.1 ng d ng d n v an ninh chính

4.2.2.2 D c trong phát tri n ph n m m gi

Portable Executable (PE) (x86, x64, ARM, etc)

Windows CE PE (ARM, SH-3, SH-4, MIPS)

Mach-O for OS X and iOS (x86, x64, ARM and PPC)

MOS Technology Hex Object File

Common Object File Format (COFF)

Executable and Linkable Format (ELF)

PEF (Mac OS or Be OS executable)

Sony Playstation PSX executable files, object (psyq) files library (psyq) files

(Debugger): tructures, và Variable Sized Structures có kích

IDA Pro User Interface Main windows

IDA Pro User Interface View B

IDA Pro User Interface Stack of Main

IDA Pro User Interface - String Window

IDA Pro User Interface - Search

IDA Pro User Interface - Wingraph32

IDA Pro User Interface - Library Function

IDA Pro User Interface - Full screen

Register window: Các thanh ghi và trong quá trình debug

Click vào nút W là Windows tack

Step into (F7): Debug vào trong các hàm

Step over (F8): Debug bên ngoài các hàm

Execute to user code (Alt-

Trace into ( Ctrl F11) và Trace over ( Ctrl

Ghidra là một framework mã nguồn mở được phát triển và duy trì bởi Cơ quan An ninh Quốc gia (NSA) Khung này bao gồm nhiều công cụ phân tích phần mềm mạnh mẽ, hỗ trợ phân tích mã trên nhiều nền tảng khác nhau như Windows, macOS và Linux Các khả năng tháo gỡ, lắp ráp, dịch, và viết kịch bản, cùng với việc hỗ trợ nhiều ngôn ngữ lập trình, giúp người dùng dễ dàng tùy chỉnh và mở rộng Ghidra cho phép phát triển các thành phần và tích hợp linh hoạt, hỗ trợ các nhà phân tích an ninh mạng trong việc nghiên cứu và phát hiện các lỗ hổng tiềm ẩn trong hệ thống.

4 h u giao di ti n hành m t cu c u tra b o m t d dàng nh t có th , gi m thi s ph c t p và giúp ti t ki m th i gian hi u qu hoàn tác/làm l i (undo/redo) chính là tính t c i dùng ki m tra các lý thuy t v ch c phân tích m t cách linh ho ng không ho t nh, b n có th d dàng quay l

Ghidra, một công cụ phân tích mã nguồn mở miễn phí, đã có tác động lớn đến an ninh mạng và góp phần quan trọng vào sự phát triển của các hệ thống phòng thủ không gian mạng Nhiều ý kiến cho rằng việc phát hành Ghidra sẽ giúp tin tặc tìm ra cách chống lại NSA Tuy nhiên, Dave Aitel, một nhà nghiên cứu an ninh từng làm việc cho NSA, cho biết việc phát hành Ghidra không gây bất lợi nào cho cơ quan này.

4.3.3.1 ng l a có tr ng thái (Stateful firewall)

4.3.3.2 T ng l a th h ti p theo (Next generation firewalls - NGFW) tích sâu các gói (Deep Packet Inspection -

4.3.3.3 ng l a d a trên proxy (Proxy-based firewall)

4.3.3.4 T ng l a ng d ng web (Web application firewall - WAF)

4.3.4.1 Ki m tra tr ng thái

4.3.4.3 H th ng phòng ch ng xâm nh p(Intrusion Prevention

4.3.4.4 Phân tích sâu các gói (DPI)

B O V H TH NG T P TIN

Malware

Virus

Worms

Trojan

Rootkit

Spyware

p, thu th c phép t i dùng Có th c th c hi i các c u hình, và th c thi thông qua các s c i dùng

- ng c i dùng, thu th p thông tin

- Adware: Thu th p thông tin, qu

- Tracking cookies: Thu th p các cookie c i dùng b t h p pháp

- Click fraud: Các script t ng khi ki m l i nhu n.

Programmatic

c t o ra ho ng d ng code ho c public

- Backdoor: Code thi t k duy trì k t n i và vô hi u quá s phát hi n c a h th ng

- c thi t k th c thi t ng sau m t kho ng th i gian ho c sau m t s y u t ng

6.2.1 Khái ni m nên quen thu c v i dùng và các doanh nghi p vì kh o v h tránh các r i ro t a virus, worm AV s th c hi n b o v máy tính b y trên tìm ki c h i AV cho phép nhi u l a ch n trong vi c quét d li u và c p nh t các m c h c nh ng r i ro do virus gây nên M t s ho ng c

Phân tích dữ liệu trên các mạng có sự nhấn mạnh vào các mối quan hệ giữa các thành phần Ví dụ, một số virus đầu tiên thực hiện việc lây nhiễm dữ liệu lên tới hàng triệu máy chủ và đã phát hiện ra.

Công nghệ AV hiện nay không thể phát hiện virus mới thông qua các phương pháp truyền thống Để kiểm tra các thành phần có khả năng chứa virus, nhiều luật đã được áp dụng trong các nhà sản xuất Mỗi nhà sản xuất AV đều có các luật và dữ liệu riêng, và việc công bố các luật này giúp hiểu rõ hơn về khả năng phát hiện của giải pháp Nếu AV không phát hiện ra mã độc trong quá trình quét, điều này có thể do mã độc không có hành vi đáng ngờ Ngày nay, việc quét mã độc được cải tiến để so sánh với các dữ liệu virus đã biết, cho phép phát hiện mã độc hiệu quả hơn Khi chạy trên các sandbox, AV sẽ phân tích hành vi và cảnh báo nếu có dấu hiệu nghi ngờ Để AV hoạt động hiệu quả, cần phải tuân thủ hai điều kiện nhất định.

- Sau khi gi c thì AV không phát hi n code có hành vi gi ng v c

6.2.2.1 Binding và splitting i m t s u trong vi n c c có th ghép 2 file.exe v i nhau thành m t file Khi m t c th c thi thì file còn l c th hi i dùng có th phân bi c VD: m c sáp nh p vào m trình nghe nh c g i dùng ng, t cùng lúc v i dùng không nh n ra c a binder là k t h p các file nh phân c a hai file th c thi thành m t N u l a ch n file không ch ti n hành binder thì m t s u tiên c a file m c t o s có ch a các byte c a c hai file, do v y s t o ra file m n ra.

Các mã nh phân c c s ph n cu i c s phát hi n c ng thì còn ph thu c vào AV và binder

Spliter là công cụ chia các file exe thành các phần khác nhau, giúp việc thực hiện nội dung giữa chúng trở nên dễ dàng hơn Khi tách rời các thành phần mà không phát hiện, người dùng cần sử dụng spliter để kết nối lại các file với nhau Do đó, nguyên nhân khi phân chia các file không được phát hiện là do sự cần thiết phải sử dụng công cụ này.

Chuyển đổi các file mã script là một cách sử dụng khá phổ biến Một trong những định dạng thông dụng là vbs, vì nó có thể thực thi trên hệ điều hành Windows mà không cần cài đặt thêm Với những người có kiến thức lập trình, việc chuyển đổi này trở nên hợp lý khi chỉ cần sử dụng file vbs, và quá trình này thường được cảnh báo bởi phần mềm diệt virus Các định dạng khác như src, swf không thể chuyển đổi một cách trực tiếp sang file vbs, do đó, việc phát hiện mã độc từ các file này trở nên khó khăn hơn.

6.2.2.3 Code Obfuscation/Morhing t trong nh c s d ng nhi u nh t Tuy nhiên ph thu c vào ngôn ng s d ng trong quá trình l c i các thành ph n trong code c a nó và làm cho c, phân tích khó hi u và nh c M t s cách th

Việc tái mã hóa shellcode là một phần quan trọng trong việc khai thác lỗ hổng bảo mật, giúp ẩn danh các kỹ thuật tấn công Trong quá trình này, shellcode cần được sử dụng một cách khéo léo Với các giải pháp hiện nay từ các nhà sản xuất phần mềm diệt virus, việc phát hiện shellcode trở nên khó khăn hơn Tuy nhiên, khi kết hợp với việc chèn thêm các ghi chú lớn vào shellcode, nó có thể làm giảm khả năng bị nhận diện, khiến cho quá trình tấn công trở nên tinh vi hơn Các hàm được thêm vào có thể tạo ra những dòng mã đáng ngờ, góp phần vào sự phức tạp của việc phát hiện.

Cắt ngắn vòng lặp: Việc sử dụng vòng lặp trong ngôn ngữ lập trình có thể dẫn đến việc antivirus dễ dàng nhận diện mã độc Sử dụng các vòng lặp này sẽ tiêu tốn nhiều tài nguyên CPU Do đó, việc giảm thiểu vòng lặp là cần thiết để tối ưu hóa hiệu suất của CPU.

Việc bảo mật an toàn cho môi trường khởi động và các kết nối công luôn là nhiệm vụ quan trọng đối với những quản trị viên trong Linux Bởi vì Linux là hệ thống mã nguồn mở, việc bảo vệ hệ thống khỏi các mối đe dọa là rất cần thiết.

Vi c làm này giúp b c r i ro b p quy n lý h th ng Có nhi o m ng h t m t kh u m nh cho root, và có k ho i m t kh nh k

Gi i h n nh ng tài kho c s d ng l nh su

Ngo i tr giao ti p console, còn l i b p tr c ti p v i root t xa

6.3.2 C p nh t Kernel Linux và ph n m m

Sau khi p vào h th ng l u tiên, công vi c c n làm ngay l p t c là c p nh t ph n m m Ph thu c vào phiên b n Linux mà b d ng mà câu l nh c p nh t ph n m m có th khác nhau:

# apt-get update && time sudo apt-get dist-upgrade

Cập nhật các bản vá bảo mật là một phần quan trọng trong việc bảo mật máy chủ Linux Đối với hệ điều hành Redhat/CentOS, bạn có thể cấu hình để nhận thông báo cập nhật gói yum qua email Trong khi đó, với Debian/Ubuntu, bạn có thể sử dụng cron job để nhận thông báo bảo mật.

6.3.3 Xóa các tài kho n và nhóm không c n thi t

Khi quản lý hệ thống Linux, nếu không có nhu cầu sử dụng một số tài khoản, bạn nên xóa những tài khoản này khỏi hệ thống Điều quan trọng là bạn cần xác định rõ những tài khoản và nhóm nào không còn cần thiết để đảm bảo hệ thống hoạt động ổn định sau khi xóa.

Th c hi n vi c xoá b account v i l nh:

Ví d , n u không có nhu c u v in n trên h th ng, có th

# userdel lp y, có th th c hi n vi c xoá b các nhóm không c n thi t v i l nh

6.3.4 Xóa nh ng gói d ch v không c n thi t n và nhóm phía trên, m t s d ch v trong h th ng

Để bảo vệ hệ thống Linux của bạn, hãy sử dụng trình quản lý gói như yum hoặc apt-get để kiểm tra và liệt kê tất cả các gói phần mềm đã cài đặt Đảm bảo xóa bỏ tất cả các gói không mong muốn để tăng cường tính an toàn cho hệ thống.

(giao di h ng l có l p b o v t t nh t cho h th ng Linux c a mình t:

# sudo apt-get install gufw

Sau khi cài t xong b n m nó b ng câu l nh

Gufw i v ng l a l c b t m ng h p b n dùng phiên b c u hình b b ng b ng câu l nh:

Ph n m m c a bên th ba ph c / b o m t h th ng Linux c a b n b ng cách lo i b c quy trình t ng b t, m c dù chúng không b t bu c

B n có th c ch d ng trong h th ng b ng câu l nh:

# sudo apt-get install htop

6.3.7 Mã hóa d li u khi s d ng các d ch v truy n tin

Tránh sử dụng các dịch vụ truyền tải FTP (anonymous) vì những dịch vụ này hoàn toàn không mã hóa mật khẩu khi truyền qua mạng Bất kỳ mật khẩu nào bị lộ đều có thể bị khai thác dễ dàng Giải pháp an toàn cho vấn đề này là sử dụng OpenSSH, SFTP, hoặc FTPS (FTP over SSL), những phương thức này thêm mã hóa SSL hoặc TLS vào FTP, giúp bảo vệ thông tin trên hệ thống Linux.

Hãy m file c u hình chính c a SSH và s d ng nh gi i h n p c i dùng

# vi /etc/ssh/sshd_config

S d ng giao th c SSH version 2

Hệ thống bảo mật nâng cao (SELinux) là một phương pháp bảo mật cung cấp vùng nhân Nó giúp bảo vệ hệ thống khỏi các loại tấn công Điều này đặc biệt quan trọng khi bạn muốn biết nếu hệ thống của bạn kết nối với internet và có quyền truy cập công khai.

SELinux có ba ch u khi n sau:

Enforcing: Ch thông ng, kích ho nó toàn quy n ho ng t do

Permissive: Trong ch này, SELinux s ph i g i nh nh c m i ho ng Ch này vô cùng h ng h p chu lý n u có s c x y ra

Secure Boot U

Early Antimalware (ELAM)

6.4.3 Windows Hello (ki m tra tính xác th c)

User Account Control

Bitlocker

H P NG

ghi chú

- add eax, ebx; thêm ebx vào eax

7.9.6 Cú pháp c a câu l nh h p ng theo

7.9.8 Biên d ch và liên k t m p ng trong

THANH GHI

-bit và 6 thanh ghi 16- trúc IA-32 Các

- phép toán khác Các thanh ghi 32-

16 bit: AX, BX, CX và DX

7.12 HÀM G I H TH NG TRONG H P NG

%eax Name %ebx %ecx %edx %esx %edi

2 sys_fork struct pt_regs - - - -

3 sys_read unsigned int char * size_t - -

4 sys_write unsigned int const char * size_t - -

5 sys_open const char * int int - -

7.13.4 a ch bù tr tr c ti p

7.13.5 a ch b nh gián ti p nh ghi EBX

7.14.1 P hân b khô cho d li c kh i t o

DB Define Byte allocates 1 byte

DW Define Word allocates 2 bytes

DD Define Doubleword allocates 4 bytes

DQ Define Quadword allocates 8 bytes

DT Define Ten Bytes allocates 10 bytes

INC có cú pháp sau:

DEC có cú pháp sau:

3 Khi divisor là doubleword: thanh ghi BL 8 bit

Operand1: 0101 Operand2: 0011 - After XOR -> Operand1: 0110 XORing

CMP DX, 00;So sánh giá tr DX v i 0

CMP EDX,10 ;So sánh xem b

JLE LP1 ;N u nó nh c b ng 10, thì hãy chuy n sang LP1

ADD BX, AX ;ADD AX v i BX

SHL CX,1; d ch chuy u này l tr ;CX

JG/JNLE nhau OF, SF, ZF

JLE/JNG OF, SF, ZF

7.18.4 Ví d section text global _start ;ph s d ng gcc

_start: ;g i v m vào trình liên k t mov ecx,[num1] cmp ecx,[num2] jg check_third_num mov ecx,[num2] check_third_num: cmp ecx,[num3] jg _exit mov ecx,[num3]

The assembly code snippet is designed to find and display the largest digit among three numbers It begins by moving the largest digit into a variable, followed by preparing a message to be printed The code utilizes system calls to write the message and the largest digit to standard output The message "The largest digit is: " is defined in the data section, and the numbers to be compared are stored in the code Finally, the program concludes by exiting cleanly.

LOOP label nhãn mov ECX,10 l1:

7.19.1 Ví d section text global _start ;ph s d ng gcc

The provided assembly code initializes a loop that outputs the numbers from 1 to 10 It uses the `mov` instruction to set up registers and manage data The loop writes each number to a specified memory location and prints it to the standard output using system calls After completing the loop, the program exits cleanly The code also reserves space for a single byte in the `.bss` section to store the number being processed.

7.20 S TRONG H P NG section text global _start ;ph s d ng gcc

The provided assembly code performs a simple addition of two numbers, 3 and 4, and outputs the result It initializes the values in registers, adds them together, and stores the sum in a designated memory location The program then prepares to write the output message, "The sum is:", followed by the calculated sum, to the standard output Finally, it exits the program gracefully.

- AAD section text global _start ;ph s d ng gcc

The provided assembly code performs a simple operation of subtracting the ASCII value of '3' from '9', storing the result, and then outputting the message "The Result is:" followed by the computed result to the standard output It utilizes system calls for writing to the console and exiting the program, with defined data and uninitialized sections for message storage and result handling.

7.20.3 Ví d section text global _start ;ph s d ng gcc

The provided assembly code performs the addition of two numbers, 12345 and 23456, and outputs the result It initializes registers for processing, loops through each digit, and uses the `adc` instruction to handle the addition with carry The result is stored in a designated memory location, and the program then writes the output to the standard output using the `sys_write` system call Finally, it exits cleanly with the `sys_exit` system call The message displayed before the sum is "The Sum is:".

7.21 CHU I TRONG H P NG chúng tôi Các

- msg db 'Hello, world!',0xa; n chu i len equ $ - msg ; dài chu i msg $-msg msg db 'Hello, world!',0xa; n chu i len equ 13; dài chu i message DB 'I am loving it!',0

MOVS ES:DI, DS:SI MOVSB MOVSW MOVSD

LODS AX, DS:SI LODSB LODSW LODSD

STOS ES:DI, AX STOSB STOSW STOSD

CMPS DS:SI, ES: DI CMPSB CMPSW CMPSD

SCAS ES:DI, AX SCASB SCASW SCASD

The article discusses a simple assembly program that demonstrates the use of the GCC compiler It begins by declaring the main entry point for the linker and proceeds to copy a string "Hello, world!" from one section to another The program sets up the necessary registers to write the message to standard output using a system call, followed by an exit system call to terminate the program The data section contains the original string, while the BSS section reserves space for the destination string.

7.21.3 L nh LODS section.text global main ;must be declared for using gcc main: ;tell linker entry point mov ecx, len mov esi, s1 mov edi, s2 loop_here: lodsb add al, 02 stosb loop loop_here cld rep movsb mov edx,20 ;message length mov ecx,s2 ;message to write mov ebx,1 ;file descriptor (stdout) mov eax,4 ;system call number (sys_write) int 0x80 ;call kernel mov eax,1 ;system call number (sys_exit) int 0x80 ;call kernel section.data s1 db 'password', 0 ;source len equ $-s1 section.bss s2 resb 10 ;destination rcuuyqtf

The article discusses a simple assembly program that demonstrates the use of the GCC compiler It begins by declaring the main entry point for the linker and proceeds to manipulate strings in memory The program converts the string "HELLO, WORLD" to lowercase and stores it in a designated buffer It then prepares to write the modified message to standard output using a system call Finally, the program exits cleanly after displaying the message.

7.21.5 L nh CMPS section.text global main ;must be declared for using gcc main: ;tell linker entry point mov esi, s1 mov edi, s2 mov ecx, lens2 cld repe cmpsb jecxz equal ;jump when ecx is zero

The provided assembly code compares two strings and outputs a message based on their equality If the strings are not equal, it displays "Strings are not equal!" using system calls Conversely, if the strings are equal, it outputs "Strings are equal!" before exiting the program The code defines two strings, "Hello, world!" and "Hello, there!", along with their respective lengths and messages for both equality cases.

7.21.6 L nh SCAS section.text global main ;must be declared for using gcc main: ;tell linker entry point mov ecx,len mov edi,my_string mov al, 'e' cld repne scasb je found ; when found

The provided assembly code checks for a condition and executes different actions based on the result If the condition is not met, it outputs "not found!" to the console If the condition is satisfied, it displays "found!" instead The code utilizes system calls to write messages and terminates gracefully The data section defines the strings used in the output, including "hello world," "found!" and "not found!" along with their respective lengths.

INVENTORY TIMES 8 DW 0 section text global _start ;ph c khai báo cho trình liên k t (ld)

Đoạn mã trên thực hiện phép tính tổng các giá trị trong mảng Đầu tiên, nó khởi tạo thanh ghi EAX với giá trị 3, đại diện cho số lượng phần tử cần tính tổng Thanh ghi EBX được khởi tạo bằng 0 để lưu trữ kết quả tổng Thanh ghi ECX được sử dụng để trỏ đến phần tử đầu tiên của mảng Vòng lặp "top" sẽ cộng giá trị tại địa chỉ ECX vào EBX, sau đó di chuyển đến phần tử tiếp theo trong mảng Khi EAX giảm xuống 0, vòng lặp sẽ dừng lại Kết quả tổng được lưu vào biến "sum" Cuối cùng, chương trình hiển thị kết quả trên màn hình và thoát Mảng chứa các giá trị 2, 4 và 3, và tổng của chúng được lưu trữ trong biến "sum".

7.23.1 Cú pháp proc_name: procedure body

7.23.2 Ví d sum section text global _start ;ph s d ng gcc

The provided assembly code performs a simple addition of two numbers, 4 and 5 It initializes the values in registers, calls a function to compute the sum, and stores the result The program then prepares to output a message indicating the sum, followed by the result itself, using system calls to write to standard output Finally, it exits the program gracefully The message displayed is "The sum is:", followed by a newline character.

7.23.3 C u trúc D li u X p ch ng ng

Ví d section text global _start ;ph s d ng gcc

The provided assembly code snippet demonstrates a simple program that displays a character and exits gracefully It initializes a loop to print a character stored in the variable `achar`, which is set to '0' The program uses system calls to write the character to the standard output and checks for a specific condition to continue looping Upon completion, it invokes the exit system call to terminate the program.

Fact(n)= n * fact (n-1)for n >0 section text global _start ;ph s d ng gcc

Ngày đăng: 28/07/2023, 17:57

HÌNH ẢNH LIÊN QUAN

Hình 4.1: Công c  Nmap s  d ng trên Windows - An toàn hệ điều hành và hợp ngữ
Hình 4.1 Công c Nmap s d ng trên Windows (Trang 45)
Hình 4.2: Công c  Nessus - An toàn hệ điều hành và hợp ngữ
Hình 4.2 Công c Nessus (Trang 46)
Hình 4.3: C ng c  Fuzzing - An toàn hệ điều hành và hợp ngữ
Hình 4.3 C ng c Fuzzing (Trang 47)
Hình 4.4: Công c  OpenVAS trong backtrack - An toàn hệ điều hành và hợp ngữ
Hình 4.4 Công c OpenVAS trong backtrack (Trang 48)
Hình 5.1: Mô ph ng truy xu t tu n t  trên truy xu t tr c ti p - An toàn hệ điều hành và hợp ngữ
Hình 5.1 Mô ph ng truy xu t tu n t trên truy xu t tr c ti p (Trang 87)
Hình 5.2: Thí d  v  ch  m c và các t p tin liên quan - An toàn hệ điều hành và hợp ngữ
Hình 5.2 Thí d v ch m c và các t p tin liên quan (Trang 88)
Hình 5.3: T  ch c h  th ng t n hình - An toàn hệ điều hành và hợp ngữ
Hình 5.3 T ch c h th ng t n hình (Trang 89)
Hình 5.5: T c hai c p - An toàn hệ điều hành và hợp ngữ
Hình 5.5 T c hai c p (Trang 91)
Hình 5.6: C c d ng cây - An toàn hệ điều hành và hợp ngữ
Hình 5.6 C c d ng cây (Trang 94)
Hình 5.7: C  th  không ch a chu trình - An toàn hệ điều hành và hợp ngữ
Hình 5.7 C th không ch a chu trình (Trang 95)
Hình 5.8: T  th  t ng quát - An toàn hệ điều hành và hợp ngữ
Hình 5.8 T th t ng quát (Trang 98)
Hình 5.9: H  th ng t n t c g n - An toàn hệ điều hành và hợp ngữ
Hình 5.9 H th ng t n t c g n (Trang 100)
Hình 5.10:  m g n vào - An toàn hệ điều hành và hợp ngữ
Hình 5.10 m g n vào (Trang 101)
Hình 6 trên Windows Hello - An toàn hệ điều hành và hợp ngữ
Hình 6 trên Windows Hello (Trang 121)

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w