웹 애플리케이션 보안

·2023년 7월 2일

웹 보안 공부

목록 보기
1/1

🖥️ 웹 애플리케이션 보안 이슈

🤍 자주발견되는 웹 사이트 취약점

1. 인증 실패- 62% 로그인 매커니즘의 취약점. Brute Force attack, 인증 우회
2. 접근 통제 실패 - 71% 서버 내 다른 사용자의 민감 데이터 열람, 서버 관리자용 업무 수행 권한 획득
3. SQL 인젝션 - 32% DB 연동 과정에서나, DB서버가 공격자가 원하는 행위를 수행하게 하는 취약점
4. 크로스 사이트 스크립팅(XSS) - 94% 다른 사용자 명의의 도용, 방문자에게 악의적인 공격을 수행하는 취약점
5. 정보 누출 - 78% 앱 내부의 에러 처리 결함 등으로 인하여 민감 정보를 공격자에게 누출, 공격자가 공격을 위한 정보 수집에 도움을 주는 취약점
6. 크로스 사이트 요청 위조(CSRF) - 92% 사용자가 자신이 모르는 사이 앱에 의도치 않은 행동 수행

🤍 보안 문제의 핵심 - user

  • 클라이언트측에서 제공되는 정보는 쉽게 변질될 수 있으며, 이를 그대로 믿는 것은 위험하다.
  • 사용자는 요청 값을 임의적인 순서로, 개발자가 원하는 대로 보내지 않는다.
  • 웹 앱 접근을 위해 사용되는 웹 브라우저별 공격 도구
    => 조작된 입력 값 ( HTML 폼 빌드 보이지 않는 값 변조, HTTP 쿠키 내 세션 토큰 조작, 정상적 특정 값 제거, 악의적 DB 쿼리 삽입 )

📑 웹 2.0

사용자 생성 콘텐츠, 정보를 공유할 수 있게 만드는 기능 및 비동기화 HTTP 요청, 상호 도메인 결합 등의 기술 적용 통칭

🖥️ 핵심 방어 메커니즘

  • 사용자 접근 처리
  • 사용자 입력 값 처리
  • 공격 대상에 대한 방어와 공격자 처리
  • 실시간 모니터링 기능

🤍 사용자 접근 처리

1. 인증
사용자가 자신에 대한 정보를 제공하는 것
=> 낮은 수준의 보안 : id, password 값 입력
=> 높은 수준의 보안 : 클라이언트 인증, 스마트 카드, 시도 응답 토큰

  • id, psw 값 추측
  • 로그인 로직 내 결함 악용, 인증 우회

2. 세션 관리

  • 사용자 요청 처리를 위하여 사용자를 위한 세션 생성 또는 세션 확인 토큰 발행
    🔑 session - 서버에 할당되어 있는 데이터 집합의 구조. 앱과 사용자 간 상호 작용을 도와주는 데 사용
    🔑 token - 앱 세션에 나타나는 독특한 문자열

📑 사용자 시나리오

  • 사용자가 서버에서 고유 토큰 획득, 브라우저가 고유 토큰을 서버에 전달
  • 앱은 토큰을 받은 사용자의 HTTP 요청을 받아 사용자 식별 및 서비스 제공 가능

for 앱의 HTTP 요청 처리 히든 필드, URL 쿼리, HTTP 쿠키

3. 접근 통제
강력하고, 다양한 요소를 고려해 구현하는 것이 중요!

profile
화이트해커 엘입니다😉

0개의 댓글