- 서버 측에서 위조된 요청을 보내도록 하는 취약점 - 웹서버가 입력으로 URL을 받고 그 URL 값을 충분하게 검사하지 않고 내부 서버로 전달할 시 취약 - 취약점을 이용하여 내부 서버의 정보를 노출시키거나 서비스 거부 공격을 할 수 있다. 공격 시나리오 1. 공격자가 입력하는 URL값을 내부 서버 주소로 변경하여 전송 2. 웹서버가 입력받은 URL값을 내부 서버로 요청하고 해당 응답값을 공격자에게 전송 3. 공격자는 내부 서버의 데이터를 유출 시킬 수 있게됨 대응방안 1. 입력값 검사 - 사용자의 입력값을 그대로 사용하지 않아야 함. 화이트리스트 방식이나 블랙 리스트 방식을 통해 입력값 검사 진행 2. 접속 기록 및 열람 - SSRF 공격 징후를 탐지할 수 있는 접속 기록을 남김 3. 요청을 처리하는..
서버는 접근을 허용하는 발송처에 대한 설정을 주의하고 Cross-Origin 요청을 모두 허용할 수 있는 “Access-Control-Allow-Origin” 헤더의 값에 “*” 와 같은 패턴은 사용하지 말아야 한다. 또한, 허용하는 도메인을 명확하게 신뢰할 수 있는 사이트에 대해서만 접근을 설정(Access-Control-Allow-Origin : 신뢰할 수 있는 사이트)해야 하며 공격자는 Origin 헤더를 조작하여 요청을 발생시킬 수 있으므로 해당 헤더에만 의존한 접근 제어는 피해야 한다. 공격기법 이해를 위한 배경 기술 CORS를 이용하면 서로 다른 도메인간(웹사이트 서버) 자원 공유를 가능하게 해주며, 이는 서버 설정 중 ‘Access-Control-Allow-Origin : domain’을 통..
◎ XSS(Cross-Site Scripting) - 공격대상이 홈페이지 사용자(client)- 서버에는 영향을 주지않지만, 사이트가 변조될 위험이 있다.- 게시판 등에 악성 스크립트를 삽입하여 홈페이지 사용자(client) 측에 오작동을 일으킨다ex) 쿠키, 세션 탈취 등 ◎ CSRF(Cross-Site Request Forgery) - 공격대상이 서버- 사용자의 요청을 변조하여 해당 사용자의 권한으로 공격을 수행- 사용자의 의도와는 다르게 공격자의 의도한 행위(수정/삭제)를 특정 사이트에 요청하는 공격- 불특정 다수가 피해를 입을 수 있다ex) 권한 도용