12.1 yêu cầu có nguy cơ điều khiển đặc điểm kỹ thuật 12.2 điểm kỹ thuật an toàn 12.3 Đặc điểm kỹ thuật tin cậy 12.4 Đặc điểm bảo mật Lý do an ninh là một vấn đề khó khăn hơn an toàn Khi xem xét an toàn, có thể giả định rằng môi trường trong đó hệ thống được cài đặt không phải là thù địch Khi thất bại xảy ra mà gây nguy hiểm cho an toàn, bạn tìm các lỗi hoặc thiếu sót đã gây ra sự thất bại Nó thường là chấp nhận được để tắt hệ thống hoặc làm suy giảm hệ thống dịch vụ nhằm tránh sự thất liên quan tiếp theo Không được tạo ra bởi một kẻ thù thông minh
Trang 112.1 yêu cầu có nguy cơ điều khiển đặc
điểm kỹ thuật
• đặc điểm kỹ thuật rủi ro theo định hướng là một phương pháp đã được sử dụng rộng rãi bởi tính an toàn và hệ thống phát triển an ninh quan trọng
• Trong các hệ thống an toàn quan trọng thường có những rủi ro có liên quan đến các mối nguy hiểm có thể dẫn đến tai nạn những rủi ro đó thường đến từ người trong cuộc và ngoài cuộc tấn công vào một
hệ thống được dự định để khai thác.
Trang 2Hình 12.1:Rủi ro hướng đặc điểm kĩ thuật
Các giai đoạn trong quá trình này là:
1) Nhận biết nguy cơ rủi ro tiềm năng để hệ thống được xác định
2) Phân tích rủi ro và phân loại Mỗi rủi ro được xem xét riêng biệt
3) Phân hủy mỗi rủi ro được phân tích để phát hiện nguyên nhân gốc
tiềm tàng của rủi ro đó
4) Các đề xuất giảm thiểu rủi ro cho cách thức mà các rủi ro được xác
định có thể được giảm bớt hoặc loại bỏ được thực hiện
Trang 312.2 điểm kỹ thuật an toàn
• Hệ thống an toàn là hệ thống trong đó thất bại có thể ảnh hưởng đến môi trường của hệ thống và gây thương tích hoặc tử vong cho những người trong môi trường đó
• Trong các hệ thống an toàn quan trọng là những rủi ro chủ yếu đến từ các mối nguy hiểm có thể dẫn đến tai nạn Bạn có thể giải quyết vấn
đề xác định nguy cơ bằng cách xem xét các loại khác nhau của các
mối nguy hiểm, chẳng hạn như mối nguy vật lý, mối nguy hiểm điện, mối nguy sinh học, mối nguy hiểm bức xạ
Trang 412.2.1 Xác định mối nguy.
• Trong các hệ thống an toàn quan trọng, những rủi ro chủ yếu đến từ các mối nguy hiểm có thể dẫn đến tai nạn Bạn có thể giải quyết vấn đề xác định nguy cơ bằng cách xem xét các
loại khác nhau của các mối nguy hiểm, chẳng hạn như mối
nguy vật lý, mối nguy hiểm điện, mối nguy sinh học, mối
nguy hiểm bức xạ.
Trang 5VD: Máy bownm insulin
Những mối nguy hiểm trong hệ thống bơm tiêm insulin:
1.Quá liều insulin tính toán (thất bại dịch vụ)
2.Sự thất bại của hệ thống giám sát phần cứng (thất bại dịch vụ)
3.mất điện do pin cạn kiệt (điện)
4.Nhiễu điện với thiết bị y tế khác như một máy tạo nhịp tim (điện)
5.Cảm biến nghèo và bộ truyền động xúc gây ra bởi phù hợp không chính xác (vật lý)
6.Các bộ phận của máy phá ra trong cơ thể của bệnh nhân (vật lý)
7.Nhiễm trùng gây ra bởi sự giới thiệu của máy (sinh học)
8.Phản ứng dị ứng với các tài liệu hoặc insulin được sử dụng trong các máy (sinh học)
Trang 612.2.2 Đánh giá rủi ro.
• Quá trình đánh giá rủi ro tập trung vào sự hiểu biết xác suất mà một mối nguy hiểm sẽ xảy ra và hậu quả nếu một tai nạn hay sự cố liên quan với nguy hiểm.Các phân tích cũng cung cấp một cơ sở cho việc quyết định làm thế nào để quản lý các rủi ro liên quan tới nguy hiểm
Hình 12.2 Các tam giác nguy cơ
Trang 7 Có ba loại rủi ro mà bạn có thể sử dụng trong đánh giá rủi ro:
1) Rủi ro không thể chấp nhận trong các hệ thống an toàn quan trọng
là những đe dọa cuộc sống của con người
2) Rủi ro là những người có hậu quả ít nghiêm trọng hoặc rất nghiêm
trọng nhưng có một xác suất rất thấp xảy ra
3) Rủi ro chấp nhận được là những nơi mà các tai nạn liên quan
thường dẫn đến hư hại nhẹ
Trang 812.2.3 phân tích mối nguy hiểm
• Phân tích mối nguy hiểm là quá trình khám phá những nguyên nhân gốc rễ của mối nguy hiểm trong một hệ thống quan trọng an toàn
Hình 12.4 Một ví dụ về một cây lỗi
Trang 912.2.4 giảm thiểu rủi ro
• Khi rủi ro tiềm ẩn và nguyên nhân gốc rễ của họ đã được xác định,có thể lấy được các yêu cầu an toàn mà quản lý rủi ro và đảm bảo rằng
sự cố hoặc tai nạn không xảy ra
3.Hạn chế thiệt hại hệ thống được thiết kế để các hậu quả của một tai nạn được giảm thiểu
Trang 1012.3 Đặc điểm kỹ thuật tin cậy
• Phụ thuộc vào độ tin cậy phần cứng , độ tin cậy phần mềm, và độ tin cậy của các nhà khai thác hệ thống.
• Có thể xác định mức độ tin cậy được yêu cầu, theo dõi hoạt động của hệ thống
theo thời gian, và kiểm tra xem độ tin cậy cần thiết đã đạt được
Trang 11Yêu cầu độ tin cậy có hai loại :
1 Phi chức năng, trong đó xác định số thất bại có thể chấp
nhận trong khi sử dụng bình thường hệ thống, hoặc thời gian trong đó hệ thống không có sẵn để sử dụng
2 Yêu cầu chức năng, trong đó xác định các chức năng hệ
thống và phần mềm mà tránh, phát hiện, hoặc chịu đựng lỗi trong phần mềm và để đảm bảo rằng những lỗi lầm này không dẫn đến sự thất bại của hệ thống.
Trang 12Các quá trình đặc điểm kỹ thuật đáng tin cậy
Trang 1312.3.1 Số liệu đáng tin cậy
- độ tin cậy có thể được quy định như một xác
suất mà một lỗi hệ thống sẽ xảy ra khi một hệ
thống được sử dụng trong một môi trường hoạt động theo quy định
Các số liệu là:
Xác suất thất bại theo yêu cầu
Tỷ lệ xuất hiện thất bại (ROCOF)
Trang 14Các dữ liệu cần thiết về hoạt
động đánh giá độ tin cậy
• Số lượng các lỗi hệ thống đưa ra yêu cầu cho các dịch vụ hệ thống
•Thời gian hoặc số lượng giữa giao dịch với các
sự cố hệ thống và tổng thời gian trôi qua hoặc
tổng số giao dịch
• Việc sửa chữa hoặc thời gian khởi động lại sau khi hệ thống bị lỗi dẫn đến bị mất dịch vụ
Trang 1512.3.2 Yêu cầu độ tin cậy phi chức
Trang 16• Lợi thế trong phát sinh thông số kỹ thuật
đáng tin cậy về số lượng
•Làm sáng tỏ những gì các bên liên quan thực sự cần
•Cung cấp một cơ sở cho việc đánh giá khi nào
phải ngừng thử nghiệm một hệ thống
•Là một phương tiện để đánh giá các chiến lược thiết kế khác nhau nhằm nâng cao độ tin cậy của
hệ thống
Trang 17Bước để tránh quá đặc điểm kỹ thuật về độ tin cậy của hệ thống
• Xác định các yêu cầu sẵn sàng và độ tin cậy với nhiều loại khác nhau về thất bại
•Xác định các yêu cầu tính sẵn sàng và độ tin cậy cho các dịch vụ khác nhau một cách riêng biệt
•Quyết định xem bạn thực sự cần độ tin cậy cao trong một hệ thống phần mềm hay các mục tiêu
hệ thống tin cậy tổng thể có thể đạt được bằng cách khác
Trang 18Có hai loại thất bại trong bơm insulin:
1.Lỗi phần mềm có thể được sửa chữa bởi các
hành động sử dụng như đặt lại hoặc chỉnh lại máy 2.Lỗi phần mềm thường trực mà đòi hỏi các phần mềm được cài đặt lại bởi nhà sản xuất
12.3.3 đặc điểm chức năng đáng tin cậy
- Liên quan đến việc xác định các yêu cầu giúp
xác định những hạn chế và tính năng tham gia vào
độ tin cậy của hệ thống
Trang 19Có ba loại yêu cầu độ tin cậy chức năng cho hệ
thống 1.Yêu cầu kiểm tra, xác định kiểm tra đầu vào cho
hệ thống
2.Yêu cầu phục hồi
3.Các yêu cầu dư thừa
12.4 Đặc điểm bảo mật
- Yêu cầu bảo mật cho các hệ thống có một điểm chung với yêu cầu an toàn
Trang 20Lý do an ninh là một vấn đề khó khăn hơn an toàn
•Khi xem xét an toàn, có thể giả định rằng môi trường trong đó hệ thống được cài đặt không phải là thù địch
•Khi thất bại xảy ra mà gây nguy hiểm cho an toàn, bạn tìm các lỗi hoặc thiếu sót đã gây ra sự thất bại
•Nó thường là chấp nhận được để tắt hệ thống hoặc làm suy giảm hệ thống dịch vụ nhằm tránh sự thất liên quan tiếp theo
•Không được tạo ra bởi một kẻ thù thông minh
Trang 2110 loại các yêu cầu bảo mật có thể được bao gồm trong một đặc điểm kỹ thuật của hệ thống:
•Yêu cầu xác định có hay không một hệ thống cần người dùng trước khi tương tác với họ
•Yêu cầu xác thực cách người dùng xác định
• Các đặc quyền và quyền truy cập của người sử dụng
•Miễn trừ chỉ định để một hệ thống tự bảo vệ chống lại virus,Trojan, và các mối đe dọa tương tự.
•Chỉ định cách tham nhũng dữ liệu có thể tránh được.
•Phát hiện xâm nhập những cơ chế được sử dụng để phát hiện các cuộc tấn công vào hệ thống
•Yêu cầu thoái thác xác định rằng một bên trong giao dịch không thể phủ nhận sự tham gia của
mình trong giao dịch đó
•chỉ định các dữ liệu riêng tư được duy trì
•sử dụng hệ thống có thể được kiểm toán và kiểm tra.
•Yêu cầu hệ thống an ninh bảo dưỡng một ứng dụng có thể tự thay đổi quyền, từ đó vô tình đánh bại cơ chế bảo mật của nó.
Trang 22Q uá trình phân tích rủi ro :
•Phân tích rủi ro sơ bộ.
•phân tích rủi ro Vòng đời
•Phân tích Rủi ro hoạt động
Trang 23Các giai đoạn quá trình
Trang 24Một số ví dụ về các yêu cầu
• Thông tin bệnh nhân sẽ được tải về, vào lúc bắt đầu của một phiên khám, từ cơ sở dữ liệu đến một khu vực an toàn trên hệ thống
• Thông tin Tất cả các bệnh nhân trên hệ thống được mã hóa
• Các thông tin Bệnh nhân sẽ được tải lên cơ sở dữ liệu khi một phiên khám là hơn và xóa từ máy tính của khách hang
• Một bản ghi của tất cả các thay đổi cơ sở dữ liệu trên hệ thống và những thay đổi này sẽ được duy trì trên một máy tính riêng biệt từ các máy chủ cơ sở dữ liệu
Trang 2512.5 - Phương pháp chính
-Là cách tiếp cận toán học dựa vào sự phát triển phần mềm
mà bạn định nghĩa một mô hình chính thức của phần mềm
-Về nguyên tắc , có thể bắt đầu với một mô hình chính thức cho phần mềm và chứng minh rằng một chương trình phát
triển phù hợp với mô hình đó , do đó loại trừ lỗi phần mềm do lỗi lập trình
Trang 26kỹ thuật đặc điểm kỹ thuật chính
• Thông số kỹ thuật hệ thống chính thức có thể được thể hiện bằng hai cách tiếp cận cơ bản , có thể là mô hình của giao diện hệ thống ( thông số kỹ thuật đại
số ) Các chương bao gồm một đặc tả hình thức của một phần của hệ thống bơm insulin
Trang 27• Điểm khởi đầu cho tất cả các quá trình phát triển
chính thức là một mô hình hệ thống chính thức Các đặc điểm kỹ thuật mal cho- là một mô tả rõ ràng về những gì hệ thống phải làm Sử dụng phương pháp thủ công hoặc công cụ hỗ trợ , bạn có thể kiểm tra hành vi của một chương trình phù hợp với đặc điểm
kỹ thuật
Trang 28• Thông số kỹ thuật chính thức Là cách chính xác nhất của
hệ thống quy định cụ thể , và do đó làm giảm phạm vi cho
Trang 29-Thông số kỹ thuật chính thức thường được phát triển như là một phần của một quá trình phần
mềm
-Nếu một đặc điểm kỹ thuật chính thức của phần mềm được phát triển , điều này thường xảy ra sau khi các yêu cầu hệ thống đã được chỉ định nhưng trước khi thiết kế chi tiết hệ thống
Trang 30Những lợi thế của việc phát triển một đặc điểm kỹ thuật chính thức và
sử dụng điều này trong một quá trình phát triển chính thức là:
1 Khi bạn phát triển một sự hiểu biết sâu sắc và chi tiết về các yêu cầu
hệ thống Yêu cầu các vấn đề được phát hiện sớm thường là rẻ hơn nhiều để sửa chữa nếu chúng được tìm thấy ở các giai đoạn sau này trong quá trình phát triển
2 Khi các đặc điểm kỹ thuật được thể hiện bằng một ngôn ngữ với ngữ
nghĩa định nghĩa chính thức , nó sẽ tự động phát hiện ra mâu thuẫn
và bất toàn
3 Chi phí kiểm tra chương trình có thể được giảm bởi vì bạn đã xác
minh các chương trình so với đặc điểm kỹ thuật của nó
Trang 31• Phương pháp hình thức đã có tác động hạn chế về phát triển phần mềm thực tế , ngay cả đối với các hệ thống quan trọng Do đó , có rất ít kinh nghiệm trong cộng
đồng phát triển và sử dụng các thông số kỹ thuật hệ
thống chính thức Các đối số được đưa ra đối với việc phát triển một đặc điểm kỹ thuật hệ thống chính thức là:
Trang 32a) Kỹ sư phần mềm , những người hiểu các đặc điểm kỹ thuật
chính thức, có thể không hiểu các miền ứng dụng để họ cũng không thể chắc chắn rằng các đặc tả hình thức là sự phản ánh chính xác các yêu cầu hệ thống.
b) Các nhà quản lý không sẵn sàng chấp nhận rủi ro của việc áp
dụng phương pháp này.
Chi phí đặc tả hình thức:
Phát triển một đặc tả hình thức là một quá trình tốn kém khá nhiều thời gian , chỉ định một hệ thống chính thức không làm tăng đáng kể chi phí phát triển chung
Trang 33c) Hầu hết các kỹ sư phần mềm đã không được đào tạo để sử dụng ngôn ngữ đặc tả kỹ thuật chính thức
d) Khi đặc tả hình thức được sử dụng là chủ yếu để xác định phần mềm hạt nhân quan trọng hơn là hệ thống hoàn chỉnh
e) đặc điểm kỹ thuật chính là không tương thích với các phương pháp nhanh nhẹn của sự phát triển
Trang 34• điều này dẫn đến chi phí bổ sung không cần thiết trong quá trình phát triển và xác nhận.
• yêu cầu an ninh khó khăn để xác định hơn so với yêu cầu an toàn bởi vì một hệ thống tấn công có thể sử dụng kiến thức của các lỗ hổng hệ thống lập kế hoạch một cuộc tấn công hệ thống, và có thể tìm hiểu về các lỗ hổng từ các cuộc tấn công không thành công.
NHỮNG ĐIỂM CHÍNH
Trang 35• Để xác định các yêu cầu bảo mật, nên xác định tài sản đó phải được bảo vệ và xác định kỹ thuật an toàn
•Phương pháp chính của phát triển phần mềm dựa trên đặc tả hệ thống được thể hiện như là một mô hình toán học
•Trong hệ thống bơm insulin , người dùng phải thay đổi kim và insulin cung cấp đều đặn và cũng có thể thay đổi liều lượng tối đa duy và liều tối đa hàng ngày có thể được quản lý Đề xuất các yêu cầu an toàn mà
sẽ tránh được những sai sót dẫn đến tai nạn
Trang 36Một hệ thống phần mềm an toàn quan trọng để điều trị bệnh
nhân ung thư cóhai thành phần chính :
• Một máy xạ trị mang lại liều có kiểm soát bức xạ đến các trang web của khối u.Máy này được điều khiển bởi một hệ thống phần mềm nhúng
• Một cơ sở dữ liệu điều trị bao gồm các chi tiết của việc điều trị cho từng bệnh nhân
Trang 37• Xác định ba mối nguy hiểm có thể phát sinh trong hệ thống này Đối với mỗi nguy hiểm , đề nghị một yêu cầu phòng thủ
đó sẽ làm giảm xác suất mà những mối nguy hiểm sẽ dẫn đến một tai nạn
• Đề nghị các số liệu đáng tin cậy phù hợp cho các tầng lớp của các hệ thống phần mềm Đưa ra lý do cho sự lựa chọn về số liệu
Trang 38• Một hệ thống giám sát bệnh nhân trong một đơn vị bệnh viện chăm sóc đặc biệt.
• Một trình xử lý.
• Một hệ thống điều khiển máy bán hàng tự động.
• Một hệ thống kiểm soát phanh cho xe hơi.
• Một hệ thống để kiểm soát một đơn vị làm lạnh.
• Một máy phát điện báo cáo quản lý.
• Một hệ thống bảo vệ xe lửa tự động áp dụng hệ thống phanh của xe lửa nếu giới hạn tốc độ cho phép.
Trang 39Hệ thống.
• Có hai yêu cầu an toàn cần thiết cho hệ thống bảo vệ tàu:
• Các tàu sẽ không có một phân đoạn đó là báo hiệu với một ánh sáng màu đỏ
• Các tàu không được vượt quá giới hạn tốc độ quy định cho một phần của đường ray