Cross-Site Scripting (XSS)
tấn công ứng dụng Web thường thành công vì các cuộc tấn công không nhận thấy
ngay lập tức. Một trong những cuộc tấn công khai thác cross-site scripting (XSS) dễ bị tổn thương. Một lỗ hổng XSS được tạo ra bởi sự thất bại của một ứng dụng trên nền web để
xác nhận người dùng cung cấp đầu vào trước khi trả lại cho hệ thống khách hàng.
110 Chương 3 Cloud Phần mềm máy tính an Fundamentals
Những kẻ tấn công có thể khai thác XSS bởi crafting URL độc hại và lừa người dùng
nhấn chuột vào chúng. Những liên kết này cho phép các ngôn ngữ kịch bản phía máy khách của kẻ tấn công,
chẳng hạn như JavaScript hoặc VBScript, để thực thi trên trình duyệt của nạn nhân.
Nếu ứng dụng chỉ chấp nhận đầu vào dự kiến, sau đó các lỗ hổng XSS
có thể được giảm đáng kể. Nhiều lỗ hổng ứng dụng web có thể được
giảm thiểu bằng cách tôn trọng những thông số kỹ thuật thiết kế thích hợp và thực hành mã hóa,
và việc thực hiện an sớm trong vòng đời phát triển của ứng dụng.
Một lời khuyên: Đừng dựa vào dữ liệu phía máy khách cho các quá trình quan trọng
trong quá trình phát triển ứng dụng ; và sử dụng một phiên mã hóa,
chẳng hạn như SSL, mà không có các trường ẩn.
Kỹ thuật Xã hội
Kỹ thuật xã hội mô tả việc mua lại các thông tin nhạy cảm hoặc đặc quyền truy cập không phù hợp bởi một người ngoài cuộc, bởi thao của người dân. Nó khai thác
khía cạnh con người tính toán, lừa người vào cung cấp thông tin có giá trị
hoặc cho phép truy cập vào các thông tin đó.
Kỹ thuật xã hội là hình thức khó khăn nhất của cuộc tấn công để bảo vệ chống lại bởi vì nó
không thể được ngăn chặn bằng phần cứng hoặc phần mềm một mình. Một công ty có thể có
quá trình rock-rắn xác thực, VPN, và tường lửa, nhưng vẫn còn dễ bị tổn thương
để tấn công khai thác các yếu tố con người.
Kỹ thuật xã hội có thể được chia thành hai loại:, tương tác người-toperson, và tương tác dựa trên máy tính của con người dựa trên sử dụng phần mềm tự động
. các nỗ lực để thiết kế các thông tin
kỹ thuật thường được sử dụng bởi kẻ xâm nhập để đạt được hoặc truy cập vật lý hoặc
truy cập hệ thống như sau:
Asserting quyền hoặc kéo rank
Professing để có quyền, có lẽ được hỗ trợ với biến đổi identifi cation, để nhập một cơ sở hay hệ thống
Attempting để đe dọa một cá nhân vào cung cấp thông tin
Praising, fl attering, hay cảm thông, chia
Using tăng cường tích cực để ép buộc một đối tượng vào việc cung cấp truy cập hoặc
thông tin để truy cập hệ thống
Một số ví dụ về các cuộc tấn công kỹ thuật xã hội thành công bao gồm những điều sau đây:
E -mails cho nhân viên từ một thử nghiệm yêu cầu mật khẩu của mình để xác nhận
các cơ sở dữ liệu của tổ chức sau khi một sự xâm nhập mạng đã xảy ra
E-mail cho nhân viên từ một thử nghiệm yêu cầu mật khẩu của mình vì
công việc đã được thực hiện cuối tuần qua trên hệ thống
Chương 3 Cloud Computing Phần mềm bảo mật cơ bản 111
An e-mail hoặc điện thoại cuộc gọi từ một người thử mạo nhận một tài offi đang
tiến hành một cuộc điều tra đối với tổ chức và yêu cầu mật khẩu
cho việc điều tra
An phát hành không đúng các thông tin y tế cho các cá nhân giả danh là
nhân viên y tế và yêu cầu dữ liệu từ hồ sơ của bệnh nhân
A kỹ thuật viên sửa chữa máy tính, người đã thuyết phục người dùng rằng các ổ cứng trên
máy tính của mình bị hư hỏng và không thể khắc phục, và cài đặt một ổ đĩa cứng mới,
lấy đĩa cứng cũ, giải nén thông tin, và bán nó cho một
đối thủ cạnh tranh hoặc chính phủ nước ngoài
duy nhất bảo vệ thực chống lại các cuộc tấn công social engineering là một thông tin
chính sách bảo mật để giải quyết các cuộc tấn công như vậy và giáo dục người dùng về các
loại tấn công.
Regression Testing
Là tiến triển phần mềm, các tính năng mới được bổ sung và các tính năng hiện có được sửa đổi. Đôi khi, những tính năng mới và sửa đổi "break" chức năng hiện có -. Nghĩa là, gây thiệt hại ngẫu nhiên với các thành phần phần mềm hiện tại
Theo IEEE Software Engineering Body of Knowledge (IEEE610.12-90),
thử nghiệm hồi quy là "kỳ thi lại chọn lọc của một hệ thống hoặc thành phần để xác minh
rằng những sửa đổi đã không gây ra tác dụng ngoài ý muốn. "Regression thử nghiệm có thể
chỉ ra rằng phần mềm mà trước đó đã thông qua các bài kiểm tra không còn làm. Các
mã vấn đề sau đó có thể được xác định và cố định để khôi phục lại các chức năng bị mất. Tuy nhiên, như phần mềm phát triển, một lỗi mà trước đây fi cố định đôi khi
"reemerges." Kiểu này tái xuất hiện các lỗi thường gặp và xảy ra cho một
số lý do, bao gồm:
kiểm soát sửa đổi Poor practices- Việc sửa chữa được không ghi đúng cách
hoặc các thay đổi đã được vô tình đảo ngược.
Software brittleness- Việc sửa chữa cho các lỗi ban đầu quá hẹp trong
phạm vi. Khi bị lão hóa phần mềm và các mã cơ bản phát triển rộng hơn (trở thành
"di sản" phần mềm), các vấn đề mới nổi lên có liên quan đến các lỗi ban đầu
nhưng là sùng bái diffi hơn tôn giáo để fi x mà không ảnh hưởng tiêu cực đến các khu vực khác của
phần mềm.
Repetition mã Problematic mistakes- đôi khi được sao chép từ
một vùng của các phần mềm khác; hoặc khi một tính năng được thiết kế lại,
cùng một sai lầm được thực hiện trong những thiết kế mới đã được thực hiện trong bản gốc
thực hiện các tính năng.
112 Chương 3 Fundamentals Cloud Phần mềm máy tính An ninh
tăng độ che phủ thực thi mã thử nghiệm hồi quy có thể giúp ngăn chặn
sự tái xuất hiện của các phần mềm lỗi. Ví dụ, kiểm tra hồi quy có thể được thay đổi - chẳng hạn như bằng cách đưa dữ liệu mẫu mới hoặc kết hợp các xét nghiệm - để bắt
những vấn đề đó đã bị bỏ lỡ với các xét nghiệm hiện có. Bằng cách này, thử nghiệm hồi quy
sẽ không chỉ xác minh rằng các xét nghiệm trước đó vẫn còn làm việc, mà còn giảm thiểu các nguy cơ
tác dụng phụ không mong muốn gây ra bởi những thay đổi.
Đối với bảo đảm hơn, kiểm tra hồi quy cũng cần được mở rộng hơn cho
mã xung quanh các bản sửa lỗi lỗ hổng, mã có thể chứa cùng lớp
dễ bị tổn thương, và các khu vực hậu quả cao khác của phần mềm. Một hồi quy
kế hoạch kiểm tra an ninh cần phải được phát triển có sử dụng sai / trường hợp lạm dụng và
các kịch bản tấn công (một phần dựa trên mô hình tấn công có liên quan). Trường hợp kiểm tra trước đó có thể
được tăng cường bởi sự lạm dụng / trường hợp lạm dụng mới và các tình huống tấn công đề nghị
bởi các cuộc tấn công trong thế giới thực mà đã xuất hiện từ các phần mềm đã được kiểm tra lần cuối.
Regression thử nghiệm thường được thực hiện bởi các bên liên quan khác nhau trong các phần mềm
chu kỳ cuộc sống. Trong giai đoạn mã hóa, lập trình chạy thử nghiệm đơn vị để xác minh rằng
các đơn vị cá nhân của mã nguồn được làm việc đúng cách. Đơn vị là nhỏ nhất
có thể kiểm chứng một phần của phần mềm, thường là một chức năng hoặc các phương pháp và Encapsulated của
dữ liệu. Đơn vị kiểm tra như một phần của một phương pháp phát triển phần mềm, chẳng hạn như
lập trình cực đoan, thường dựa vào một đơn vị khuôn khổ kiểm tra tự động, chẳng hạn như JUnit (www.junit.org). Các khuôn khổ kiểm tra đơn vị tự động
tích hợp với một IDE và cho phép các nhà phát triển để tạo ra một sơ khai cho một đơn vị
thử nghiệm mà sau đó có thể được hoàn thành với dữ liệu mẫu và thêm logic kinh doanh.
Trong phát triển thử nghiệm điều khiển, mã đơn vị cần được tạo ra cho mỗi đơn vị phần mềm.
Khi một lập trình viên sau kỷ luật này, nó có thể dẫn đến việc mã hóa tự tin hơn, và cho phép một lập trình để xác minh rằng một lỗi đã được cố định trước đó trong
chu kỳ sống (giảm chi phí phát triển tổng thể).
Ở cấp độ hệ thống, kiểm tra hồi quy là một hình thức chức năng kiểm tra rằng các
đội bóng đảm bảo chất lượng phần mềm thực hiện bằng cách sử dụng một thử nghiệm bộ phần mềm tự động.
Thông thường, nếu một lỗi phần mềm được phát hiện trong quá trình thử nghiệm, nó được gửi đến các hệ thống theo dõi lỗi, và giao cho một lập trình để khắc phục.
Một khi các lỗi là cố định, các phần mềm cần phải được chạy qua tất cả các hồi quy
các trường hợp kiểm tra một lần nữa. Do đó, sửa chữa một lỗi ở khâu đảm bảo chất lượng
là đắt hơn trong quá trình mã hóa.
Theo Hiệp hội IEEE Computer, thử nghiệm được định nghĩa là "một hoạt động
được thực hiện để đánh giá chất lượng sản phẩm, và để cải thiện nó, bằng cách xác định
các khuyết tật và các vấn đề. Kiểm thử phần mềm bao gồm việc xác minh năng động của
các hành vi của một chương trình trên một tập hữu hạn các trường hợp thử nghiệm, phù hợp được lựa chọn từ các
miền hành thường vô hạn, chống lại các hành vi mong đợi. "
27
thử nghiệm phần mềm bảo mật liên quan đến việc kiểm tra để đảm bảo chất lượng thông qua chức năng, hộp màu trắng và hộp đen, môi trường và kiểm tra lỗi. Thâm nhập
kiểm tra, fuzzing, và thử nghiệm mô phỏng tiến hành bổ sung bởi hệ thống đám mây
quét cung cấp thêm công cụ kiểm tra phần mềm an toàn.
Chương 3 Cloud Computing Phần mềm bảo mật cơ bản 113
Cloud Computing và liên tục kinh doanh
Hoạch định / phục hồi thảm họa
kế hoạch kinh doanh liên tục (BCP) và lập kế hoạch khôi phục thảm họa ( DRP)
liên quan đến việc chuẩn bị, kiểm tra, và cập nhật của các hành động cần thiết để bảo vệ các quá trình kinh doanh quan trọng từ những tác động của hệ thống và mạng lưới lớn
thất bại. Từ góc nhìn đám mây, các quy trình kinh doanh quan trọng là
phụ thuộc nhiều vào các ứng dụng dựa trên đám mây và phần mềm mạnh mẽ và
an ninh. BCP bao gồm xác định phạm vi và bắt đầu lập kế hoạch, tiến hành một
đánh giá tác động kinh doanh (BIA), và phát triển các kế hoạch. DRP bao gồm
phát triển các quá trình DRP, kiểm tra kế hoạch và thực hiện các thảm họa
thủ tục phục hồi.
Thiết kế, phát triển và triển khai thực hiện có chất lượng và hiệu quả BCP và DRP
là một chủ trương lớn, liên quan đến nhiều người-giờ và trong nhiều trường hợp,
phần cứng cao hoặc chi phí phần mềm. Những nỗ lực và chi phí là đáng giá và
cần thiết, nhưng chúng ảnh hưởng đến một số lượng lớn các nguồn lực tổ chức. Đám mây
máy tính cung cấp một thay thế hấp dẫn cho tổng số, trong nhà BCP / triển khai DRP. Trước khi tìm kiếm giải pháp điện toán đám mây để BCP / DRP, điều quan trọng là
để thiết lập các định nghĩa cơ bản của điều khoản liên quan chủ chốt.
đang được dịch, vui lòng đợi..
