Hệ thống phát hiện xâm nhập trái phép tên mạng (NIDS) - Pdf 12

Hệ thống phát hiện xâm nhập trái phép trên mạng (NIDS)
MỤC LỤC
MỤC LỤC…………………………………………………………………………1
LỜi NÓI ĐẦU……………………………………………………………………..3
CHƯƠNG 1: TỔNG QUAN VỀ AN NINH MẠNG……………………………...4
1.1 Các mục tiêu cần bảo vệ………………………………………………..…..4
1.2 Các kiểu tấn công mạng……………………………………………………4
1.3 Các phương pháp bảo vệ…………………………………………………...6
CHƯƠNG 2: HỆ THỐNG PHÁT HIỆN XÂM NHẬP TRÁI PHÉP TRÊN MẠNG
(NIDS)……………………………………………………………………………..8
2.1 Xâm nhập (Instrusion)……………………………………………………..8
2.1.1 Cách thức xâm nhập vào hệ thống…………………………………....8
2.1.2 Những lỗ hổng an ninh có thể xâm nhập……………………………..9
2.1.3 Những dấu hiệu xâm nhập thông thường…………………………...12
2.1.4 Một kịch bản xâm nhập điển hình…………………………………..13
2.2 Hệ thống phát hiện xâm nhập IDS (Instrusion Detection System)……….14
2.2.1 Định nghĩa, chức năng và nguyên lý làm việc………………………14
2.2.2 Vị trí…………………………………………………………………17
2.2.3 Phân loại…………………………………………………………….17
2.3 NIDS (Network-based IDS)………………………………………………28
2.3.1 Lí do lựa chọn NIDS………………………………………………...28
2.3.2 Kiến trúc và hoạt động………………………………………………29
2.3.3 Mô hình hệ thống NIDS…………………………………………….31
2.3.4 Triển khai và điều chỉnh hệ thống NIDS……………………………33
2.3.5 Đánh giá một hệ thống NIDS (value of NIDS)……………………..39
2.3.6 Tối ưu hoá giá trị của NIDS…………………………………………40
2.3.7 NIDS & Firewall…………………………………………………….42
2.3.8 Tổng kết……………………………………………………………..43
1
Hệ thống phát hiện xâm nhập trái phép trên mạng (NIDS)
CHƯƠNG 3: THIẾT KẾ HỆ THỐNG NIDS……………………………………44

3
Hệ thống phát hiện xâm nhập trái phép trên mạng (NIDS)
1.1 Các mục tiêu cần bảo vệ
Sự ra đời và phát triển của Internet là một bước ngoặt lớn trong lịch sử nhân
loại. Hệ thống thông tin khổng lồ trên Internet được chia sẻ trên khắp thế giới. Tuy
nhiên, đồng thời với lợi ích to lớn của nó, mạng Internet cùng với các công nghệ
liên quan cũng cho thấy mặt hạn chế tất yếu là tính mất an toàn, dễ bị xâm phạm,
tấn công. Hậu quả của các cuộc tấn công có thể chỉ là những phiền phức nhỏ nhưng
cũng có thể làm suy yếu hoàn toàn hệ thống, các dữ liệu, thông tin quan trọng bị
xóa, sự riêng tư bị xâm phạm,…Do đó, nhiệm vụ của chúng ta là phải tránh tối đa
sự mất an toàn, hay nói một cách khác là phải bảo vệ sự an toàn cho hệ thống, suy
nghĩ của chúng ta phải đi kịp với sự phát triển công nghệ.
Các đối tượng cần đảm bảo an ninh bao gồm:
• Dữ liệu:
Dữ liệu truyền đi trên mạng phải đáp ứng được các yêu cầu về:
- Tính mật (Confidentiality): Đảm bảo thông tin không thể bị truy cập trái
phép bởi những người không có thẩm quyền.
- Tính toàn vẹn (Integrity): Đảm bảo thông tin không bị thay đổi trong quá
trình truyền.
- Tính sẵn sàng (Availability): Đảm bảo dữ liệu luôn sẵn sàng khi có yêu cầu
truy cập.
• Tài nguyên:
Tài nguyên bao gồm các thành phần phần cứng và phần mềm của hệ
thống. Kẻ tấn công có thể lợi dụng các lỗ hổng an ninh như các lỗ hổng về
hệ điều hành, mạng, ứng dụng. Nếu máy tính không có dữ liệu quan trọng thì
vẫn rất cần được bảo vệ bởi vì kẻ tấn công có thể đột nhập và sử dụng nó
làm tiền đề cho các cuộc tấn công khác.
• Danh tiếng:
Như trên đã nói kẻ tấn công có thể dùng máy của một người sử dụng để tấn
công nơi khác, gây tổn thất về uy tín của người sử dụng đó.

Với loại tấn công từ chối dịch vụ thứ hai, kẻ tấn công lợi dụng kẽ hở an toàn
thông tin của hệ thống, cố ý gửi các yêu cầu hoặc các gói tin không hợp lệ khiến cho
hệ thống bị tấn công khi nhận được yêu cầu hay gói tin này. Việc xử lý không đúng
hoặc không theo trình tự đã được thiết kế, dẫn đến sự sụp đổ cho chính hệ thống đó.
Phần lớn các kẽ hở này xuất phát từ lỗi phần mềm. Khi kẻ tấn công gửi những thứ
không nằm trong các khả năng đã dự tính, thì phần mềm dễ dàng bị lỗi, gây đổ vỡ hệ
thống. Ví dụ điển hình cho lỗi này là kiểu tấn công Ping of Death vào năm 1995, gây
treo hoặc đổ vỡ cho rất nhiều hệ thống. Ngoài ra, một số ít các kẽ hở lại xuất phát từ
chính nguyên lý hoạt động của hệ thống, đặc biệt là nguyên lý của bộ giao thức mạng
TCP/IP. Ví dụ điển hình của kiểu tấn công này là SYN flooding, gây cho hệ thống
dịch vụ mất khả năng tiếp nhận kết nối TCP.
Hiện tại chưa có biện pháp hữu hiệu nào để phòng chống tấn công từ chối dịch
vụ, nhất là kiểu tấn công gây quá tải. Nhà cung cấp dịch vụ chỉ có thể hạn chế chứ
khó có thể giữ cho dịch vụ của mình luôn sẵn sàng trước mọi cuộc tấn công từ chối
dịch vụ.
Biện pháp tốt nhất hiện nay để chống lại các cuộc tấn công từ chối dịch vụ, nhất
là kiểu tấn công dựa vào lỗi an toàn thông tin của hệ thống, là các nhà cung cấp dịch
vụ phải liên tục cập nhật phiên bản sửa lỗi phần mềm mới nhất cho hệ thống của
mình. Đồng thời các nhà cung cấp dịch vụ phải xây dựng và quản trị hệ thống sao cho
chúng ít có khả năng bị lợi dụng để phát động tấn công từ chối dịch vụ.
Tấn công DoS thực hiện đồng thời từ nhiều địa chỉ khác nhau được gọi là tấn
công DDoS (Distributed-DoS).
Tấn công ngăn chặn (Interception Attack)
Kiểu tấn công này sử dụng các bộ nghe trộm để bắt giữ password và các thông
tin nhạy cảm khác được truyền qua lại trên mạng. Nhờ nghe trộm password kẻ tấn
5
Hệ thống phát hiện xâm nhập trái phép trên mạng (NIDS)
công có thể lấy được mật khẩu của người sử dụng, sau đó chúng truy nhập một cách
chính quy vào hệ thống.
Để hạn chế kiểu tấn công này, chúng ta thực hiện phân đoạn hệ thống mạng và

6
Hệ thống phát hiện xâm nhập trái phép trên mạng (NIDS)
IDS (hệ thống phát hiện xâm nhập trái phép) được tạo thành từ các thành phần
phần cứng và phần mềm cùng hoạt động để tìm ra các sự kiện không mong muốn,
từ đó có thể chỉ ra một cuộc tấn công sẽ xảy ra, đang xảy ra hoặc đã xảy ra.
Policy
Đưa ra tính riêng tư, các luật điều khiển, những việc phải làm nếu bị tấn công.
7
Hệ thống phát hiện xâm nhập trái phép trên mạng (NIDS)
CHƯƠNG 2: HỆ THỐNG PHÁT HIỆN XÂM NHẬP TRÁI PHÉP TRÊN
MẠNG (NIDS)
2.1 Xâm nhập (Instrusion)
Trong phần này sẽ trình bày những khái niệm liên quan như xâm nhập
(intrusion), kịch bản xâm nhập (intrusion scenario), sẽ tìm hiểu về bản chất, nguyên
nhân, những dấu hiệu của việc xâm nhập vào hệ thống, trước khi đi sâu nghiên cứu
và triển khai một hệ thống phát hiện xâm nhập.
Một xâm nhập là một vài người (“hacker” hay “cracker”) cố gắng phá vỡ hay
lạm dụng hệ thống. Hacker và cracker là hai từ dùng để chỉ những kẻ xâm nhập.
Kẻ xâm nhập được chia thành hai loại:
• Outsiders: những kẻ xâm nhập từ bên ngoài hệ thống (xóa Web servers,
chuyển tiếp các spam qua e-mail servers). Chúng có thể vượt qua firewall để
tấn công các máy trong nội bộ mạng. Những kẻ xâm nhập có thể đến từ
Internet, qua đường dây điện thoại, đột nhập vật lý hoặc từ các mạng thành
viên được liên kết đến tổ chức mạng (nhà sản xuất, khách hàng,…).
• Insiders: những kẻ xâm nhập mà được sử dụng hợp pháp đến bên trong hệ
thống (những người sử dụng được ủy quyền, hoặc giả mạo người dùng được
ủy quyền ở mức cao hơn… ). Loại xâm nhập này chiếm 80%.
2.1.1 Cách thức xâm nhập vào hệ thống
Các cách thức chính mà những kẻ xâm nhập có thể đi vào hệ thống:
• Physical Intrusion (xâm nhập vật lý): nếu một kẻ xâm nhập truy cập vật lý

đâu. Nếu hacker thử luôn, họ nhập vào 300 kí tự bao gồm cả code mà sẽ
được thực hiện bởi server và như vậy là họ đã xâm nhập được vào hệ thống.
Các hacker sẽ phát hiện những lỗi này theo một số cách. Một là source code
cho rất nhiều các dịch vụ trên mạng. Hacker sẽ xem các code này để tìm ra
các đoạn chương trình có lỗi tràn bộ nhớ. Hai là, hacker có thể nhìn vào
chương trình để xem có lỗi đó tồn tại hay không, tuy vậy việc đọc mã
assembly ở đầu ra là rất khó. Ba là hacker sẽ kiểm tra mọi nơi chương trình
có đầu vào và cố gắng làm tràn nó với một dữ liệu ngẫu nhiên. Nếu chương
trình bị lỗi thì đây là một cơ hội tốt để hacker thâm nhập vào. Lưu ý là vấn
đề này phổ biến đối với những chương trình viết bằng C/C++, nhưng hiếm
trong những chương trình viết bằng JAVA.
• Unexpected combinations (các kết hợp không được mong đợi) : các
chương trình thường được xây dựng sử dụng nhiều lớp code bao gồm lớp
dưới hệ điều hành như là lớp dưới cùng của các lớp. Kẻ xâm nhập có thể
thường xuyên gửi đầu vào vô nghĩa đối với một lớp nhưng có ý nghĩa đối
với nhiều lớp khác. Ngôn ngữ thông dụng nhất để xử lý đầu vào người dùng
là PERL. Các chương trình viết bằng PERL sẽ thường xuyên gửi các đầu vào
này đến các chương trình khác để ước lượng. Một kỹ thuật hacker phổ biến
có thể đi vào như "| mail < /etc/passwd". Điều này được thực hiện bởi vì
PERL yêu cầu hệ điều hành khởi động một chương trình thêm vào với đầu ra
đó. Tuy nhiên, hệ điều hành chặn kí tự đường ống “|”, và khởi động chương
trình mail, điều này có thể dẫn đến việc file password được gửi cho kẻ xâm
nhập.
• Unhandled input (đầu vào không được xử lý): hầu hết các chương trình
được viết để xử lý đầu vào hợp lệ. Đa số lập trình viên không xem xét đến
9
Hệ thống phát hiện xâm nhập trái phép trên mạng (NIDS)
trường hợp là điều gì sẽ xảy ra khi đầu vào được nhập không đúng theo đặc
tả.
• Race condition : hầu hết các hệ thống ngày nay là đa nhiệm/đa luồng

máy để tránh các lỗ hổng bất ngờ.
• Trust relationships : kẻ xâm nhập thường lợi dụng các quan hệ tin cậy trên
mạng. Một hệ thống mạng bao gồm các máy tin cậy lẫn nhau sẽ chỉ an toàn
khi nó có kết nối yếu.
10
Hệ thống phát hiện xâm nhập trái phép trên mạng (NIDS)
Phá password (Password cracking):
• Really weak passwords: hầu hết mọi người dùng tên của họ, tên của bọn
trẻ, con vật, hoặc nhãn hiệu xe làm password. Còn có những người không
dùng password. Điều này dẫn đến một danh sách nhỏ hơn 30 khả năng cho
kẻ xâm nhập có thể tự mình nhập đúng thông tin.
• Dictionary attacks (tấn công từ điển): không áp dụng được các biện pháp
tấn công ở trên, kẻ xâm nhập có thể thực hiện bước tiếp theo là cố gắng
“dictionary attack”. Trong kiểu tấn công này, kẻ xâm nhập sẽ dùng một
chương trình để thử mọi từ có khả năng trong từ điển. Bằng cách lặp đi lặp
lại việc log in vào hệ thống bằng tập hợp các password được mã hoá và cố
gắng tìm ra. Những kẻ tấn công sẽ có một bản copy các từ điển tiếng Anh
như là cơ sở dữ liệu (bao gồm tên và danh sách các password thông dụng).
• Brute force attacks : giống như dictionary attack, kẻ xâm nhập cố gắng
thử tất cả các khả năng có thể gồm tập hợp các kí tự. Một password ngắn 4 kí
tự gồm các chữ thường thì có thể dễ dàng bị phá chỉ trong vài phút.
Password dài 7 kí tự, bao gồm cả chữ hoa chữ thường thì phải mất hàng
tháng để phá.
Những kẻ xâm nhập có thể lấy password theo các cách sau đây :
• Nghe trộm văn bản rõ (clear-text sniffing): một số giao thức (Telnet, FTP,
HTTP) sử dụng password clear-text, có nghĩa là chúng không được mã hoá
khi truyền trên đường dây giữa client và server. Một kẻ xâm nhập với một bộ
phân tích giao thức sẽ giám sát đường dây và tìm kiếm những password như
vậy. Không cần nhiều nỗ lực, kẻ xâm nhập đã có thể ngay lập tức sử dụng
các password đó để log in vào hệ thống.

chức đang chuyển sang mạng Ethernet chuyển mạch.
• Server sniffing (nghe trộm trên server): tuy nhiên, trên một mạng chuyển
mạch, nếu bạn có thể cài đặt một chương trình sniffing trên một server (đặc
biệt nó hoạt động như một router), thì bạn có thể dùng các thông tin đó để
đột nhập vào các máy client. Ví dụ, bạn không biết password của một user
nhưng sniffing một phiên Telnet khi họ log in vào sẽ cho bạn password.
• Remote sniffing (nghe trộm từ xa): một lượng lớn các box đến cùng với
RMON và các xâu thực thể. Trong khi băng thông rất thấp (bạn không thể
sniff trên tất cả các giao thông mạng).
Lỗi thiết kế (Design flaws):
Thậm chí nếu việc thực hiện một phần mềm hoàn toàn đúng theo thiết kế, vẫn
có các lỗi trong bản thân thiết kế cho phép kẻ xâm nhập có thể lợi dụng.
• TCP/IP Protocol flaws : giao thức TCP/IP được thiết kế trước khi chúng ta
có nhiều kinh nghiệm về hacking phạm vi rộng mà chúng ta gặp phải ngày
nay, kết quả là một số lỗi thiết kế sẽ dẫn đến vấn đề không an toàn.
2.1.3 Những dấu hiệu xâm nhập thông thường
Có 3 cách thức chính để thực hiện hành vi xâm nhập:
• Do thám (Reconnaissance): bao gồm việc quét các địa chỉ, DNS, quét các
cổng TCP, UDP,…và các Web server để tìm ra các lỗ hổng CGI.
• Lợi dụng (Exploits): lợi dụng các đặc tính ẩn hoặc lỗi để truy cập vào hệ
thống.
• Từ chối dịch vụ (Denial of Service-DoS): kẻ xâm nhập sẽ cố gắng phá vỡ
một dịch vụ, quá tải kết nối mạng, quá tải CPU, hoặc làm đầy đĩa. Chúng sẽ
không lấy các thông tin mà chỉ đơn giản đóng vai trò như một kẻ phá hoại để
ngăn cản bạn sử dụng trên máy của bạn.
12
Hệ thống phát hiện xâm nhập trái phép trên mạng (NIDS)
Exploits:
 CGI Scripts
 Web server attacks

2.2 Hệ thống phát hiện xâm nhập (IDS)
2.2.1 Định nghĩa, chức năng, nguyên lý làm việc
13
Hệ thống phát hiện xâm nhập trái phép trên mạng (NIDS)
Định nghĩa: Hệ thống phát hiện xâm nhập là hệ thống có nhiệm vụ theo dõi, ghi
lại, và (có thể) ngăn cản sự xâm nhập cũng như các hành vi khai thác trái phép tài
nguyên của hệ thống được bảo vệ. Có thể dẫn đến làm tổn hại đến tính mật, tính
toàn vẹn và tính sẵn sàng của hệ thống.
Chức năng của hệ thống: là bảo vệ tính mật, tính toàn vẹn, và tính sẵn sàng của
thông tin. Hệ thống IDS sẽ thu thập thông tin từ rất nhiều nguồn trong hệ thống
được bảo vệ sau đó tiến hành phân tích những thông tin đó theo các cách khác nhau
để phát hiện những xâm nhập trái phép.
Có hai cách tiếp cận cơ bản đối với quá trình phát hiện xâm nhập, đó là phát
hiện sự không bình thường (anomaly detection) và phát hiện sự lạm dụng (misuse
detection). Hai cách thức phát hiện này cũng chính là những nguyên lý làm việc của
các hệ thống IDS từ trước đến nay, do đó đi sâu tìm hiểu hai cách thức đó đồng
nghĩa với việc tìm hiểu về cơ chế hoạt động của các hệ thống IDS.
Nguyên lý làm việc
• Phát hiện sự không bình thường (anomaly detetion):
Dựa trên việc định nghĩa và mô tả đặc điểm các dạng thức (form) cố định mong
muốn và/hoặc với các hành vi (behavior) động có thể chấp nhận của hệ thống. Sau
đó, phân biệt chúng với các hành vi không mong muốn hoặc bất thường để tìm ra
các thay đổi hay các hành vi bất hợp pháp.
Như vậy, bộ phát hiện sự không bình thường phải có khả năng phân biệt giữa
những hiện tượng thông thường và hiện tượng bất thường.
Ranh giới giữa dạng thức chấp nhận được và dạng thức bất thường của đoạn mã
và dữ liệu lưu trữ được định nghĩa rõ ràng (chỉ cần một bit khác nhau), còn ranh
giới giữa hành vi hợp lệ và hành vi bất thường thì khó xác định hơn.
Phát hiện sự không bình thường được chia thành hai loại tĩnh và động.
o Phát hiện tĩnh:

thống phát hiện xâm nhập sử dụng các bản ghi kiểm tra (audit record), sinh ra bởi
hệ điều hành để định nghĩa các sự kiện liên quan, trong trường hợp này chỉ những
hành vi mà kết quả của nó là việc tạo ra các bản ghi kiểm tra của hệ điều hành mới
được xem xét.
Các sự kiện có thể xảy ra theo trật tự nghiêm ngặt hoặc không và thông tin phải
được tích luỹ. Các ngưỡng được định nghĩa để phân biệt ranh giới giữa việc sử
dụng tài nguyên hợp lý hay bất thường.
Nếu không chắc chắn hành vi là bất thường hay không, hệ thống có thể dựa vào
các tham số được thiết lập trong suốt quá trình khởi tạo liên quan đến hành vi. Ranh
giới trong trường hợp này là không rõ ràng do đó có thể dẫn đến những cảnh báo
sai.
Cách thức thông thường nhất để xác định ranh giới là sử dụng các phân loại
thống kê và các độ lệch chuẩn. Khi một phân loại được thiết lập, ranh giới có thể
được vạch ra nhờ sử dụng một số độ lệch chuẩn. Nếu hành vi nằm bên ngoài thì sẽ
cảnh báo là có xâm nhập.
Cụ thể là: các hệ thống phát hiện động thường tạo ra một profile cơ sở để mô tả
đặc điểm các hành vi bình thường, chấp nhận được. Một profile bao gồm tập các đo
lường được xem xét về hành vi, mỗi đại lượng đo lường gồm nhiều chiều:
+ Liên quan đến các lựa chọn: thời gian đăng nhập, vị trí đăng nhập,…
+ Các tài nguyên được sử dụng trong cả quá trình hoặc trên một đơn vị thời
gian: chiều dài phiên giao dịch, số các thông điệp gửi ra mạng trong một đơn vị thời
gian,…
+ Chuỗi biểu diễn các hành động
Sau khi khởi tạo profile cơ sở, quá trình phát hiện xâm nhập có thể được bắt
đầu. Phát hiện động lúc này cũng giống như phát hiện tĩnh ở đó chúng kiểm soát
hành vi bằng cách so sánh mô tả đặc điểm hiện tại về hành vi với mô tả ban đầu của
hành vi được mong đợi (chính là profile cơ sở), để tìm ra sự khác nhau. Khi hệ
15
Hệ thống phát hiện xâm nhập trái phép trên mạng (NIDS)
thống phát hiện xâm nhập thực hiện, nó xem xét các sự kiện liên quan đến thực thể

điều hành.
Các kỹ thuật để phát hiện sự lạm dụng khác nhau ở cách thức mà chúng mô tả
(mô hình) hành vi chỉ định một sự xâm nhập. Các hệ thống phát hiện sự lạm dụng
thế hệ đầu tiên sử dụng các luật (rules) để mô tả những gì mà các nhà quản trị an
ninh tìm kiếm trong hệ thống. Một lượng lớn tập luật được tích luỹ dẫn đến khó có
thể hiểu và sửa đổi bởi vì chúng không được tạo thành từng nhóm một cách hợp lý
trong một kịch bản xâm nhập.
Để giải quyết khó khăn này, các hệ thống thế hệ thứ hai đưa ra các biểu diễn
kịch bản xen kẽ, bao gồm các tổ chức luật dựa trên mô hình và các biểu diễn về
phép biến đổi trạng thái. Điều này sẽ mang tính hiệu quả hơn đối với người dùng hệ
thống cần đến sự biểu diễn và hiểu rõ ràng về các kịch bản. Hệ thống phải thường
16
Hệ thống phát hiện xâm nhập trái phép trên mạng (NIDS)
xuyên duy trì và cập nhật để đương đầu với những kịch bản xâm nhập mới được
phát hiện.
Do các kịch bản xâm nhập có thể được đặc tả một cách chính xác, các hệ thống
phát hiện sự lạm dụng có thể dựa theo đó để theo vết hành động xâm nhập. Trong
một chuỗi hành động, hệ thống phát hiện có thể đoán trước được bước tiếp theo của
hành động xâm nhập. Bộ dò tìm phân tích thông tin hệ thống để kiểm tra bước tiếp
theo, có thể can thiệp để làm giảm bởi tác hại có thể.
2.2.2 Vị trí
Như ta đã biết IDS (Intrusion Detection System) là một hệ thống để phát hiện
các xâm nhập. Chúng có thể được đặt trên hệ thống mạng tại các vị trí như trên hình
vẽ:
IDS #1 :
Một vài IDS làm việc tại vị trí này. Khi đó, firewall sẽ không cung cấp đủ thông
tin cho các phát hiện xâm nhập một cách hiệu quả.
IDS #2 :
Việc sắp xếp này của IDS sẽ phát hiện thành công các xâm nhập mà đi qua được
firewall.

Quột tỡm im d b xõm phm ca mng (Network Vulnerability
Scanner).
Quột tỡm im d b xõm phm trờn host (Host Vulnerability Scanner).
Systems
Networks
Vulnerability
Assessment
(Scheduled)
Intrusion
Detection
(real-time)
xác định chính sách
bằng cách tìm ra các
lỗ hổng trong HT, phá
password,...
canh gác trên mỗi hệ
thống, giám sát các
file chủ chốt, đột
nhập, backdoor, theo
thời gian thực
quét các hệ thống
mạng để tìm ra những
lỗ hổng và những
điểm dễ bị xâm phạm
trên các that bị
canh gác trên các hệ
thống mạng, tìm kiếm
các dạng tấn công đã
biết trong các luồng
dữ liệu, theo thời gian


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status