본문 바로가기
반응형

전체 글607

[네트워크 보안] HTTP header 분석 및 관련 공격 실습 HTTP header 분석 및 관련 공격 실습에 대해서 정리한다. - request header start-line: method sp uri sp protocol version\r\n header field - genenral header - request header or response header - entity header - request sample GET /naver/VistaNTService/x86/NAdminAPIInfo.xml HTTP/1.1 User-Agent: NUpdateBroker-Client Host: appdown.naver.com Cache-Control: no-cache - response sample HTTP/1.1 404 Not Found Date: Tue, 01 A.. 2017. 8. 1.
[PHP] 연산자 / 제어구조 ( if, while, do.. while, continue, break, switch, include, require, return ) 연산자 / 제어구조에 대해서 정리한다. - 연산자 연산자 우선순위(아래일수록 우선순위가 높음) , or xor and print = += -= *= /= .= %= &= |= ^= = ? : || && | ^ & == != === !== = > + - . * / % ! ~ ++ -- (int) (float) (string) (array) (object) @ [ new * 우선순위를 전부다 외우려고 하기보단 괄호를 쳐서 순서를 명확하게 하는게 좋다. - 연산자 종류 산술 연산자 : +, -, *, /, %(나머지) 대입 연산자 : = 비교 연산자 : , =, ==, != 증감 연산자 : ++ $a, $a ++, -- $a, $a -- 논리 연산자 : and(&&), or(||), xor, !.. 2017. 8. 1.
[네트워크 보안] HTTP 개념 및 프로토콜 분석 HTTP 개념 및 프로토콜 분석에 대해서 정리한다. - HTTP/1.1 표준안 HTTP/1.1 - 웹 해킹 수업의 기본지식을 전달 - 프로토콜의 취약점 - 1999년도 표준안 - 15년 이상을 계속 사용중 - 웹 서버 구축 1. 웹 서버 설치 - 아파치 웹 서버(httpd) 2. 기본 사용자와 홈 디렉터리 - 기본 사용자: 아파치(httpd) ( ftp와 다르게 http를 이용할때 apache 계정을 기본적으로 사용한다 ) * 그러므로 모든 사용자는 웹서버에 접속 했을때 아파치의 기본권한을 갖게 된다. - /etc/httpd/conf/httpd.conf httpd의 여러가지 설정이 들어있는 설정파일이다. - 문서 홈 디렉터리: 292 DocumentRoot "/var/www/html" 3. 기본 페이지 .. 2017. 7. 31.
[PHP] 외부 변수 사용법 / 일반 변수의 규칙 / 변수의 범위와 상수 외부 변수 사용법 / 일반 변수의 규칙에 대해서 정리한다. - 외부 변수 사용법 미리 정의된 변수는 서버 종류, 버전 등이나 기타 환경에 따라 변하는 변수를 의미하고 아파치 홈페이지나 phpinfo() 함수로 확인이 가능하다. 수퍼 전역변수 $_GET HTTP GET 방식으로 넘어온 변수 $_POST HTTP POST 방식으로 넘어온 변수 $_COOKIE HTTP 쿠키 변수 $_FILES 업로드시 파일 정보 변수 $_SESSION 세션 변수 $_SERVER 웹서버와 PHP 환경에서의 환경 설정 변수 - 외부로부터의 변수 내부에서 선언없이 외부로부터 넘어오는 값을 그대로 사용하는 변수이다. 외부 변수들에 대해서 php 사이트를 보면 더 자세한 내용을 참고 할수 있다. http://php.net/manual.. 2017. 7. 29.
[PHP] 기초문법 - 변수 / 객체에 대한 개념 php 기초문법 - 변수 / 객체에 대해서 정리한다. * PHP에서 변수를 표현할때는 변수이름 앞에 $를 붙여 표현해준다. ( 예를들어 name이라는 변수는 $name이라고 표현한다 ) * PHP에서 변수 타입은 변수 값의 내용에 따라 결정되기 때문에 따로 지정해주지 않아도 되지만 특정한 변수 타입으로 지정하고 싶을땐 아래와 같은 방법을 이용한다. - 특정 변수 타입 지정 방법 $foo = (int) $bar; (int), (integer) - 정수형으로 변환 (real), (double), (float) - 실수형으로 변환 (string) - 문자열로 변환 (array) - 배열로 변환 (object) - 객체로 변환 - 변수의 종류 진리값, 정수, 실수, 문자열, 배열, 객체, 리소스, 널 * 진리값.. 2017. 7. 29.
[네트워크 보안] FTP 통신 동작 / ncat(netcat) FTP 통신 동작 / ncat(netcat)에 대해서 정리한다. FTP ( File Transfer Protocol ) 1. 서비스 관리 - 설정: 보안 설정, QoS, ... - 취약점 존재 2. FTP 통신 - FTP Bounce Scan(Attack) - 외부에서 DMZ 공간에 있는 FTP 서버에 Active Mode를 이용해서 접근해 데이터를 전달 받는 호스트와 포트를 설정할때 자신이 아닌 접근 불가능한 내부 공간에 있는 호스트의 주소를 추정해서 입력후 프로토콜 명령어를 보내 서버에서 리턴되는 코드를 확인하며 내부에 있는 호스트들의 주소와 열린 포트를 스캔해 정보를 얻어오는 공격 방식이다. ( 현재는 FTP 패치가 이루어져 로그인한 호스트와 데이터를 전달받는 호스트가 다르면 통신이 불가능하기 때문.. 2017. 7. 29.
[PHP] APM 설치 / 동작방식 / 기초문법 및 주석 APM 설치 / 동작방법 / 기초문법 및 주석에 대해서 정리한다. - APM 설치 * APM이란 Apache, PHP, MySQL의 앞글자만 따서 만든말로 이 세가지가 서로 잘 맞아서 많이 사용한다. ( 사용하는 에디터는 따로 제한이 없어보여 Notepad++를 사용하였다 ) APM 설치에는 여러가지 방식이 있지만 http://ezphp.net/lecture/lecture1.php를 참고하여서 진행했고 설치후에 설치 디렉토리는 C:\usr 이고 홈 디렉토리는 C:\usr\www 이다. 설치는 다운로드후에 설치파일을 실행 시켜주는걸로 간단한 설치과정을 거치게 되고 설치이후에 제대로 설치 되었는지 확인해보려면 웹브라우저에서 http://localhost를 입력하게 되면 사이트 관리자가 웹서버의 설정파일에 설.. 2017. 7. 28.
[네트워크 보안] DNS Spoofing 실습 / FTP 개념 및 서버 구축 DNS Spoofing 실습 / FTP 개념 및 서버 구축에 대해서 정리한다. DNS Spoofing 출처: http://techgenix.com/understanding-man-in-the-middle-attacks-arp-part2/ 1. 외부 통신을 할때 게이트웨이를 거쳐서 나간다는점을 이용해서 ARP Spoofing을 통해 target에 ARP Cache Table을 오염시켜 게이트웨이 맥주소를 attacker의 맥주소로 Spoofing 해주고 target이 외부 통신이 되지 않는 이상증상을 의심하지 않도록 flagrouter를 이용해서 외부 통신이 정상적으로 이루어 질수 있도록 환경을 만들어준다. ( 간단하게 말해 DNS Spoofing을 하기 전에 MITM 환경을 구성해주는 과정이다 ) * M.. 2017. 7. 28.