출처: 해킹사고의 재구성 - 최상용
1. SQL 인젝션을 이용한 인증 모듈 우회
웹로그에는 SQL injection 공격이 남지 않는다. 이유는 웹 응용 프로그램 개발 시, 사용자 로그인 폼을 POST방식으로 전송하기 때문이다. POST방식은 사용자의 모든 요청 값이 기록되는 GET방식과는 달리, POST 헤더 이후의 부분은 데이터로 인식해 웹 접근 로그에 기록하지 않기 때문이다.
이런 상황에서 웹 로그만을 참고하여 SQL을 탐지하려면 다음과 같은 방법을 사용해야 한다.
1) 로그인 실패를 몇 회이상 지속적으로 할 경우 의심을 할 수 있다.
2) 에러로그에 실패 로그를 보고 의심 할 수 있다.
웹 접근 로그 분석 방법
1) 로그 중 POST 메소드가 포함되어 있는 로그만을 걸러내어 보는 방법
2) 일정부분의 로그를 추출한 다음 좀 더 정확한 정황이 발견됐을 때 첫 번째 방법으로 POST메소드가 포함된 URL만을 추출해 세부적으로 분석한다.
2. Blind SQL 인젝션을 이용한 ID/패스워드 탈취
블라인드 SQL 공격의 흔적은 웹 접근 로그에 남아 있을 수도, 그렇지 않을 수도 있다. 만약 해커가 게시판에 Blind SQL를 할 경우 로그에 '구문이 잘못되었습니다.' 라고 남을 수 있다.
즉, 동일한 URL에 대한 여러번의 연속적인 DB 오류 등이 웹 접근 로그에서 발견된다면, 이는 블라인드 SQL 공격 시도로 볼 수 있다. 또한 이러한 연속적인 시도 이후 공격을 시도했던 동일한 IP에서 관리자 로그인 URL을 호출하고 해당 URL을 호출하고 해당 URL에 대한 상태코드가 200라면 특히 로그인을 시도한 IP가 해외라면 이는 유출됐다는 사실을 추정할 수 있다.
But 공격이 수기가 아니라 Pangolin,NBSI, HDSI 같은 해킹 자동화 툴로 이뤄진 경우에는 그 툴만의 특성 있는 흔적이 웹 접근 로그에 기록이 된다.
3. 파일 다운로드 취약점 정보 유출
파일 다운로드를 위해 ../ 와 같은 시도를 할 것이며, 이러한 행위는 웹 로그에 정확히 기록된다. 그 이유는 GET 방식을 이용해 전송되기 때문이다.
'프로젝트 관련 조사 > 로그 관련' 카테고리의 다른 글
[syslog] Ubuntu rsyslog 및 시스로그 포맷 (0) | 2015.10.23 |
---|---|
웹 접근 로그 불필요한 부분 제거하고 추출하기 (0) | 2015.10.22 |
윈도우 이벤트 로그 (0) | 2015.10.21 |
How To Install Elasticsearch, Logstash, and Kibana 4 on Ubuntu 14.04 (0) | 2015.10.19 |
[Elasticsearch] 기초 컨셉 (0) | 2015.10.19 |