보안/모의해킹

XSS

오현섭 2022. 3. 24. 21:04
반응형

Cross site scripting 

-공격자가 삽입 또는 제공한 악의적인 스크립트가 사용자의 브라우저에서 실행되는 취약점

공격 흐르돔 예시

발생원인 : 악의적인 스크립트 코드가 삽입된 입력값을 서버가 적절한 검증절차 없이 반환하는 것

예상피해 : 사용자의 개인정보 탈취(keylogger)  형태로 스크립트를 사용하여 키보드 입력값 탈취

 사용자의 쿠기정보 탈취 : document.cookie를 사용하여 해당 사용자의 쿠기 값 탈취

 악성코드 다운로드 또는 실행 : 악성코드 다운로드 ,링크 연결, 낮은 보안 수준에서의 자동실행

 피싱사이트로 강제이동 : location.href등을 사용하여 페이지 강제 이동

 

크로스사이트 스크립팅 공격종류

-Reflected XSS(반사형 크로스사이트 스크립팅)

-Stored XSS(저장형 크로스사이트 스크립팅)

-DOM Based XSS(DOM 기반 크로스 사이트 스크립팅)

 

Reflected XSS(반사형 크로스사이트 스크립팅)

-공격자가 악의적인 스크립트가 포함된 URL을 메신저,이메일을 이용하여 사용자에게 노출시키고

 이 URL을 클릭할 경우 스크립트가 실행되어 피해를 발생시킴

 

Stored XSS(저장형 크로스사이트 스크립팅)

-공격자가 악의적인 스크립트를 취약한 서버에 게시물형태로 등록 시킨후 사용자가 해당 게시물에 접근 시

 스크립트가 실행되어 피해를 발생시킴

 

DOM Based XSS(DOM기반 크로스 사이트 스크립팅)

-공격자가 악의적인 스크립트가 포함된 URL을 메신저, 이메일을 이용하여 사용자에게 노출시키고

 이 URL을 접근 할 경우 서버와의 상호작용 없이 브라우저에서 스크립트가 실행되어 피해를 발생시킴

 

DOM(The Document Object Model 문서 객체 모델)

 -XML이나 HTML 문서에 접근하기 위한 일종의 인터페이스

 

XSS시나리오

-피싱,악성사이트 강제이동(Reflected XSS)

 악의적인 웹을 구축 후 카카오톡이나 , 이메일을 통해 희생자가 URL을 노출시켜 접근하게 함

-사용자 쿠키정보탈취(Stored XSS) 게시판에 사용자 쿠키정보를 탈취하는 스크립트를 포함한 게시물, 열람시 쿠기정보가 공격자에게 전송)-사용자 입력 탈취(키로깅)키로거 스크립트를 사입하여 사용자가 입력하는 값을 공격자가 획득-DDOS 공격 해당스크립트가 등록된 게시물 열람시 희생자 url로 매초 마다 요청패킷을 보냄

 

XSS진단방법-javaScript 이벤트 핸들러웹페이지에서 특수한 이벤트 발생 시 코드가 실행<img src = onerror=promt("shanky")Request - Response-요청값의 사용자 입력값이 반환된는 모든 영역에 대해서 XSS 취약점 진단을 수행사용자 입력값이 서버에 저장되는 영역 점검(게시판, 메일 , 그릅웨어, 메모기능) -방화벽 필터링, 코드 점검

 

XSS취약점 막는방법-입력값 검증  개발자가 의도하지 않은 문자를 사용자가 타이핑 할 떄 HTML문서 내에서 막음 특수문자 입력 시 특수문자는  쓸 수 없습니다." alert을 띄움- 사용자 입력값이 서버로 전송될 떄 방화벽이나 서버의 코드에서 검증함  특수문자를 입력하여 요청할 떄 특수문자는 쓸수 없습니다. alert를 띄우는 응답 요청값에 script문자가 포함되어 있을떄 방화벽에서 script문자를 지우고 서버로 전송 요청값에 이벤트핸들러(onload)가 포함되어 있다면 방화벽에서 요청 패킷

-출력값 검증

사용자가 입력값을 반환할 떄 문법의 코드로서 이해하지 못하게 반환

 특수문자를 HTML Entity로 처리하여 반환

 URL 인코딩을 하여 반환

 공격 코드에 특수한 작업을 하여 반환

 

HTML Enity

-특수문자를 코드의 약속된 기호로 보지 않고 브라우저가 string으로 보게 만듬

"" : &quot

' : &aposl

< : &lt;

> : &gt;

( : &#40;

) : &#41;

 

특수문자 치환할때 XSS취약점 찾기

-모든 페이지에 대해서 특수문자 치환을 하지 않은 경우

-모든 특수문자를 취환하지 않은경우

'보안 > 모의해킹' 카테고리의 다른 글

파라미터 변조  (0) 2022.03.24
CSRF  (0) 2022.03.24
OWASP TOP 10  (0) 2022.03.23
화이트 해커  (0) 2022.03.12
칼리 리눅스(Kali Linux)설치  (0) 2022.03.10