'Web 모의해킹' 카테고리의 글 목록
본문 바로가기

Web 모의해킹

(17)
HTTP 웹 메소드 수동 점검 웹 애플리케이션에서 일반적으로 많이 사용하는 GET, POST 메소드 이외의 PUT,DELETE,TRACE,OPTIONS,MOVE 등 불필요한 메소드가 활성화 되어 있을 때 공격자에게 파일의 업로드 및 삭제가 가능하도록 정보를 제공해주게 된다. 그러므로 GET이나 POST 이외의 메소드(PUT,DELETE,TRACE 등)를 제거하는 것을 권고한다. PUT: 웹 클라이언트에서 웹 서버로 파일을 올릴 수 있다. 악용시에는 웹쉘을 통한 시스템 침투가 가능하다. DELETE: 웹 클라이언트에서 웹 서버의 파일을 삭제할 수 있다. 서비스에 필요한 파일을 지우게 되면 서비스거부공격(DoS)이 가능하다. CONNECT: 웹 서버가 웹 클라이언트로 HTTP 통신을 중계할 수 있다. HTTP 프록시(HTTP Proxy)..
SQL인젝션 보호되어 있는 글입니다.
Webshell 공격 웹쉘(Web shell) 파일 업로드 기능을 이용하여 시스템에 명령을 내릴 수 있는 웹 프로그램을 업로드 할 수 있는 취약점으로, 간단한 서버 스크립트 (jsp,php,asp)로 만드는 방법이 널리 사용되며 파일 업로드 시 확장자에 대한 검증을 제대로 하지 않게 되면 이 스크립트로 만든 파일이 업로드 되는 것이다. 웹쉘 설치 시 해커들은 보안 시스템을 피하여 별도의 인증 없이 시스템에 쉽게 접속이 가능하므로 위험하다. 즉, 공격자가 조작한 Server Site Script 파일을 업로드하고, 서버상에 저장된 경로를 유추하여 파일을 실행, 쉘을 획득할 수 있게 되며 쉘 권한을 획득한 후에 시스템 명령어를 홈페이지를 통하여 실행하고 그 결과값을 보며 시스템 관리자 권한을 획득 또는 인접 서버에 침입을 시도할..
SQL Injection SQL 인젝션의 정의 SQL 인젝션은 데이터베이스와 연동된 웹 애플리케이션에서 입력된 데이터에 대한 유효성 검증을 하지 않을 경우 공격자가 입력폼(게시글) 및 URL 입력란에 SQL문을 삽입하여 DataBase의 정보를 열람하거나 조작할 수 있는 취약점이다. OWASP 상위 10가지 웹 애플리케이션 보안 위협 목록 중에서도 최상위로 선정되어 있을 만큼 위협적인 취약점이다. SQL 인젝션의 공격 유형 3가지 1. 인증 우회(AB : Auth Bypass) - 대부분 아이디와 패스워드를 입력하는 로그인 페이지를 타겟으로 행해지는 공격이다. SQL 쿼리문의 TRUE/FALSE 의 논리적 연산 오류를 이용하여 로그인 인증 쿼리문이 무조건 TRUE 값이 나오게 하여 무력화 하는 원리이다. 2. 데이터 노출(DD ..
자동화 공격(AU) 자동화공격이란? 웹 어플리케이션에 정해진 프로세스에 자동화된 공격을 수행함으로써 자동으로 수많은 프로세스가 진행되는 취약점 예를 들어 게시판의 글을 수도없이 많이 남겨 정상적인 기능을 하지 못하도록 공격하는 것이다. 이 공격이 반복된다면 데이터베이스의 용량이 부족하여 서버의 과부화가 발생할 수 있다. 1. 공격하고자 하는 게시글에 접근하여 댓글을 작성한 후 프록시 툴을 통해 패킷을 잡는다. 2. "HELLO" 라는 문장 뒤에 숫자를 쓰고 자동으로 증가하는 것을 통해 공격의 여부를 판단한다. 3. 자동화 공격 실행 4. 정상적으로 자동화 공격이 실행된 것을 확인할 수 있다. 대응 방안 1. 데이터 등록이 일회성이 될 수 있도록 별도의 확인 값을 추가한다. 2. 짧은 시간에 다량의 패킷량이 전송되므로 공격으..
웹 테스트 환경 구축 *Burpsuite 를 사용하기 위해서는 기본적으로 JRE 파일을 다운로드 해야한다. Burpsuite 를 사용하기 위한 테스트 환경은 DVWA를 사용할 것이다. 윈도우/리눅스의 환경 중 리눅스를 통한 환경을 다뤄볼 것이다. 리눅스를 통한 환경 구축 Metasploitable은 리눅스 기반의 취약점 진단용 가상머신이다. VM을 설치한 후 Metaploitable 을 다운로드 하여 압축을 풀어준다. *아래 링크 참조 https://sourceforge.net/projects/metasploitable/ VMware 실행 후 File->Open을 통해 압축해제 했던 Metasploitable을 불러온다. Metasploitable 이미지를 불러오면 [그림 4]와 같이 로그인 실행화면이 나타난다. 아이디 : ..
Webhacking의 1번 문제 Webhacking 사이트에서는 여러 난이도의 문제가 있다. 각 문제마다 점수별로 나뉘어져 있고 점수가 높을수록 문제의 난이도는 더 어려운 형식이다. 하지만 1번 문제같은 경우에는 Burp를 쓰면 간단히 해결할 수 있다. Level 1의 문제. 1번 문제를 클릭하고 들어가면 [그림 1] 처럼 Level : 1 문구가 적혀있는 화면만 뜨고 아무것도 나타나지 않는다. 하지만 [그림 2]와 같이 index.phps 를 클릭했을 때 해당 소스코드가 나타난다. 위의 소스코드를 확인해보면 user_lv는 "1" 로 설정되어 있고 두번째 빨간색 칸으로 표시해놓은 화면을 보면 if문을 통해 user_lv가 5보다 크고 6보다 작아야 한다는 조건이 있는것을 알 수 있다. [그림 3]의 소스코드를 통해 얻은 힌트를 가지고..
Webhaking.kr에서 회원가입 웹해킹에 대해 관심을 갖고 계신 분이라면 한번쯤은 들어봤을 사이트입니다. 처음 입문하실 때 회원가입 하는 페이지는 나오지 않고 로그인 하는 페이지만 나오기 때문에 많이 당황하실텐데요 회원가입 하시는 방법을 설명드리겠습니다. 우선 webhaking.kr 의 URL로 접속을 합니다. 위의 [그림 1]과 같이 회원가입 하는 폼이 없고 로그인 하는 폼 화면만 있습니다. 마우스 우클릭 통해 페이지 소스를 확인해봅니다. 소스코드를 보시면 Register가 주석처리 되어 있고 join과 URL경로가 통해 뭔가 수상하다는 것을 느낄 수 있습니다. 그대로 복사하여 webhaking.kr의 URL뒤에 붙여서 입력해봅니다. 회원가입하는 폼 화면은 나타났습니다. 하지만 decode me 라는 칸에 이상한 값이 적혀있습니다. ..