A. 초창기
정적인 문서를 담는 정보 저장소
서버-->브라우저 일방적 정보 제공
동일한 방식의 정보제공 è 사용자인증 필요x
웹 서버상 취약점을 이용한 공격이 대다수 BUT 정보를 훔치기 보다는 사이트나 서버 장치를
이용하기 위한 공격 (불법 파일 공유 사이트 등)
B. 현재
애플리케이션 형태
서버와 브라우저간 쌍방향 정보흐름 à 동적인 정보 생성
사용자마다 제공되는 정보가 다를 수 있음
자체개발로 인한 취약점과 개인적이고 민감한 정보를 포함하고 있다는 점에서 보안위협 존재
기능
a.다양한 기능을 사용할 수 있음
ex) 쇼핑,사교,뱅킹,웹검색,경매,도박,웹로그,웹메일,대화형 정보 등등..
b.조직 내 핵심 기업 업무를 지원 (ex.HR애플리케이션,관리자인프라,협력소프트웨어,전사적자원관리SW,오피스 애플리케이션 등등)
c.내부에서 외부 서비스로의 전환
--> 이는 잠재적 공격자에게 기업의 정보가 공개되는 보안위협을 포함함
혜택
상업적 목적에 부합하는 기술적 요소가 웹 애플리케이션의 성장의 원인임
--> HTTP의 비접속기반 특성
a. 통신장애에 강함,모든 사용자들의 접속 유지를 위해 서버의 통신 포트를 열어두지 않아도 됨, 다른 프로토콜에 프록시 방식,터널링이 되어 사용할 수 있음
b. 사용자 인터페이스 변경의 효율성
--> 수정 시, 별도의 소프트웨어 배포할 필요 없이 변경 내용을 서버에 한번만 적용하면 됨
c. 실용적이고 다양한 사용자 인터페이스 구성 가능
--> 친숙하고 숙달된 기능이므로 사용자가 따로 배울 필요 없음
d. 개발을 위한 핵심기술과 개발언어가 상대적으로 간단
--> 다양한 플랫폼과 개발도구,오픈소스도 제공되므로 초보자도 개발 가능
신기술이 발전하며 새로운 보안 취약점을 보임
가장 위험한 공격은 ‘중요한 데이터를 빼내는 것’과 ‘백엔드 시스템에 제한없이 접근하는 것‘
이런 공격은 감지하기 어려운 기술을 사용하므로, 개발자들은 특정 사용자나 서비스를 계속 체크하면서 공격자를 막을 수 있도록 해야 함
“이 사이트는 안전합니다.”
--> SSL과 PCI 표시가 있는 사이트가 과연 안전한가? à no!
일반적으로 알려진 취약점과 이를 보유한 애플리케이션의 비율
a. 인증실패(62%): 로그인 매커니즘 상 취약점. 추측가능한 비밀번호 허용, 무차별대입공격, 인증우회 허용 등
b. 접근 통제 실패(71%): 민감한 데이터,기능에 대한 불법적 사용자의 접근 통제 실패. 공격자가 서버 내 다른 사용자의 데이터 열람, 서버관리자용 업무 수행 가능
c. SQL인젝션(32%):공격자가 조작된 입력 값을 제공해 데이터베이스 등에서 원하는 명령을 수행하게 함
d. 크로스사이트 스크립팅(94%): 공격자가 다른 사용자 도용, 다른 사용자들에게 악의적 공격 수행
e. 정보 누출(78%): 애플리케이션 내부 이상으로 민감한 정보를 누출하여 공격자의 정보 수집을 도움
f. 크로스사이트 요청 위조(92%): 사용자가 악의적으로 변조된 웹사이트를 방문하여 자신도 모르는 사이에 자신의 권한으로 의도치 않은 행동을 하게 됨.
SSL은 공격자가 다른 사용자가 통신 내용을 보거나 변조하지 못하게 할 수는 있지만, 서버나 클라이언트를 통제하여 직접 공격하려 하는 것을 막지 못함.
위의 취약점들 중 한가지도 방어할 수 없음
'공부 > 웹 해킹&보안 완벽 가이드' 카테고리의 다른 글
3장. 웹 애플리케이션 기술 - 1. HTML 프로토콜 (0) | 2020.02.15 |
---|---|
2장. 웹 애플리케이션 보안 (0) | 2020.02.15 |
댓글