본문 바로가기
프론트기술

OWASP Top10 2010

by RevFactory 2010. 2. 22.


■A1 - Injection
Injection flaws, such as SQL, OS, and LDAP injection, occur when untrusted data is sent to an interpreter as part of a command or query. The attacker’s hostile data can trick the interpreter into executing unintended commands or accessing unauthorized data.

인젝션(악성코드 삽입)
SQL, OS, 그리고 LDAP(Lightweight Directory Access Protocol)* 인젝션등의 인젝션 결함들은 신뢰하지 못하는 데이터들이 명령또는 쿼리 부분인 인터프리터로 보내졌을때 발생한다.
공격자의 악성데이터는 인터프리터를 속여 의도하지 않은 명령어를 실행하거나 인증되지 않은 데이터에 접근 할 수 있다.

*LDAP(Lightweight Directory Access Protocol)
TCP/IP 위에서 디렉터리 서비스를 조회하고 수정하는 응용 프로토콜


■A2 - Cross Site Scription(XSS)
XSS flaws occur whenever an application takes untrusted data and sends it to a web browser without proper validation and escaping. XSS allows attackers to execute script in the victim’s browser which can hijack user sessions, deface web sites, or redirect the user to malicious sites.

크로스 사이트 스크립션
XSS* 취약점은 애플리케이션이 신뢰하지 않은 데이터를 사용자로부터 받고 그것이 적절한 검증없이 웹브라우저로 보내질때마다 발생한다. XSS는 공격자가 희생자의 브라우저안에서 스크립트를 실행하는 것을 허용하여 사용자의 세션을 가로채거나 웹사이트들을 손상시키고 또는 사용자를 악의적인 사이트에 리다이렉트 시킨다.

*XSS(Cross-Site Scripting)
XSS는 웹 서비스 상의 취약점 중 하나이며 사용자로부터 입력받은 값을 검증하지 않고 그대로 사용할 경우 나타난다.


■A3 - Broken Authentication and Session Management
Application functions related to authentication and session management are often not implemented correctly, allowing attackers to compromise passwords, keys, session tokens, or exploit implementation flaws to assume other users’ identities.

훼손된 인증 및 세션 관리
인증, 세션과 연관된 애플리케이션 기능들의 관리는 종종 올바르게 이행되지 못해서 공격자가 패스워드, 키, 세션 토큰등을 조작하는 것을 허용하여, 공격자는 다른 사용자의 신분을 취득해 부당하게 이용한다.


■A4 - Insecure Direct Object References
A direct object reference occurs when a developer exposes a reference to an internal implementation object, such as a file, directory, or database key. Without an access control check or other protection, attackers can manipulate these references to access unauthorized data.

안전하지 못한 직접객체 사용
직접 객체 참조는 개발자가 파일, 디렉토리, 또는 데이터베이스 키와 같은 내부 구현객체로의 참조를 노출시킬때 발생한다. (이러한 객체들에 대한) 접근통제 확인 또는 다른 보호가 없이는 공격자는 인증받지 못한 데이터들을 엑세스 하기 위해 이러한 참조들을 조종할 수 있다.


■A5 - Cross Site Request Forgery(CSRF)
A CSRF attack forces a logged-on victim’s browser to send a forged HTTP request, including the victim’s session cookie and any other authentication information, to a vulnerable web application. This allows the attacker to force the victim’s browser to generate requests the vulnerable application thinks are legitimate requests from the victim.

크로스 사이트 요청 변조
CSRF는 공격은 희생자의 세션 쿠키와 다른 인증 정보들을 포함하는 변조된 HTTP요청을 취약한 웹 애플리케이션으로 보내기 위해 로그인된 희생자의 브라우저를 변조한다. 이것은 희생자의 브라우저에 희생자로부터의 적법한 요청으로 생각하는 취약한 애플리케이션 요청을 생성하도록 허용한다.

 
■A6 - Security Misconfiguration
Security depends on having a secure configuration defined for the application, framework, web server, application server, and platform. All these settings should be defined, implemented, and maintained as many are not shipped with secure defaults.

보안설정 미흡
보안은 애플리케이션, 프레임워크, 웹서버, 애플리케이션 서버, 플랫폼을 위해 정의되어진 보안 설정에 달려있다. 모든 이러한 셋팅들은 디폴트값으로 두지말고 정의하고 구현되고 언급되어야만 한다.

*웹애플리케이션, 운영체제, 프레임워크 등 다양한 부분들의 보안을 적절하게 구성하지 못하여 이를 이용하는 위협 요소를 말합니다.

■A7 - Failure to Restrict URL Access
Many web applications check URL access rights before rendering protected links and buttons. However, applications need to perform similar access control checks when these pages are accessed, or attackers will be able to forge URLs to access these hidden pages anyway.

URL 접근제한 실패
많은 웹 애플리케이션들은 URL 접근 권한을 보호된 링크나 버튼을 보여주기 전에 체크한다. 반면에 애플리케이션들은 이러한 페이지들이 엑세스 되어질때나 공격자들이 숨겨진 페이지 URL을 엑세스 하도록 위조하려고 할때에 유사한 엑세스 제어 체크를 수행하는 것이 필요하다.

■A8 - Unvalidated Redrects and Forwards
Web applications frequently redirect and forward users to other pages and websites, and use untrusteddata to determine the destination pages. Without proper validation, attackers can redirect victims to phishing or malware sites, or use forwards to access unauthorized pages.

사용자가 웹사이트를 이용할 때에는 다양한 웹페이지로 이동하게 됩니다. 이러한 이동시에 적절하게 확인 절차를 거치지 않는 경우에 공격자는 피싱 페이지와 같은 공격을 가할 수 있습니다.

■A9 - Insecure Cryptographic Storage
Many web application do not properly protect sensitive data, such as credit cards, SSNs, and authentication credentials, with appropriate encryption or hashing. Attackers may use this weakly protected data to conduct identity theft, credit card fraud, or other crimes.



■A10 - Insufficient Transport Layer Protection
Applications frequently fail to encrypt network traffic when it is necessary to protect sensitive communications. When they do, they sometimes support weak algorithms, use expired or invalid certificates, or do not use them correctly.

불충분한 전송 레이어 보호
애플리케이션들은 민감한 커뮤니케이션을 보호하려할때 부호화하는 것이 빈번하게 실패한다.
부호화 할때, 때때로 기간이 지나거나 효력이 없는 인증을 사용하고, 또는 올바르지 않은 것들 을 사용하는 약한 알고리즘을 제공한다.


출처 : http://www.owasp.org

'프론트기술' 카테고리의 다른 글

2020년도 Javascript 현황 조사  (0) 2021.01.23
JSP 인코딩 정리  (0) 2012.10.27
한국형 웹 컨텐츠 접근성  (0) 2010.02.17