이제 시작이야 해킹과 침투 테스트(6)

프레임 워크란

설계의 기반이 되는 부분을 기술한  확장 가능한 기반 코드와

사용자가 이 코드를 자기 입맛대로 확장하는 데 필요한 라이브러리

이 두 가지 요소가 통합되어 제공되는 형태를 말하며,

사용자가 이를 이용해

일정 수준 이상의 품질을 보장받는 코드를, 비교적 빠른 시간에 완성 및 유지 보수할 수 있는

환경을 제공해주는 솔루션으로

"기본적인 설계나 필요한 라이브러리는 알아서 제공해 줄꺼니깐

넌 그냥 니가 진짜로 하고 싶은 기능 구현에만 전념해!"

라는 취지에서 만들어진 물건이란 것이다.


프레임 워크에는 웹에 대한 다양한 기능이 탑재되어 있다.

1. 브라우저에서 전송하는 요청을 가로채는 기능

인터셉팅 프록시를 통해 제공된다. 각 요청의 핵심 부분 중 하나는 변수이다. 이러한 벼수들이 사용자에게 어떠한 페이지를 보여줄지 결정하게 된다. 그리고 사용자 또는 공격자가 요청에 있는 변수를 추가 편집 삭제를 할 수 있다는 것을 명심하자. 또한 웹 애플리케이션이 변조된 요청을 전송 받았을 때, 어떻게 대응할지 결정하는 것도 웹 애플리케이션이라는 것을 명심하자.

2.다음은 웹페이지, 디렉터리, 그 밖에 웹 애플리케이션을 구성하고 있는 모든 파일을 찾아주는 기능이다.

이 기능의 목적은 공격 가능한 범위를 알 수 있게 해준다. 하지만 은밀성은 많이 떨어진다.

3. 다음은 웹 애플리케이션에서 전송된 응답을 분석하여 취약점을 검사하는 기능이다.

프록시의 변수값을 변조해서 웹 애플리케이션으로 전송하면 웹 애플리케이션은 어떤 방식으로든 응답을 해야한다. 이러한 응답을 분석하여 애플리케이션에 취약점이 있는지 분석한다. 


Nikto: 웹서버 정보 수집 툴

Nikto는 웹서버 취약점 스캐너다.

nikto -h target_ip -p port_number


w3af: GUI와 기능

w3af은 웹 해킹할 때 없어서는 안 될 매우 강력한 툴이다.


스파이더링 : 대상 웹사이트 정보 수집

스파이더링은 웹사이트에 어떤 링크가 있는지 그리고 어떤 파일들이 있는지 확인 할 때 유용하다.
브라우저에서 프록시를 사용하도록 설정하고 대상을 탐색해야 한다.


WebScarab : 웹 요청 가로채기

WebScarab이 프록시로 실행될 때 브라우저로 트래픽이 들어오거나 나갈 때 그 트래픽을 멈추고 가로채고 변조할 수 있게 된다.
그리고 많은 필드들이 Base 64 로 인코딩 되어 있다는 점이다. Base64는 인코딩 알고리즘이지 암호화 알고리즘이 아니기 때문에 쉽게 디코딩 할 수 있다.


코드 삽입 공격

버퍼 오버플로우와 많이 닮았다. 가장 기본적인 공격인 SQL인젝션에 대해서만 살펴볼 것이다. 해석형 언어가 무엇인지 어떻게 동작하는지를 이해하는 것이 삽입 공격을 이해하는 데 있어 핵심적인 부분이다.


XSS : 사이트를 신뢰하는 브라우저

웹 사이트에 스크립트를 삽입하는 공격이다. 마치 삽입된 스크립트가 원래 사이트 코드의 일부처럼 작동하는 것이다.


ZAP : 해킹 툴 종합선물세트

프록시, 스파이더링, 취약점 스캐닝 모두를 사용할 수 있게 해준다.
스캐너는 실제로 웹사이트를 공격하여 취약점을 확인하는 것이 아니라, 수백 개의 개념 증명 요청 패킷을 웹사이트로 전송하여 웹사이트로부터 응답 패킷을 받은 후, 이 패킷을 분석하여 취약점을 발견하는 것이다. 확인 되면 프록시를 사용하여 악의적인 요청 패킷을 직접 생성하여 웹사이트에 전송하면 해킹할 수 있게 된다.

저자가 추천한 Burp suite 또한 공부해봐야겠다.

댓글

이 블로그의 인기 게시물

윈도우 설치에서 파티션 설정 오류(NTFS)

[exploit writing] 1_스택 기반 오버플로우 (1) First

하둡 설치 오류 정리