Lỗi tiêm
chích Fault là một kỹ thuật được sử dụng để cải thiện mã số bảo hiểm bằng cách kiểm tra tất cả các
đường dẫn mã, đặc biệt là đường dẫn mã lỗi xử lý mà có thể không được thực hiện
trong quá trình thử nghiệm chức năng. Trong thử nghiệm tiêm lỗi, lỗi được tiêm vào
phần mềm điện toán đám mây để mô phỏng lỗi vô ý của người dùng và các cuộc tấn công có chủ ý vào
các phần mềm thông qua môi trường của nó, và các cuộc tấn công trên môi trường riêng của mình.
Source Code Fault Tiêm
Trong mã nguồn lỗi tiêm, các thử nghiệm sẽ quyết định khi môi trường lỗi nên
được kích hoạt. Các thử nghiệm sau đó "cụ" mã nguồn của phi intrusively
thay đổi cách chèn vào các chương trình phản ánh các dữ liệu môi trường thay đổi
đó sẽ là kết quả của những lỗi lầm ấy.
22
Các mã nguồn trang bị dụng cụ sau đó được
biên dịch và thực thi, và thử quan sát cách các phần mềm thực hiện của
nhà nước thay đổi khi các phần trang bị dụng cụ của mã được thực thi. Điều này cho phép
các thử nghiệm để quan sát sự thay đổi trạng thái an toàn và nonsecure trong phần mềm
kết quả từ những thay đổi trong môi trường của nó.
Các thử nghiệm cũng có thể phân tích như thế nào thay đổi trạng thái của phần mềm điện toán đám mây như là một kết quả
của một lỗi tuyên truyền thông qua các mã nguồn. Kiểu phân tích này thường được
gọi là phân tích tuyên truyền lỗi, và bao gồm hai kỹ thuật của nguồn
mã lỗi injection:. phân tích giao diện truyền analysisand tuyên truyền mở rộng
96 Chương 3 Cloud Computing Phần mềm bảo mật cơ bản
để chuẩn bị cho phân tích tuyên truyền lỗi, máy đo phải tạo một cây lỗi
từ mã nguồn của phần mềm. Để thực hiện một phân tích tuyên truyền mở rộng,
các thử nghiệm tiêm lỗi vào cây lỗi, sau đó dấu vết như thế nào mỗi lỗi tiêm
truyền qua cây. Điều này cho thấy tác động một lỗi cụ thể sẽ có
trên các hành vi tổng thể của phần mềm.
Giao diện phân tích tuyên truyền tập trung vào cách lỗi được truyền thông qua
các giao diện giữa các thành phần / mô-đun và điện toán đám mây ở cấp ứng dụng khác
thành phần và môi trường cấp. Trong phân tích tuyên truyền giao diện, các thử nghiệm
tiêm một lỗi vào đầu vào dữ liệu giữa các thành phần, quan điểm như thế nào dẫn đến
lỗi, tuyên truyền, và quan sát xem có bất thường mới cho kết quả. Đây là loại
phân tích cho phép thử nghiệm để xác định như thế nào sự thất bại của một thành phần
có thể ảnh hưởng đến sự thất bại của một thành phần nước láng giềng, đặc biệt quan trọng nếu một
thành phần đám mây lân cận là hậu quả cao.
tiêm lỗi Source code là đặc biệt hữu ích trong việc phát hiện những điều sau đây:
Incorrect sử dụng con trỏ và mảng
Use các cuộc gọi nguy hiểm
Race điều kiện
Source code lỗi, cần phải thực hiện lặp đi lặp lại như các phần mềm
đang được viết. Khi mối đe dọa (kiểu tấn công và các kỹ thuật xâm nhập) là người mới
phát hiện ra, các mã nguồn có thể được tái trang bị dụng cụ với những lỗi lầm đó là đại diện của các loại mối đe dọa mới.
Tiêm Fault Binary
lỗi Binary injection là một kỹ thuật phân tích thời gian chạy theo đó một đám mây thực hiện
ứng dụng được giám sát như lỗi được tiêm. Bằng cách theo dõi dấu vết cuộc gọi hệ thống,
một thử nghiệm có thể xác định được tên của các cuộc gọi hệ thống, các thông số cho mỗi cuộc gọi, và
mã trở lại của cuộc gọi. Điều này cho phép các thử nghiệm để khám phá ra những cái tên và các loại
tài nguyên được truy cập bởi các phần mềm gọi điện thoại, làm thế nào các tài nguyên đang được
sử dụng, và sự thành công hay thất bại của mỗi cố gắng truy cập. Trong phân tích lỗi nhị phân,
lỗi được tiêm vào các nguồn tài nguyên môi trường bao quanh các đám mây
ứng dụng. Lỗi môi trường cung cấp các thiết bị kiểm tra một số lợi ích:
They mô phỏng các tình huống tấn công thực tế và có thể dễ dàng tự động.
They mô phỏng môi trường bất thường mà không đòi hỏi một sự hiểu biết
làm thế nào những bất thường thực sự xảy ra trong thế giới thực. Điều này cho phép lỗi
tiêm bằng cách thử những người không có kiến thức về môi trường
mà lỗi được mô phỏng.
The thử nghiệm có thể chọn khi nào để kích hoạt một lỗi môi trường cụ thể.
Điều này tránh các vấn đề của một thi đua môi trường đầy đủ, trong đó
nhà nước môi trường khi ứng dụng tương tác với nó có thể không phải là những gì
được mong đợi, hoặc có thể không có hiệu quả dự kiến về hành vi của phần mềm.
Chương 3 Cloud Computing Phần mềm bảo mật cơ bản 97
Nó là sùng bái diffi để dự đoán các yếu tố đầu vào độ phức tạp của phần mềm điện toán đám mây sẽ thực sự
nhận được trong mục tiêu môi trường. Vì vậy, kịch bản tiêm lỗi nên được
thiết kế để cung cấp cho các thử nghiệm sự hiểu biết đầy đủ nhất có thể có của các
an ninh của các hành vi, tiểu bang, và các đặc tính của hệ thống phần mềm theo
tất cả các điều kiện hoạt động tốt. Khi các ứng dụng điện toán đám mây đã được triển khai
để sản xuất, thử nghiệm có thể sử dụng thử nghiệm thâm nhập và quét lỗ hổng để cung cấp một phương pháp đánh giá độ an ninh của ứng dụng.
cụ tiêm lỗi nhị phân bao gồm phun lỗi nhị phân và brute-force
xét nghiệm. Những công cụ này sẽ hỗ trợ các chức năng phổ biến được tìm thấy trong
các ứng dụng. Ví dụ, các công cụ tiêm lỗi thương mại Holodeck
(www.securityinnovation.com/holodeck/) thường được sử dụng để mô phỏng lỗi trong
ứng dụng hệ điều hành Microsoft. Holodeck tiêm lỗi cho phổ biến
chức năng tìm thấy trong môi trường Windows điển hình như sau:
Network- cáp bị ngắt kết nối, mạng không được cài đặt, Winsock sai
phiên bản, Winsock giới hạn nhiệm vụ đạt được, không có cổng có sẵn, mạng bị ngắt
không gian đĩa Disk- đủ, (cyclic redundancy check CRC) lỗi, quá
nhiều fi les mở, đĩa là viết được bảo vệ, không có đĩa trong ổ
Memory- đủ bộ nhớ, thất bại trong việc phân bổ, khóa bộ nhớ
Holodeck cũng hỗ trợ một ứng dụng giám sát để xem sự tương tác của nó
với môi trường.
năng động Mã Phân tích
phân tích mã động kiểm tra các mã như nó thực hiện trong một đám mây chạy
ứng dụng, với các thử nghiệm truy tìm các giao diện bên ngoài trong mã nguồn để
tương tác tương ứng trong mã thực hiện, do đó bất kỳ lỗ hổng
hoặc bất thường phát sinh trong giao diện thực hiện được đồng thời nằm
trong các mã nguồn, nơi họ có thể được cố định.
Không giống như các phân tích tĩnh, phân tích năng động cho phép các thử nghiệm để thực hiện các
phần mềm theo những cách mà phơi bày lỗ hổng được giới thiệu bởi các tương tác với
người sử dụng và những thay đổi trong cấu hình hoặc hành vi của các thành phần môi trường . Bởi vì phần mềm không liên quan đầy đủ và triển khai trong thực tế mục tiêu của nó
môi trường, những tương tác và đầu vào liên quan của họ và môi trường
điều kiện về cơ bản được mô phỏng bằng các công cụ kiểm tra.
Một ví dụ về một công cụ phân tích mã động là mã nguồn mở Valgrind
(www. valgrind.org), đó là hữu ích trong việc phát hiện và quản lý bộ nhớ
bài lỗi.
Property-Based Testing
kiểm tra tài sản dựa trên là một kỹ thuật phân tích chính thức được phát triển tại Đại học
California ở Davis.
23
kiểm tra tài sản dựa trên xác nhận rằng của phần mềm
đáp ứng chức năng thực hiện thông số kỹ thuật của nó. Nó làm điều này bằng cách kiểm tra
98 Chương 3 Cloud Phần mềm máy tính An ninh cơ bản
tài sản bảo đảm có liên quan tiết lộ mã nguồn, chẳng hạn như sự vắng mặt của
nhà nước thay đổi không an toàn. Sau đó, các tài sản bảo đảm có liên quan trong các mã được
so sánh với đặc điểm kỹ thuật của phần mềm để xác định xem sự an toàn
giả thiết này đã được đáp ứng.
Cũng giống như phân tích mã trực tiếp, kiểm tra tài sản dựa trên đòi hỏi sự tập trung đầy đủ của các thử nghiệm và là một quá trình chi tiết theo định hướng. Bởi vì nó đòi hỏi người thử
để dành một số lượng đáng kể thời gian để mã, nó thường chỉ được sử dụng để
phân tích mã thực hiện chức năng hậu quả cao.
Black Box Debugging
Đen hộp gỡ lỗi
24
là một kỹ thuật để giám sát các hành vi bên ngoài để các nhị phân
thành phần hoặc hệ thống trong khi nó được thực hiện, và do đó quan sát các dữ liệu mà
đi giữa các thành phần / hệ thống và các tổ chức bên ngoài.
Ngoài ra, bằng cách quan sát như thế nào dữ liệu đi qua ranh giới của phần mềm, các
nhà phân tích cũng có thể xác định như thế nào bên ngoài nguồn dữ liệu có thể được thao tác
để buộc các phần mềm xuống đường dẫn thực thi nào đó, hoặc gây ra các phần mềm để
thất bại. Điều này có thể tiết lộ lỗi và thất bại mà không có nguồn gốc trong phần mềm điện toán đám mây
riêng của mình, nhưng buộc bởi các thực thể bên ngoài mà nó tương tác, hoặc bằng một
API thực hiện không chính xác.
Interoperability Testing
thử nghiệm Interoperability đánh giá xem liệu một ứng dụng điện toán đám mây có thể trao đổi dữ liệu
(tương thích) với các thành phần khác hoặc các ứng dụng. Thử nghiệm khả năng
hoạt động xác định khả năng của các ứng dụng để trao đổi dữ liệu thông qua một tập hợp chung các định dạng trao đổi, đọc và viết các định dạng tập tin tương tự, và để
giao tiếp bằng cách sử dụng giao thức tương tự. Một mục tiêu quan trọng của thử nghiệm khả năng tương tác
là để phát hiện các vấn đề khả năng tương tác giữa các ứng dụng phần mềm điện toán đám mây trước khi
các ứng dụng này được đưa vào hoạt động. Thử nghiệm khả năng tương tác đòi hỏi
đa số các ứng dụng sẽ được hoàn thành trước khi thử nghiệm có thể xảy ra.
Khả năng cộng tác kiểm tra thường mất một trong ba phương pháp:
Testing tất cả pairs- này thường được tiến hành bởi một nhóm độc lập của bên thứ ba của người thử những người có hiểu biết về khả năng tương tác
đặc giữa các sản phẩm phần mềm và giữa các nhà cung cấp phần mềm.
Testing một số các phương pháp tiếp cận combinations- này liên quan đến thử nghiệm chỉ
là một phần của tổ hợp và giả sử rằng sự kết hợp chưa được kiểm tra cũng sẽ
tương thích.
Testing chống lại một tham chiếu implementation- cách tiếp cận này thiết lập một thực hiện tham chiếu, ví dụ, sử dụng các tiêu chuẩn được chấp nhận, và
thử nghiệm tất cả các sản phẩm chống lại các tài liệu tham khảo. Trong một bài báo về đo lường trong
công nghệ thông tin, các nhà nghiên cứu trong Công nghệ Thông tin NIST
nhà nước trong phòng thí nghiệm mà một qui trình điển hình được sử dụng để tiến hành các khả năng tương tác
Chương 3 Cloud Computing Phần mềm bảo mật cơ bản 99
thử nghiệm bao gồm "phát triển một tập hợp đại diện giao dịch thử nghiệm trong một
sản phẩm phần mềm cho đoạn văn với các sản phẩm phần mềm để xử lý
xác minh ".
25
Một thách thức trong integrati thành phần phần mềm điện toán đám mây
đang được dịch, vui lòng đợi..