분류 전체보기
-
<Linux 마스터 2급> 응용 계층 프로토콜Linux 마스터 2급 2021. 11. 16. 23:53
■응용 계층 프로토콜 종류 주요 기능 포트 번호 SMTP · Simple Mail Transfer Protocol · 전자우편을 송신할 때 사용하는 서버 프로토콜 25 POP · Post Office Protocol · 전자우편을 수신, 보관하기 위해 사용되는 메일 서버 프로토콜 · 사용자는 주기적으로 서버에 있는 자신의 메일 수신함을 점검하고, 수신된 메일이 있으면 클라이언트 쪽으로 다운로드 시킴 110 Telnet · CUI 기반의 원격지 컴퓨터 접속 지원 인터넷 표준 프로토콜 · 호스트에 접속하기 위해서는 도메인명, 주소 또는 IP 정보가 필요 · 특정 호스트를 사용할 수 있는 사용자 ID와 암호를 알아야 함 23 SSH · Telnet의 보안 기능을 강화 · 전송되는 데이터들이 암호화하여 전송 2..
-
<Linux 마스터 2급> 전송 계층 프로토콜카테고리 없음 2021. 11. 16. 23:37
■전송 계층 프로토콜 1. TCP(Transmission Control Protocol) · 근거리 통신망이나 인트라넷, 인터넷에 연결된 컴퓨터에서 실행되는 프로그램 간에 처리과정을 순차적이며, 안정적 으로 오류 없이 교환할 수 있게 하는 프로토콜 · 연결 지향 프로토콜, 신뢰성 프로토콜 · 전송속도는 빠르지만 UDP 보다는 느림 · FTP, Telnet, SMTP, DNS, HTTP, POP · 연결설정은 3-Way Handshaking, 연결해제는 4-Way Handshaking 2. UDP(User Datagram Protocol) · IP를 사용하는 네트워크 내에서 컴퓨터들 간에 메시지들이 교환될 때 제한된 서비스만을 제공하는 통신 프로토콜 · 비연결 지향 · 비신뢰성 · 빠른 전송 속도 · 데이..
-
<Linux 마스터 2급> 프로토콜 개요Linux 마스터 2급 2021. 11. 16. 23:33
■OSI 7 모델과 TCP/IP 모델 OSI 7 모델 기능 TCP/IP 모델 7 응용 계층 사용자에게 다양한 네트워크 서비스를 제공하기 위해 User Interface를 제공, UI로 데이터 생성 응용 계층 6 표현 계층 부호화(encoding), 압축(compression), 암호화(encryption) 5 세션 계층 종단 간 애플리케이션들의 연결 설정, 유지, 해제 4 전송 계층 종단 간 연결(end-to-end connection), 응용 계층 사이에 논리적인 통로 제공(virtual circuit) 전송 계층 3 네트워크 계층 논리적인 주소 사용, 경로 관리, 최적 경로 설정 인터넷 계층 2 데이터링크 계층 데이터 전송을 위한 형식 결정, 오류 검출 기능 제공 데이터 전송을 위하여 Media에 접..
-
<Linux 마스터 2급> 네트워크 장비Linux 마스터 2급 2021. 11. 16. 22:24
■LAN 구성 장비 1. 케이블(cable) · 보호 외피나 외장 안에 두 개 이상의 전선이나 광섬유로 묶여 있는 것 · TP(twisted pair) 케이블, 동축 케이블, 광섬유 케이블 등을 사용 - TP 케이블 : 전기적 간섭을 줄이기 위해 여러 꼬임선들을 절연체로 피복하여 구성한 케이블(UTP 케이블, STP 케이블) ex) 100 BASE FX : 속도 채널 케이블타입 SX : 단파장, LX/LH : 장파장, FX : 광전송 2. 리피터(repeater) 신호의 재생 및 증폭기능을 수행하여 물리적인 거리를 확장 3. 허브(Hub) · 신호를 노드에 전달해 주는 장비 · 네트워크 확장, 다른 허브와의 상호 연결, 신호의 증폭 등의 기능을 제공 4. LAN 카드 · 네트워크에 접속할 수 있도록 컴퓨..
-
<Webhacking.kr> old-08Wargame/Webhacking.kr 2021. 11. 16. 16:40
old-08 "hi guest"라는 메시지와 view-source만을 볼 수 있는데, view-source를 통해 페이지 소스코드를 살펴볼 수 있다. HTTP_USER_AGENT : 웹 사이트를 접속한 컴퓨터의 웹 브라우저 정보 $_SERVER['REMOTE_ADDR'] : 사이트 접속한 사용자 IP $ck는 "select id from chall8 where agent='".addslashes($_SERVER['HTTP_USER_AGENT'])."'"); 쿼리의 결과를 배열로 가져온다. $ck[0]이 'admin'이면 문제를 해결할 수 있다. 아래 부분의 쿼리를 통해 테이블의 구조를 알 수 있다. chall8(agent, ip, id) 형태를 확인할 수 있는데, 우선 지금 형태는 agent ip id ..
-
<Lord of SQL Injection> assassinWargame/Lord of SQL Injection 2021. 11. 16. 12:18
assassin GET 방식으로 전달받은 pw의 값은 싱글 쿼터(')를 필터링한다. 그리고 'id'의 값이 'admin'일 경우 문제를 해결할 수 있다. like는 특정 문자를 모르더라도 검색할 수 있는 와일드카드 %와 _를 지원한다 %는 모든 문자를 의미하고, _는 한 글자를 의미한다. A% A로 시작하는 문자열을 가져온다. A%B A로 시작하고 B로 끝나는 문자열을 가져온다. %A A로 끝나는 문자열을 가져온다. A_ A로 시작하고 뒤에 한 글자가 있는 문자열을 가져온다. A__ A로 시작하고 뒤에 두 글자가 있는 문자열을 가져온다. _A 맨 앞에 한 글자 뒤에 A가 있는 문자열을 가져온다. 먼저, pw의 길이를 찾아야 한다. _를 사용해서 ?pw=_*n 을 통해 pw의 길이를 구할 수 있다. ex)..
-
<Webhacking.kr> old-07Wargame/Webhacking.kr 2021. 11. 15. 17:38
old-07 'auth' 버튼을 누르면 "접근이 거부되었다"는 메시지를 출력한다. view-source를 통해 페이지 소스 코드를 살펴보면 GET 방식으로 전달받은 'val'의 값을 변수 '$go'라 한다. $go의 값에서 2, -, +, from, _, =, \s, *, / 를 필터링한다. 그리고 1부터 5까지를 랜덤으로 정해 각기 다른 쿼리를 실행한다. 각기 20%의 확률이므로 $rand가 1일 경우에 맞춰 문제를 풀었다. 그리고 $data[0]가 2가 되어야 문제를 해결할 수 있다. 2를 만들기 위해서는 '1+1', '3-1' 등과 같은 방법은 연산자가 필터링되기 때문에 사용할 수 없다. 2를 만들기 위해서는 chr(50), mod(5,3) 등을 이용할 수 있다. ?val=char(50)을 입력하면..
-
<Lord of SQL Injection> giantWargame/Lord of SQL Injection 2021. 11. 15. 13:02
giant GET 방식으로 전달받은 값의 길이가 1보다 크면 "No Hack ~_~"을 출력한다. 공백, \n, \r, \t를 필터링한다. \n 줄 바꿈, 개행 \r 복귀(캐리지 리턴) \t 수평 탭 shit은 from과 prob_giant사이에 들어간다. 우선 그냥 1을 입력해보면 from1prob_giant가 된다. 맨 처음 시도했던 방법은 ?shit=%09prob_giant%23로 테이블을 새로 정하고, 뒷 부분은 주석으로 처리하려 했다. 하지만, 길이가 1보다 길어 "No Hack ~_~"을 출력한다. 이 문제는 그냥 from과 prob_giant 사이에 공백을 두면 된다. 먼저 %09를 사용해 ?shit=%09를 입력하면 "HeHe"를 출력한다. %09가 공백으로 처리되어 필터링 되는 것 같다...