Notice
Recent Posts
Recent Comments
Link
«   2025/02   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28
Archives
Today
Total
관리 메뉴

보안유망주의 t스to리

XSS(Cross-Site-Scripting)취약점 본문

해킹지식

XSS(Cross-Site-Scripting)취약점

김명현 2024. 9. 9. 23:40

일단 시작하기에 앞서 왜 CSS인데 

왜 XSS라 부르는가?

라고 생각 할 수 있다.

일단 답을 주자면 

CSS라는 약어가 사용되고 있기 때문에 X를 앞에 붙여 XSS라 불리게 되었다.(먼저 태어난놈이 임자)

XSS란?

공격자(해커)가 상대방의 브라우저에 스크립트가 실행되도록 해 사용자의 세션을 가로채거나, 웹사이트를 변조하거나, 악의적 콘텐츠를 삽입하거나, 피싱 공격을 진행하는 것을 말한다.

XSS의 종류

 

일단 XSS는 주로 3가지로 나뉘는 데

1. Stored XSS (Persistent XSS)

  •  공격자가 악성 스크립트를 서버에 저장하고, 이를 다른 사용자가 서버에서 불러와 실행하는 방식이다.(클릭이나 페이지 들어가는 거로도 실행되게 할수있음.)
  • 공격 방식은 공격자(해커)가 사용자 프로필, 블로그 게시물, 댓글 등의 입력 필드에 악성 코드를 삽입하고 서버에 저장된 이 스크립트는 해당 페이지를 방문하는 사용자들에게 실행되는 방식으로 해킹된다.
  • 예시:악성사용자(해커)가 게시판에 악성 JavaScript 코드를 작성하고, 그 페이지를 방문하는 모든 사용자가 해당 스크립트의 영향(해킹)을 받는다.

2. Reflected XSS (Non-Persistent XSS)

  • 공격자(해커)가 사용자의 요청에 악성 스크립트를 포함하고, 그 스크립트가 즉시 응답에 반영되어 실행되는 방식이다.
  • 공격자(해커)가 악성 스크립트가 포함된 URL을 생성하고 이를 피해자에게 전달하는데 피해자가 URL을 클릭하면, 악성 스크립트가 서버에 요청되고 서버가 즉시 해당 스크립트를 반환해 브라우저에서 실행된다.
  • 해킹 방식--> 공격자(해커)가 검색 쿼리에 악성 코드를 삽입한 URL을 생성하고, 사용자가 이 URL을 클릭하면 페이지에서 스크립트가 실행되는 방식이다.

3. DOM-based XSS

  • 서버가 아닌 클라이언트 측에서 발생하는 XSS로, JavaScript가 동적으로 웹 페이지의 Document Object Model(DOM)을 조작하면서 발생한다.
  • 클라이언트 측 스크립트가 입력된 데이터를 처리하는 과정에서 검증되지 않은 데이터를 직접 DOM에 삽입해 공격이 발생합니다. 서버는 스크립트를 반환하지 않지만, 클라이언트 측 코드에서 취약점이 발생할 수 있다..
  • 해킹 방식-->사용자가 특정 URL을 방문하면, 브라우저 내에서 JavaScript가 DOM을 조작해 악성 스크립트가 실행된다.

 

기타 XSS 

  • Blind XSS: 공격코드가 관리자 쪽에서 발생할때 Blind XSS를 의심할수 있다 얘는 공격자도 스크립트가 어떻게 실행되는지 즉시 알 수 없지만, 대상 시스템이 특정 조건(관리자가 클릭이라던지, 확인한다던지 등등)에서 악성 스크립트를 실행하게 되는 경우가 있다

'해킹지식' 카테고리의 다른 글

블록 체인 기술이란?  (4) 2024.11.04