본문 바로가기
반응형

프로그래밍/WEB HACKING18

[WEB HACKING] Blind SQL injection / 상황별 실습 ( 하나의 행만 출력되는 상황 / 컬럼이 하나도 출력되는게 없는 상황 / 참과 거짓도 확인이 안되는 상황 ) Blind SQL injection / 상황별 실습에 대해서 정리한다. - 타겟 페이지에서 한줄의 행만 출력이 되는 상황 * 타겟 페이지가 while()을 사용하지 않을때 union select로 실행되는 뒤에 결과인 두번째 행부터는 확인이 불가능하다. ( union select 1,2,3을 추가시켜서 실행해보면 타겟 사이트가 반복문을 사용하지 않고mysql_fetch_row도 한번바께 사용하지 않기 때문에 첫번째 행만 실행이 되는걸 확인 할 수 있다.. ) ( 이런 상황에서 다른 행의 정보를 알아내는 방법은 order by를 이용하여 여러 컬럼을 기준으로 정렬을 해주면서 정보를 알아내는 방법이 있는데 이 방법은 정렬을 할 수있는 컬럼의 갯수가 적거나 행의 갯수가 많다면 좋지못한 방법이다... limit.. 2017. 9. 6.
[WEB HACKING] Blind SQL injection 기본개념 Blind SQL injection 기본개념에 대해서 정리한다. Blind SQL injection - SELECT 쿼리에 취약점이 존재하는 경우 - DB내의 정보를 노출할 수 있는 취약점 테스트 사이트 1). DB: blind - table news - no(숫자) - title(문자) - news(문자) fnews - no(숫자) - title(문자) - news(문자) - bigo(문자) anews - no(숫자) - title(문자) ( blind DB안에 테스트 사이트에서 사용할 news 테이블과 fnews, anews 테이블을 만들어놨고 해당 구조이다.. ) ( 실습을 위해서 각 테이블마다 3개씩 데이터를 입력 해두었다... ) ! 각 테이블에는 테스트를 위한 데이터를 미리 입력( 3개정도 ).. 2017. 9. 5.
[WEB HACKING] RFI( Remote File Inclusion ) 취약점 / SQL 이용한 취약점( SQL Injection / Blind SQL Injection ) 및 다운로드 페이지 동작 과정 분석 RFI( Remote File Inclusion ) 취약점 / SQL 이용한 취약점을 알아보기전 동작 과정 분석에 대해서 정리한다. - RFI( Remote File Inclusion ) 1). 객체에 대한 직접 참조가 가능 2). 외부 입력값에 대한 검증 * 실습 결과 둘중 하나의 조건이라도 만족하지 않았다면 해당 취약점은 발생하지 않았을수 있다. - include - require - include_once - require_once ! XSS 취약점 점검 1. 블랙박스 테스팅 - 소스코드가 공개되어 있지 않은 상황에서 진행 - 소스코드를 보지 않고 취약점을 검증 2. 화이트박스 테스팅 - 소스코드를 직접 분석하여 취약점을 검증 * 두가지 방법을 다 사용하는게 안정성 측면에서 뛰어나다. - SQL을 .. 2017. 9. 2.
[WEB HACKING] 파일 업로드 우회기법 이용 방법 / 원격쉘 개념 및 종류 / RFI( Remote File Inclusion ) 취약점 파일 업로드 우회기법 이용 방법 / 원격쉘 개념 및 종류 / RFI( Remote File Inclusion ) 취약점에 대해서 정리한다. 파일 업로드 우회기법 - 파일 확장자를 우회하는 방법 - .htaccess - 공격자 파일 - 한 디렉터리에 존재 * 여러가지 방법 중 하나의 우회기법일 뿐이고 시나리오는 여러가지로 바뀔수가 있다!! 원격 쉘 1. 웹 쉘 - php 파일 업로드 취약점을 이용해서 웹쉘에 대한 간단한 개념만을 이해했다. * 보통 웹쉘의 경우 파일을 업로드 시켜 웹에서 마우스 클릭만으로 조작이 가능하다. ( 파일 업로드 취약점을 이용해서 웹 쉘의 개념을 간단히 알아보려고 한다... ) ( .htaccess는 이미 웹 서버 해당 디렉토리에 저장 되어있기 때문에 attack2.txt 파일만 .. 2017. 9. 1.
[WEB HACKING] img 태그를 이용한 CSRF / 서버측 언어를 이용한 취약점( php 파일 업로드 취약점, RFI< Remote File Include > ) / 필터링 우회 / 아파치 웹서버 설정 이해 img 태그를 이용한 CSRF / 서버측 언어를 이용한 취약점( php 파일 업로드 취약점, RFI ) / 필터링 우회 / 아파치 웹서버 설정 이해에 대해서 정리한다. img태그를 이용한 CSRF ! img, iframe, embed, ... 태그를 사용 - img 태그를 예로 들면 src 속성에 그림이 아닌 주소와 보내려는 데이터를 넣게 되면 서버로 해당 요청이 일어나게 되면서 만약 해당 img 태그가 걸려있는 게시글에 관리자가 접속하게되면 이미지를 가져와야 되기 때문에 서버로 해당 요청을 자동으로 보내게 되면서 해당 요청이 관리자 권한으로 실행이 된다. ( img 태그를 이용해서 제로보드 게시판에 CSRF 실습을 진행하기 위해서 일반회원으로 가입을 했다 ) (.. 2017. 8. 31.
[WEB HACKING] XSS 종류 및 차단 방법( 입력값 검증 ) / CSRF( Cross Site Request Forgery ) 취약점 개념 XSS 종류 및 차단 방법( 입력값 검증 ) / CSRF( Cross Site Request Forgery ) 취약점에 대해서 정리한다. XSS 종류 1). stored XSS - 게시글, 쪽지, 회원정보, ... 2). reflected XSS - 입력값이 그대로 되돌아오면서 스크립트가 실행 - 링크: shorten url을 이용해서 script를 감추는 방법 1. 기존의 보안 방식 1). 솔루션의 이용: 방화벽, 웹 방화벽, IPS, IDS, 백신, ... - 가장 오래된 전통적인 보안 방식 - 완벽하진 않지만 최소한의 보안을 위해서 사용한다.. ( 예를 들어 우리가 집에서 나올때 현관문을 잠그고 나오는 것과 비슷한 개념이라고 보면 된다 ) 2). 보안 패치 ! 일반적인 개발 과정 기획 -> 설계 -.. 2017. 8. 30.
[WEB HACKING] 제로보드 설치 / 제로보드 XSS( Cross Site Scripting ) 취약점 제로보드 설치 / 제로보드 XSS( Cross Site Scripting ) 취약점에 대해서 정리한다. 제로보드 설치 1. 클라이언트측 언어를 이용한 취약점 2. 서버측 언어를 이용한 취약점 3. SQL을 이용한 취약점 1. 제로보드 다운로드 #> wget http://192.168.12.186/zboard.tar 설치 경로: /var/www/html 2. 설치 페이지 접속 웹 브라우저: http://ip/zboard/install.php ( 제로보드가 옛날에 나온거라서 설치를 진행하기 위해서는 이전에 설정을 해줘야 되는 부분이 여러가지가 존재한다.. ) * 글자가 깨져서 나오거나 무한 refresh 되는 경우에는 설정을 통해서 수정이 가능하다. ( /etc/php.ini 설정파일에서 229 short_.. 2017. 8. 30.
[WEB HACKING] 게시판 만들기(4) 전체 코드 게시판 만들기(4) 코드에 대해서 정리한다. - 클라이언트 언어로는 HTML, JAVASCRIPT 사용 - 서버 언어로는 PHP 사용 - DB는 MySQL 사용 * 조금더 완성도를 높이기 위해서 처리할 부분들은 많이 있지만 게시판을 만들어보면서 게시판 동작 과정에 대해서 이해하려고 하였고 추후에 시간이 된다면 게시판 기능을 조금더 보완해볼 생각이다.. index.php 메인 페이지 write.php 글쓰기 페이지 signup.php 회원가입 페이지 - 게시판 전체 코드 index.php Toggle navigation 게시판 Sign in Sign out 번호 게시글 제목 작성자 작성시간 2017. 8. 29.