-
10일차 - 웹 공격 기술 (1)CS지식/네트워크 2021. 5. 14. 20:25
1. 웹 애플리케이션에 대한 공격 패턴
웹 애플이레케이션을 공격하는 패턴은 크게 능동적 공격과 수동적 공격으로 나뉜다.
각각 자세히 알아보자.
1) 능동적 공격 (active attack)
능동적 공격은 공격자가 직접 웹 애플리케이션에 접근하여 공격을 하는 것이다.
대표적인 공격으로는 SQL 인젝션과 OS 커맨트 인젝션 등이 있다.
2) 수동적 공격 (passive attack)
수동적 공격은 함정을 이용해 유저가 공격 코드를 실행시키도록 하는 공격이다.
이 경우에는 공격자가 직접 웹 애플리케이션에 접근할 필요가 없다.
대표적인 수동적 공격으로는 크로스 사이트 스크립팅(XSS), 크로스 리퀘스트 포저리(CSRF) 등이 있다.
수동적 공격을 이용한다면 인트라넷(특정 단체의 소속자만 사용하는 인터넷 환경) 같은 것에도 공격이 가능하다.
2. 크로스 사이트 스크립팅(XSS, Cross-Site Scripting)
XSS는 취약성이 있는 웹 사이트를 접속한 사용자의 브라우저에서 정상적이지 않은 HTML 태그나 Javascript 등을 동작시키는 공격이다.
보통 웹 사이트에서 취약성이 발생하는 부분은 동적으로 HTML을 생성하는 부분이다.
이러한 부분에 공격자가 함정을 만들어 공격하는 수동적 공격이다.
XSS 공격에 걸리게 된다면 다음과 같은 악영향을 받게 된다.
- 가짜 입력 폼 등에 의해 유저의 개인 정보를 공격자가 훔친다.
- 스크립트에 의해 유저의 쿠기 값을 훔쳐가거나 유저가 의도하지 않는 리퀘스트가 서버에 송신된다.
- 가짜 문장이나 이미지 등이 표시된다.
3. SQL 인젝션
SQL 인젝션은 웹 애플리케이션을 이용하고 있는 데이터베이스에 SQL을 정당하지 않은 방법으로 실행하는 공격이다.
이 공격은 데이터베이스에 직접 접근하는 공격으로 개인 정보나 기밀 정보 누설과 같은 큰 피해를 입을 수 있다.
대부분 웹 애플리케이션은 데이터베이스와 연동되어 있고 데이터 검색, 추가, 삭제는 SQL을 통해 진행하여 데이터베이스에 접근한다. 이러한 SQL을 공격자가 사용하여 데이터베이스에 접근할 수 있다는 것이다.
SQL 인젝션은 다음과 같은 악영향을 끼친다.
- 데이터베이스 내의 데이터 열람 및 변조
- 인증 회피
- 데이터베이스 서버를 경유한 프로그램 실행
'CS지식 > 네트워크' 카테고리의 다른 글
URL은 무엇인가 (HTTP완벽 가이드 공부 시작!!) (0) 2021.05.21 11일차 - 웹 공격 기술 (2) (0) 2021.05.17 9일차 - 웹 콘텐츠에서 사용하는 기술 (0) 2021.05.11 8일차 - HTTP에 기능을 추가한 프로토콜 (0) 2021.05.08 7일차 - HTTP 인증 (0) 2021.05.06