xss공격과 sql injection은 웹 해킹의 대표적인 기법이다. 이 두 가지 보안이슈에 대해 알아보았다.



XSS 공격 (Cross Site Scripting)

 CSS라고 말하는 곳도 있지만 CSS는 이미 Cascading Style Sheets의 약어로 쓰이고 있기 때문에 혼동을 방지하고자 보통 XSS라고 한다. XSS는 공격하고자 하는 사이트에 악의적인 스크립트를 삽입하여 비정상적인 페이지가 보이게 함으로써 타 사용자의 사용을 방해하거나 쿠키 및 기타 개인정보를 탈취하는 기버법이다. 여러 사용자가 접근 가능한 게시판 등에 코드를 삽입하는 경우도 많으며, 메일과 같은 매체를 통해서도 전파된다.


 간단하게 id를 입력하면 해당 id를 출력해주는 사이트가 있다고 가정하자. 보통의 사용자는 id만을 입력하겠지만 입력창에 <script>alert(1);</script>를 입력하면 그대로 script가 실행되는것을 볼 수 있다. 이러한 형식으로 해커들은 쿠키정보 및 세션ID 획득, 악성코드 다운로드, 개인정보를 빼가는 거짓 페이지를 노출하는 등의 해킹을 할 수 있다.



SQL-Injection

 말 그대로 sql문에 의도적인 쿼리를 삽입하여 공격자가 원하는 데이터를 얻는 기법이다. 대표적으로 아이디와 패스워드를 입력하는 로그인 페이지를 타겟으로 sql 쿼리문의 true/false의 논리적 연산 오류를 이용하여 로그인 인증 쿼리문이 무조건 true의 결과값이 나오게 하여 인증을 무력화시키는 기법이 있다. 로그인을 할 때 입력창에

' or 1=1--

' or 1=1#

' or 2>1--

등을 입력하면 이를 막아놓지 않은 사이트에서는 쿼리문이 항상 true가 되어 아이디와 비밀번호를 몰라도 로그인을 할 수 있게 된다.


 이외에도 많은 방법으로 데이터를 해킹한다. 아래 링크를 참고하면 좋을 것 같다.


참고 - http://mrrootable.tistory.com/25

+ Recent posts