ATTT_2
I. Bảo mật
1. Apache Security
Apache là một phần mềm Web server được cung cấp bởi tập đoàn Apache Group. Đây là một phần mềm Web server được hỗ trợ để chạy chủ yếu trên UNIX và LINUX và rất phổ biến bởi tính chặt chẽ, uyển chuyển và linh hoạt. Hiện nay Apache là một Web server đang quản lý hơn 50% số Website đang có trên thế giới.
- Hỗ trợ đầy đủ những giao thức HTTP trước đây như HTTP/1.1
- Có thể cấu hình và mở rộng với những module của công ty thứ ba.
- Cung cấp source code đầy đủ với license không hạn chế.
- Chạy trên nhiều hệ điều hành như Windows NT/9x, Netware 5.x, OS/2 và trên hầu hết các hệ điều hành Unix.
Bảo mật Webserver
- hệ điều hành phải được kiện toàn càng chặt chẽ càng tốt, bao gồm việc phòng bị cho những tấn công từ bên ngoài lẫn bên trong;
- server không được cung cấp bất cứ dịch vụ nào khác ngoại trừ HTTP: (80/TCP);
- truy cập từ xa đến server phải được khiển tác bởi tường lửa, thiết bị này chặn trọn bộ những tiếp nối cho lối ra và cho phép những tiếp nối cho lối vào đến cổng 80/TCP của web server mà thôi;
- web server là dịch vụ duy nhất hiện hữu trên hệ thống;
- chỉ có những modules nào tuyệt đối cần thiết mới được cho phép hoạt động;
- các trang web dùng cho công tác chẩn xét và tự động hoá mục lục phải được tắt bỏ;
- server nên giảm thiểu tối đa vấn đề tiết lộ những thông tin của chính server (mật tính qua ẩn tính)
- web server phải chạy bằng UID/GID riêng biệt (tín chỉ cá nhân, tín chỉ nhóm), không được dùng bất cứ process nào khác của hệ thống;
- các process của webserver phải có giới hạn nhất định đến hệ thư mục (chrooting); và,
- không có bất cứ chương trình dạng shell nào hiện hữu trong môi trường chrooted (/bin/sh, /bin/csh, v..v..).
2. SSL
SSL (Secure Sockets Layer) là giao thức được biết đến nhiều nhất về khả năng bảo mật và độ tin cậy trong giao dịch khách - chủ (client-server) trên mạng internet. SSL sắp xếp các thuật toán mã hoá và khoá giữa 2 lần gửi - nhận của một giao dịch. Sau đó thiết lập một đường dẫn ảo mã hoá thông qua các giao thức khác (như HTTP). SSL cũng có thể thẩm định cả hai chiều của giao dịch thông qua việc dùng các “chứng chỉ” (certificate).
SSL được coi như một lớp (bảo mật) trung gian giữa lớp vận chuyển (Transport Layer) và lớp ứng dụng (Application Layer).
SSL được xếp lớp lên trên một dịch vụ vận chuyển định hướng nối kết và đáng tin cậy (chẳng hạn như được cung cấp bởi TCP). Do đó, SSL có thể được dùng trong hầu hết mọi hệ điều hành hỗ trợ TCP/IP mà không cần phải chỉnh sửa nhân của hệ thống hoặc ngăn xếp TCP/IP.
Các đặc tính cơ bản
- Các bên giao tiếp (nghĩa là client và server) có thể xác thực nhau bằng cách sử dụng mật mã khóa chung.
- Sự bí mật của lưu lượng dữ liệu được bảo vệ vì nối kết được mã hóa trong suốt sau khi một sự thiết lập quan hệ ban đầu và sự thương lượng khóa session đã xảy ra.
- Tính xác thực và tính toàn vẹn của lưu lượng dữ liệu cũng được bảo vệ vì các thông báo được xác thực và được kiểm tra tính toàn vẹn một cách trong suốt bằng cách sử dụng MAC.
3. .Net
4. PHP
PHP , một ngôn ngữ lập trình mã nguồn mở , đáp ứng cho sự phát triển web và sử dụng song song với mã HTML. Ngôn ngữ lập trình PHP cách thức viết gẫn gũi với C và PERL , tuy nhiên PHP viết dễ dàng và không cầu kỳ như C hoặc PERL với cách đặt biến dễ chịu.
PHP có thể chạy trên nhiều hệ điều hành như Linux , Unix , Windows , MAC OSX , OpenBSD... , nhưng phổ biến rộng rãi hiện nay là Linux . Tích hợp với các dạng server như Apache , IIS . Và PHP hổ trợ được nhiều loại cơ sở dữ liệu như : Mysql, Oracle (OCI7 and OCI8) MySQL , ODBC ... và những loại khác . Hiện nay Mysql thì phổ biến nhất .
5. Ipsec
IPSec là từ viết tắt của Internet Protocol Security. Ipsec là công nghệ sử dụng kỹ thuật mật mã theo tiêu chuẩn IFTF cung cấp:
- Tính bảo mật ( confidentiality): các gói tin được mã hóa trước khi truyền đi trên mạng
- Kiểm tra tính toàn vẹn gói tin (intergrity): kiểm tra gói tin không bị thay đổi khi đi qua một hệ thống mạng
- Chứng thứng mỗi gói tin( authentication): đảm bảo rằng các gói tin được gửi đi từ người gửi đích thực
Ipsec sử dụng hai giao thức để bảo vệ gói tin là AH (Authentication Header) và ESP (Encapsulated Security Payload).
AH: ESP:
+ Không có mã hóa gói tin + Mã hóa gói tin
+ Kiểm tra tính toàn vẹn + Kiểm tra tính toàn vẹn
+ Kiểm tra chứng thực mỗi gói tin + Kiểm tra chứng thực mỗi gói tin
IPSec có thể hoạt động ở hai chế độ:
- Chế độ đường hầm (Tunnel): Tất cả nội dung của gói tin IP sẽ được bọc bởi một gói tin IP khác do vậy để có thể kết nối giữa hai đầu cuối cần phải có hai IPSec gateway kết nối với nhau bởi một tunnel. Chế độ này hỗ trợ dạng kết nối LAN-to-LAN.
- Chế độ chuyển vận (Transport): Ở chế độ này chỉ có phần Payload của gói tin IP là được mã hóa, do vậy có thể tạo một kết nối IPSec từ một trình khách IPSec đến máy chủ chạy IPSec thông qua hạ tầng truyền thông có sẵn. Chế độ này chỉ hỗ trợ dạng kết nối host-to-host.
II. Tính tin cậy
Những đặc điểm của mã hóa đối xứng:
- Quá trình mã hóa thông tin và giải mã thông tin sử dụng cùng một key bí mật.
- Mã hóa đối xứng chuyển đổi dữ liệu gốc –plaintext thành bản mã – ciphertext thông qua sử dụng khóa và thuật toán mã hóa. Ciphertext được chuyển về dạng gốc plaintext thông qua sử dụng thuật toán giải mã (Decryption Algorithm)
- Có hai hình thức tấn công được sử dụng để giải mã được ciphertext đó là: lợi dụng các thuộc tính của thuật toán sử dụng thông kê tần xuât của các ký tự xuất hiện trong bảng mã. Phương thức sử dụng thuật toán vét cạn (Exhausted Algorithm hay Brute-force) để giải mã thông tin.
- Mã hóa đối xứng cổ điển thường được biết đến với hai kỹ thuật thay thế (Substitution) và hoán vị (Tranposition).
- Một kỹ thuật cũng hay được sử dụng đó là dấu mã – Steganography. Ví dụ dấu virus trojan trong các file .exe….
1. DES
DES là thuật toán mã hóa khối: nó xử lý từng khối thông tin của bản rõ có độ dài xác định và biến đổi theo những quá trình phức tạp để trở thành khối thông tin của bản mã có độ dài không thay đổi. Trong trường hợp của DES, độ dài mỗi khối là 64 bit. DES cũng sử dụng khóa để cá biệt hóa quá trình chuyển đổi. Nhờ vậy, chỉ khi biết khóa mới có thể giải mã được văn bản mã. Khóa dùng trong DES có độ dài toàn bộ là 64 bit. Tuy nhiên chỉ có 56 bit thực sự được sử dụng; 8 bit còn lại chỉ dùng cho việc kiểm tra. Vì thế, độ dài thực tế của khóa chỉ là 56 bit.
Vì sao phải chuẩn hóa việc mã hóa dữ liệu?
- Ngay trong thời kỳ đầu mã hoá, người ta thấy dc sự cần thiết phải thống nhất với nhau phương pháp mã hóa
- Điều này càng được thấy rõ hơn trong chiến tranh thế giới thứ II, khi mà những trao đổi thông tin bí mật giữa các quốc gia trở nên phổ biến
- Những năm 1960, máy tính đã được sử dụng trong các doanh nghiệp. Và mã hóa máy tính trở thành phương tiện cho trao đổi thông tin bí mật
- Ngày 15/5/1973 Cục tiêu chuẩn quốc gia Hoa Kỳ(NBS) lên kế hoạch chuẩn hó việc mã hóa dữ liệu
Ý tưởng về DES?
- Năm 1977, NBS đưa ra chuẩn mã hóa dữ liệu – DES
- DES lập tức trở nên phổ biến trong công việc mã hóa
- DES là mật mã khối với: block size = 64 bits
Key size = 56 bits
- DES là dựa trên dự án Tuchman-Meyer – một phiên bản cải tiến của Lucifer cho mục đích thương mại
Những tranh luận về thiết kế của DES?
- DES được đưa ra tranh luận vì nó là một chuẩn công khai.Có 2 khía cạnh là:
- Key size: theo đánh giá 56 bits là hơi nhỏ
- Chi tiết thiết kế của S- Box
Mặc cho những bàn cái khác nhau về tính an toàn của DES. DES vẫn dc sử dụng một cách rộng rãi
2. AES
AES (viết tắt của từ tiếng Anh: Advanced Encryption Standard) là một thuật toán mã hóa khối được chính phủ Hoa kỳ áp dụng làm tiêu chuẩn mã hóa. Giống như tiêu chuẩn tiền nhiệm DES, AES được kỳ vọng áp dụng trên phạm vi thế giới và đã được nghiên cứu rất kỹ lưỡng.
Thuật toán được dựa trên bản thiết kế Square có trước đó của Daemen và Rijmen; còn Square lại được thiết kế dựa trên Shark.
Khác với với DES sử dụng mạng Feistel, Rijndael sử dụng mạng thay thế-hoán vị. AES có thể dễ dàng thực hiện với tốc độ cao bằng phần mềm hoặc phần cứng và không đòi hỏi nhiều bộ nhớ. Do AES là một tiêu chuẩn mã hóa mới, nó đang được triển khai sử dụng đại trà.
AES chỉ làm việc với khối dữ liệu 128 bít và khóa có độ dài 128
AES làm việc với từng khối dữ liệu 4×4 byte (tiếng Anh: state, khối trong Rijndael có thể có thêm cột). Quá trình mã hóa bao gồm 4 bước:
1. AddRoundKey — mỗi byte của khối được kết hợp với khóa con, các khóa con này được tạo ra từ quá trình tạo khóa con Rijndael.
2. SubBytes — đây là phép thế (phi tuyến) trong đó mỗi byte sẽ được thế bằng một byte khác theo bảng tra
3. ShiftRows — đổi chỗ, các hàng trong khối được dịch vòng.
4. MixColumns — quá trình trộn làm việc theo các cột trong khối theo một phép biến đổi tuyến tính.
Tại chu trình cuối thì bước MixColumns được thay thế bằng bước AddRoundKey
III. Tính toàn vẹn
1. SHA
SHA (Secure Hash Algorithm) là năm thuật giải được chấp nhận bởi FPS (Federal Information Processing Standards) dùng để chuyển một đoạn dữ liệu nhất định thành một đoạn dữ liệu có chiều dài không đổi với xác suất khác biệt cao.
Có năm thuật giải SHA là SHA-1 (trả lại kết quả dài 160 bit), SHA-224 (trả lại kết quả dài 224 bit), SHA-256 (trả lại kết quả dài 256 bit), SHA-384 (trả lại kết quả dài 384 bit), và SHA-512 (trả lại kết quả dài 512 bit).
Ý tưởng của các thuật toán hàm băm SHA
Các thuật toán hàm băm gồm 2 bước: tiền xử lý và tính toán giá trị hàm băm
- Bước tiền xử lý bao gồm các thao tác:
- mở rộng thông điệp
- phân tích thông điệp đã mở rộng thành các khối m bit
- khởi tạo giá trị băm ban đầu
- Bước tính toán giá trị băm bao gồm các thao tác:
- làm N lần các công việc sau:
- tạo bảng phân bố thông điệp từ khối thứ i
- dùng message schedule cùng với các hàm, hằng số, các thao tác trên word để tạo ra giá trị băm i
- sử dụng giá trị băm cuối cùng để tạo thông điệp rút gọn
Một số tính chất của SHA512?
Message Size : 0 < l< 2128
Block size : 1024 bits
Message Digest size: 512 bits
Word size: 64 bits
Sử dụng 8 biến trung gian, mỗi biến là một từ 64 bit
Phương Pháp
Mục đích: thêm x bits vào thông điệp để: l+x = N*1024
Phương pháp:
- thêm bit 1 vào cuối message
- thêm k bit 0 vào cuối, với k là số không âm nhỏ nhất: k + l = 896 mod 1024
- gắn vào cuối khối 128 bits là biểu diễn nhị phân của l
Thông điệp sau khi được độn thêm bit để có độ dài 1024, sẽ được phân tích thành các khối 1024 bits. M1M 2M 3M n-1M n
Mỗi khối dc biểu diễn bằng 16 từ 64 bit
2. MD
- Mdx là các thuật toán tính message-digest được phát triển bởi Ronald L. Rivest
- MDx bao gồm MD2, MD4, MD5 được phát triển vào năm 1989,1990 và 1991
- MDx tạo ra message-digest dài 128 bits
- về phương diện lý thuyết MDx chấp nhận input có chiều dài bất kỳ, tuy nhiên thực tế yêu cầu input nên nhỏ hơn 264 bits
MD5
MD5 biến đổi một thông điệp có chiều dài bất kì thành một khối có kích thước cố định 128 bits. Thông điệp đưa vào sẻ được cắt thành các khối 512 bits. Thông điệp được đưa vào bộ đệm để chiều dài của nó sẻ chia hết cho 512. Bộ đệm hoạt động như sau:
- Trước tiên nó sẻ chèn bit 1 vào cuối thông điệp.
- Tiếp đó là hàng loạt bit Zero cho tới khi chiều dài của nó nhỏ hơn bội số của 512 một khoảng 64 bit .
- Phần còn lại sẻ được lấp đầy bởi một số nguyên 64 bit biểu diển chiều dài ban đầu của thông điệp.
Thuật toán chính của MD5 hoạt động trên một bộ 128 bit. Chia nhỏ nó ra thành 4 từ 32 bit, kí hiệu là ,B,C và D. Các giá trị này là các hằng số cố định. Sau đó thuật toán chính sẻ luân phiên hoạt động trên các khối 512 bit. Mỗi khối sẻ phối hợp với một bộ. Quá trình xữ lý một khối thông điệp bao gồm 4 bước tương tự nhau, gọi là vòng (“round”). Mỗi vòng lại gồm 16 quá trình tương tự nhau dựa trên hàm một chiều F, phép cộng module và phép xoay trái…
3.MAC
Bạn đang đọc truyện trên: Truyen247.Pro