[질문]access_log에 이미지다운로그 없는 경우
글쓴이: locate / 작성시간: 월, 2009/11/09 - 7:35오후
서버 보안을 담당하고 있습니다.
수상한 IP가 있어서
엑세스 로그 확인 하다가
get html 파일 요청만 있고 이미지 파일은 없는데
똑같이 그 페이지에 제가 들어가면 그 html 파일에 있는 이미지도 get으로 access_log에 남게 됩니다.
get html 파일만 있는 경우는 어떤 경우일까요
IP는 중국발인데..
링크를 타지 않고 직접 URL로 들어온다 하더라도
그페이지안에 이미지 get 로그가 없는 것이 이상합니다.
Forums:
wget 으로 하기만 해도
wget 으로 하기만 해도 이미지는 안받습니다.
방법은 너무 많습니다.
emerge money
http://wiki.kldp.org/wiki.php/GentooInstallSimple - 명령어도 몇 개 안돼요~
http://xenosi.de/
https://xenosi.de/
그러면 이미지 다운
그러면 이미지 다운 로그가 없는 것은 공격으로 봐야 할까요?
무조건 공격이라고 보기도 그렇고
어떤 방법들이 있는지 간략하게 소개나
검색방법 부탁드립니다.
1. 일반이용자는 proxy
1. 일반이용자는 proxy 를 사용하지 않는다고 가정.
2. url 을 그냥 긁어가는 것은 괜찮다고 가정.
한다면, POST 값이 있을 때 HTTP/1.1 이 아니면 막아버리는 방법이 있습니다.
이렇게 하면 메타검색 긁어가는 것은 자연스럽게 안막히는 장점이 있습니다.
<?php
if(count($_POST) != 0 && $_SERVER['SERVER_PROTOCOL'] != 'HTTP/1.1') { header('HTTP/1.1 200'); echo 'thank you.'; exit; }
?>
auto_prepend_file = 'block.inc.php';
emerge money
http://wiki.kldp.org/wiki.php/GentooInstallSimple - 명령어도 몇 개 안돼요~
http://xenosi.de/
https://xenosi.de/
해결 방법까지
해결 방법까지 올려주셔서 감사합니다..
우선 제가 개발자는 아니고
보안관제 업무를 맡고있습니다.
어떤 방법으로 할때 엑세스 로그에 이미지 파일이 안남고
공격으로 봐야 하는지 부탁드립니다.
브라우저가 아니면
브라우저가 아니면 이미지 쿼리를 하지 않습니다.
브라우저라도 이미지를 안보이게 설정하면 쿼리하지 않습니다.
'공격'을 구분하려면 개발자가 의도한 순서대로 오는지 파악해야 하므로,
개발자와의 상의가 필요합니다.
예)
write.html 페이지에서만 write.post.php 로 post 되는 form 이 있으므로,
write.post.php 로의 쿼리에는 반드시 write.html referer 가 있어야 한다.
까칠하게 하려면 한도 끝도 없습니다.
외부(?)에서 막는 것 보다는 개발시에 공격에도 안전하도록 하는 것이 중요합니다.
emerge money
http://wiki.kldp.org/wiki.php/GentooInstallSimple - 명령어도 몇 개 안돼요~
http://xenosi.de/
https://xenosi.de/
음...
단순 access 로그만으로는 여러 경우가 있을 수 있기 때문에..
공격 여부를 판단하기는 어려울 것으로 보입니다.
게다가 공격으로 판정한다 하더라도 그 근거나, 피해 사실을 입증하기도 어렵습니다.
로그 몇 줄이라면 서버 포트/정보 수집을 위한 접속일 수도 있겠지만..
스크립트나 응용 프로그램의 잘못된 접속일 수도 있고.. 어쨌든 가능성은 많으니까요..
설사 HTTP DoS 라고 하더라도...
동일 IP 또는 존재하지 않는 IP 로부터의 access, 초당 access 횟수 등..
내부적으로 HTTP DoS 와 관련된 공격인지 판단하는 threshold 가 있을 겁니다..
일단은 그 IP 로부터 의심스러운 행위가 계속해서 발견된다면..
해당 IP 로부터의 모든 activity 를 주의깊게 모니터링 하거나..
block 시켜 버리는게 낫지 않을까 생각됩니다.
웹 서버 정보는 간단히 해당 포트에 접속해서 쿼리 한번 날려주면 얻어 낼 수 있습니다.
(그래서 웹 서버 설정할 때, 배너를 감추는 것도 보안에 도움이 됩니다.)
$ telnet web.server.com 80
GET /index.html HTTP/1.0 [enter][enter]
HTTP/1.1 200 OK
Date: Tue, 10 Nov 2009 12:41:08 GMT
Server: Apache/2.2.6 (Unix) PHP/5.2.4
Last-Modified: Tue, 30 Sep 2008 09:33:03 GMT
ETag: "1565308-1fa-ab95f1c0"
Accept-Ranges: bytes
Content-Length: 506
Connection: close
Content-Type: text/html
X-Pad: avoid browser bug
..
되면 한다! / feel no sorrow, feel no pain, feel no hurt, there's nothing gained.. only love will then remain.. 『 Mizz 』
되면 한다! / feel no sorrow, feel no pain, feel no hurt, there's nothing gained.. only love will then remain.. 『 Mizz 』
답변
답변 감사합니다.
엑세스만 맹신하고 있던 저에게 큰 가르침을 주셨습니다.
추가적으로
엑세스 로그를 우회하는 방법이 있는지 궁금합니다.
없습니다. 로그가
없습니다.
로그가 없는데 접근이 되었다면,
다른 방식으로 접근한 것입니다.
emerge money
http://wiki.kldp.org/wiki.php/GentooInstallSimple - 명령어도 몇 개 안돼요~
http://xenosi.de/
https://xenosi.de/
댓글 달기