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