Write
secure code using Open Web Application Security Project guidelines
Posted
29 May 2014 by Nitish Tiwar
Bài
được đưa lên Internet ngày: 29/05/2014
Lời
người dịch: “An ninh đã trở thành khía cạnh rất quan
trọng trong phát triển phần mềm gần đây, nhưng không
phải ai cũng nhận thức được các cách thức để viết
mã an ninh”. Vậy làm thế nào để viết mã cho ứng dụng
có được an ninh. Đây chính là nội cung của Dự
án An ninh Ứng dụng Web Mở
- OWASP
(Open
Web Application Security Project).
Có 4 cách để sử dụng OWASP gồm: (1)
Các
bảng tính đánh lừa;
(2) Chỉ
dẫn cho lập trình viên;
(3) Loạt
chỉ dẫn an ninh ứng dụng và
(4) Chỉ
dẫn kiểm thử.
Dự
án An ninh Ứng dụng Web Mở - OWASP (Open
Web Application Security Project) là một tổ chức từ
thiện phi lợi nhuận, tập trung vào việc thúc đẩy an
ninh phần mềm. OWASP làm việc trên các nguyên tắc của
phần mềm nguồn mở (PMNM), đặc biệt ý tưởng rằng
cộng đồng là sức mạnh sáng tạo và đóng góp. Khía
cạnh độc đặc biệt ở đây là OWASP không phải là
phần mềm, mà là một tập hợp các chỉ dẫn được
cộng đồng tạo ra để giúp cho các lập trình viên cài
cắm các vào các lỗ hổng an ninh trong mã của họ.
An
ninh đã trở thành khía cạnh rất quan trọng trong phát
triển phần mềm gần đây, nhưng không phải ai cũng nhận
thức được các cách thức để viết mã an ninh. Bạn có
thể nghĩ, “đội các lập trình viên của tôi rất có
kinh nghiệm/kỹ năng/hiệu quả, họ có thể viết 100% mã
an ninh”, nhưng nếu bạn theo các tin tức thì bạn nhận
thức được rằn thậm chí các website lớn cũng thường
xuyên bị đánh sâpọ hoặc có các dữ liệu người sử
dụng bị tổn thương. Website của bạn nên được chuẩn
bị tốt để tránh các cuộc tấn công như vậy bằng
việc tuân theo các chỉ dẫn của OWASP.
Ví
dụ: Jim là một lập trình viên làm việc trên một công
cụ phần mềm cho phép mọi người lưu thủ tục hàng
ngày của họ và theo dõi chế độ phù hợp của chúng.
Tất nhiên, ứng dụng này có một cơ chế đăng nhập/đăng
ký và một cơ sở dữ liệu để lưu các chi tiết của
người sử dụng, và các tính năng khác. Với thời hạn
chót sắp tới, Jim có ít thời gian để quan tâm về an
ninh của mã, và anh hoàn tất chức năng. Sau đó, trong khi
rà soát lại an ninh nội bộ (hoặc tệ hơn trong pha sản
xuất) vài lỗ hổng sẽ được thấy. Jim phải hứng chịu
vô số chỉ trích, nhưng liệu anh ta có đáng trách?
Lĩnh
vực lớn mà sự phát triển phần mềm đã tăng trưởng
trong đó, được kết hợp với các thời hạn chót ngày
một ngắn lại, là cơn bãod tuyệt vời cho việc sản
xuất mã mà có xu thế bị tấn công an ninh. Thậm chí các
yếu tố khác như sự bỏ qua và lười biếng ở phía lập
trình viên có thể tạo ra các lỗ hổng an ninh. Trong khi
có ít điều được làm về kích cỡ của lĩnh vực phần
mềm đang gia tăng hoặc về các thời hạn chót bị rút
ngắn lại, thì các lập trình viên có thể được huấn
luyện để viết mã an ninh bẩm sinh với các chỉ dẫn
của OWASP.
Các
lập trình viên, các nhà phân tích an ninh, và những người
khác có thể sử dụng các chỉ dẫn OWASP và cùng một
lúc, đóng góp tri thức ngược trở lại cho các chỉ dẫn.
Làm cách nào?
4
cách để sử dụng OWASP
Các
bảng tính đánh lừa chứa các dữ liệu chất lượng
cao, súc tích mả phù hợp với một tính năng cụ thể.
Bạn bỏ ra ít thời gian hơn để tìm kiếm các câu trả
lời và nhiều thời gian hơn để hiểu chúng.
Giả
sử bạn đang phát triển một tính năng “Quên mật khẩu”
(Forgot Password) cho website của bạn và tò mò biết được
các chỉ dẫn nào nên đi theo. Trong phần “Cheat Sheets”
(các bảng tính đánh lừa) trên website OWASP, hãy tra
"Forgot Password Cheat Sheet" (Quên mật khẩu bảng
tính đánh lừa).
Hãy
tìm thông tin toàn diện về phát triển phần mềm, từ
"foundation" (thành lập) tới "architecture"
(kiến trúc) tới "configuration" (cấu hình) và
"operation" (vận hành).
Chỉ
dẫn cho lập trình viên là dự án gốc OWASP, được khởi
xướng vào năm 2002.
Đây
là phần hướng dẫn bằng video trên website nhằm phân
phối các thông tin phức tạp hơn ở một định dạng số
dễ dàng. Video thường khoảng 5-10 phút độ dài và dựa
vào các khái niệm, công cụ hoặc phương pháp luận an
ninh.
Giống
như chỉ dẫn cho các lập trình viên, cũng có một chỉ
dẫn kiểm thử nhằm huấn luyện cho những người kiểm
thử cách tìm các lỗi trong các vùng sống còn về an ninh
của phần mềm.
The
Open Web
Application Security Project (OWASP) is a not-for-profit
charitable organization focused on improving software security. OWASP
works on the principles of open source software, particularly the
idea that the community is the force of creation and contribution.
The unique aspect here is that OWASP is not software, rather a set of
guidelines created by the community to help developers plug security
holes in their code.
Security
has become a very important aspect of software development lately,
but not everyone is aware of ways to write secure code. You may
think, "my team of developers is very
experienced/skilled/efficient, they can write 100% secure code,"
but if you follow the news you are aware that even bigshot websites
are regularly brought down or have their user data compromised. Your
website should be well-prepared to avoid such attacks by following
these guidelines by OWASP.
For
example: Jim is a developer working on a software tool which lets
people save their daily routine and track their fitness regime. Of
course, this app has a login/sign up mechanism and a database to save
the users' details, among other features. With deadlines closing in,
Jim has little time to care about the code security, and he finishes
the functionality. Later, during internal security review (or worse
in the production phase) several gaping holes are found. Jim had to
bear the brunt of the criticism, but was he to blame?
The
vast field that software development has grown into, combined with
shrinking deadlines, is the perfect storm for producing code that is
prone to security attacks. Even other factors like ignorance or
laziness on the part of the developer can introduce security holes.
While there is little to be done about the size of the growing
software field or about shrinking deadlines, developers can be
trained to write inherently secure code with OWASP guidelines.
Developers,
security analysts, and others can use OWASP guidelines and at the
same time, contribute knowledge back to the guidelines. How?
4
ways to use OWASP
Cheat
sheets contain high quality, concise data that is relevant to a
specific feature. You spend less time searching for the answers and
more time understanding them.
Suppose
you are developing a "Forgot Password" feature for your
website and are curious to know what guidelines should be followed.
In the "Cheat Sheets" section on the OWASP website, look up
the "Forgot Password Cheat Sheet."
Find
comprehensive information on software development, from "foundation"
and "architecture" to "configuration" and
"operation."
The
developer guide was the original OWASP project, started in 2002.
This
is the video tutorial section on the website aimed at delivering the
more complex information in an easy to digest format. Videos are
typically 5 --- 10 minutes in length and based on security concepts,
tools, or methodologies.
Like
the developer's guide, there is also a tester's guide which aims to
train testers on how to find bugs in security critical areas of the
software.
Dịch:
Lê Trung Nghĩa
Không có nhận xét nào:
Đăng nhận xét
Lưu ý: Chỉ thành viên của blog này mới được đăng nhận xét.