레이블이 웹보안인 게시물을 표시합니다. 모든 게시물 표시
레이블이 웹보안인 게시물을 표시합니다. 모든 게시물 표시

2010년 5월 6일 목요일

구글의 얄스버그 (Jarlsberg)를 통해 웹 해킹을 이해해 보자.

웹 보안에 관심이 많다면, 구글에서 개설한 Jarlsberg 사이트를 방문해 보기를 바란다.
이 페이지에서는 다음과 같은 것을 배울 수 있다.
  • 해커가 어떻게 보안 취약점을 찾는지
  • 해커가 웹 응용프로그램을 어떻게 악용하는지
  • 그리고 이 문제점들을 어떻게 멈추게 할 수 있는지 배울 수 있다.

즉, 몇년전 부터 큰 이슈가 되고 있는 웹 보안에 대해서 체계적으로 이해하고 배울 수 있도록 만들어 놓은 페이지이다.  일반적인 웹 취약점인 XSS, 정보노출, 원격코드 실행 등. 많은것을 알 수가 있다.


[출처] Jarlsberg 사이트

하나 하나 한 단계식 밟아가기 위해서는 다음 페이지를 방문하면 된다.


실제 취약점을 내포하고 있는 페이지는 http://jarlsberg.appspot.com/start 로 가면 된다. 구글의 앱 엔진이 시작되면서 Unique 한 ID 를 만들고 시작된다. 물론 이 Jarlsberg 의 소스코드도 받을 수 있다.
여기서 소개한 한 예제인 XSS 를 보면

http://jarlsberg.appspot.com/part2#2__xss_challenge 를 보면 아래와 같은 URL 을 통해 스크립트를 실행할 수 있다.


XSS 는 현재 많이 이용되는 웹 공격 방법중에 하나이며, Jarlsberg 는 어떻게 이런 일이 발생될 수 있고, 어떻게 방어해야 할지 알려준다. 구글의 이런 노력이 너무 좋다. 참 Jarlsberg 의 원래 의미를 찾아보면, 살균우유를 압착해 숙성시킨 노르웨이 하드치즈라고 한다. 발음이 어떻게 될까 했는데, 얄스버그 라고 한다.

2010년 4월 18일 일요일

구글에서 배포한 웹 보안 스캐너 Skipfish 를 이용해 보자

웹 보안 스캐너 도구를 하나 소개해 보고자 한다. 워낙 많은 도구가 존재하지만, 그 중에서도
구글이 만들어 배포하는 Skipfish 를 소개한다. 다운로드 및 세부 정보는 아래의 사이트를
방문해 보자


Skipfish 의 가장 큰 특징은 C 로 만들어져 있어 초당 2000 개 이상의 요청이 가능하다.
HTTP 핸들링에 있어 최적화 되어 있고, CPU 사용을 최소화한다. 사용이 쉽게 설계했다는
것도 Skipfish 가 자랑하는 점이며, 적은 오탐률과 뛰어난 기능을 자랑한다고 한다.

이 도구가 지원하는 스캐너 기능으로는 상,중,하의 위험도로 구분된 패턴과 내부 경고
메시지와 정보성의 메시지 정도로 구분된다. 상 위험도라 하면 서버 측면의
SQL 인젝션, 명령어 인젝션, 포맷 스트링 취약점 등이 있다.

참고로 업데이트 속도가 빠르다는 것도 장점이다. 이 도구를 소개하기 위해 접한게
1.09b 버전이었는데, 지금은 벌써 1.31 베타 버전이다. 설치는 어렵지 않게 진행할 수 있으며,
리눅스의 경우라면 컴파일 하기 위해 필요한 약간의 라이브러리 사전설치와 make 를
해 주기만 하면 된다. 필자의 경우는 libidn 이 없어 이것만 설치하고 쉽게 사용이 가능하였다.

# apt-get install libidn11-dev

# make
cc skipfish.c -o skipfish -Wall -funsigned-char -g -ggdb -D_FORTIFY_SOURCE=0 -I/usr/local/include/ -I/opt/local/include/ -O3 -Wno-format http_client.c database.c crawler.c analysis.c report.c -lcrypto -lssl -lidn -lz -L/usr/local/lib/ -L/opt/local/lib

NOTE: See dictionaries/README-FIRST to pick a dictionary for the tool.

컴파일 후, 실행을 시켜보면 아래와 같이 간단하다.
# ./skipfish
skipfish version 1.09b by <lcamtuf@google.com>
[-] PROGRAM ABORT : Scan target not specified (try -h for help).
    Stop location : main(), skipfish.c:379

특정 사이트를 대상으로 한번 실행해 보면 다음과 같은 이미지 결과를 볼 수 있다.

 
자, 그리고 skipfish 가 수행한 결과는 웹 페이지 형태로 깔끔하게 볼 수 있는데, 다양한 결과를 보여주고 있다.


웹 사이트를 초기 구축하였거나 운영중인 사이트가 있다면 Skipfish 를 통해 웹 사이트 점검을 해 보는 것은
어떨까 한다. 분명 많은 도움을 받을 수 있지 않을까 생각한다. 최소한 아무런 보안 점검 없이,
이러한 점검은 분명 사이트 안전에 큰 도움이 된다.


2010년 3월 31일 수요일

OpenSSL 1.0.0 정식버전 릴리즈

Index of /

이미지출처 : www.openssl.org

웹에서 안전한 통신을 위한 방법으로 많이 사용하고 있는 것이 SSL(Secure Socket Layer) 이다. 국내는 유독 엑티브X 를 이용한 공인인증서 방식을 많이 이용하고 있긴 하지만, 국내 밖으로 눈을 조금만 돌려보면 SSL 을 얼마나 많이 사용하고 있는지 알 수 있다.

무료로 사용가능한 OpenSSL 이 2010년3월29일에 정식버전 1.0.0 이 릴리즈 되었다.  오랫동안 0.9.X 버전에 머물면서 드디어 나온것이다. 1998년 12월23일에 OpenSSL 0.9.1.c 가 나왔으니 10년도 넘게 걸린 것이다.

수많은 오픈소스 지원자들의 도움이 없었다면 힘들었을 것이다. 이게 바로 오픈소스의 힘이며, 앞으로도 계속 유지될 것이다. 자, 딴 얘기는 그만하고 어찌되었든 1.0 정식 버전이 나왔으니 OpenSSL 을 사용하고 있었던 분들은 참고하시길 바랍니다.

나중에 SSL 트래픽을 분석하는 방법에 대해서 언급해 보도록 하겠습니다.
그럼 오늘도 힘차게 출발하세요!
/@Rigel