Transport Layer 개요
·
CS/Computer Network
Transport Layer의 게층 프로토콜은 네트워크 라우터가 아니라 종단 시스템 (endsystem)에서 구현된다.송신 측 트랜스포트 계층은, 애플리케이션 계층으로부터 수신한 메시지를 트랜스포트 계층 패킷으로 변환 - segment트랜스포트 계층은 송신 종단 시스템에 있는 네트워크 계층으로 세그먼트를 전달수신측에서 네트워크 계층은 데이터그램으로부터 트랜스포트 계층으로 세그먼트를 전송트랜스포트 계층은 수신 애플리케이션에서 세그먼트 내부의 데이터를 이용할 수 있도록 수신한 세그먼트 처리* 네트워크 애플리케이션에서는 트랜스포트 계층 프로토콜을 사용 가능하다 ex) TCP, UDP Transport Layer vs Network LayerTransport LayerNetwork Layer각기 다른 호스트에서..
XSS
·
Hacking/Web Hacking
XSS (Cross Site Scripting)취약점웹페이지가 사용자에게 입력 받은 데이터를 필터링하지 않고 그대로 동적으로 생성된 웹페이지에 포함하여 사용자에게 재전송 시 발생클라이언트 측에서 실행되는 언어로 작성된 악성 스크립트 코드를 포함시켜 전달 (브라우저에서 실행)악성 스크립트 코드가 웹 브라우저에서 실행됨피해쿠키를 통한 웹 사용자 정보 추출과부화를 일으켜 서버를 다운시킴피싱 공격의 일종으로 활용 Cookie | 쿠기HTTP 프로토콜은 모든 요청 / 응답이 독립적으로 시행된다.따라서 HTTP 프로토콜은 사용자의 요청이 누구의 것인지 구분할 수 없다.어떤 페이지 접속 시 사용자의 인증 정보가 필요해지면서 해결하기 위해 만든 것이 쿠키이다.인증의 성공 여부 등의 정보를 초기 인터넷에서는 쿠키를 이용..
DNS (Domain Name System)
·
CS/Computer Network
호스트 이름 (hostname) : 인터넷 호스트의 식별자로 문자로 사람들이 알아보기 쉽도록 함 ex) www.google.comIP주소 (IP address) : 호스트가 인터넷의 어디에 위치하는지에 대한 자세한 정보를 제공해줌 DNSDNS translate hostnames to IP addresses호스트 이름을 IP 주소로 변환해주는 directory 서비스DNS 서버들의 계층구조로 구현된 분산 데이터 베이스이다.호스트가 분산 데이터 베이스로 질의하도록 허락하는 애플리케이션 계층 프로토콜이다DNS runs over UDP and uses port 53 : UDP로 수행되고 포트번호 53을 이용한다.  If one DNS server that contains all the mappings 만약, 하..
SMTP & FTP
·
CS/Computer Network
SMTP와 FTP 모두 TCP를 사용한다 (HTTP도)SMTPElectronic mail Components전자 메일의 Tree components user agent : mail reader - 사용자가 메세지를 읽기, 응답, 전달, 저장, 구성이 가능하게 함ex) Outlookmail server : mail box, message queue로 이루어져 있다.mail box contains incoming msgs : 수신자의 메세지를 유지 및 관리message queue for outgoing msgs : 송신할 때 메세지 전달 전 메세지 큐에 보관simple mail transfer protocol (SMTP) : 인터넷 전자 메일을 위한 주요 애플리케이션 계층 프로토콜 Electronic mai..
리버스 텔넷
·
Hacking/Network
파일 업로드에 대한 취약성이 있는 웹서버에 사용이 가능한 네트워크 해킹의 한 종류이다. (웹해킹이라고 볼 수도 있을까?)텔넷 (Telnet) 사용자가 서버에 원격 접속을 하기 위해서 사용텔넷을 이용하여 서버에 원격 접속 요청을 하면, 사용자 인증을 한 후 쉘을 사용함* 굉장히 취약하기 때문에 대부분 막혀있음     접근 보안일반적으로 웹 서버는 방화벽 내부에 존재웹 서버는 80번 포트를 이용한 웹 서비스만 제공방화벽은 외부 인터넷을 사용하는 사용자에 대해 80포트만 허용웹 서버의 텔넷이 열려있더라도 방화벽으로 인해 공격자가 외부에서 접근 불가만약, 텔넷으로 접속할 수 있다면, 웹 서버에서 바로 쉘을 제공해줄 것이다.하지만, 방화벽 등으로 인해 공격자가 텔넷으로 직접적으로 웹 서버에 접속할 수 없기에 서버..
취약점 & 정보 수집
·
Hacking/Web Hacking
웹 해킹의 목표웹 서버 : 웹 어플리케이션 호스팅, 운영체제 상에서 동작웹 서버의 파일 구조 및 시스템 파일에 접근 목적웹 어플리케이션 : 사용자와의 상호 작용을 위해 동작하는 프로그램권한 없이 수행하고자 하는 모든 종류의 공격이 목적, 웹 어플리케이션 취약성 이용웹 사용자 : 관리자 및 외부 클라이언트 사용자웹 사용자를 목표로 기술적인 사회공학적 해킹 목적 취약점 수집웹 사이트의 정보 수집ex) 구글 검색엔진을 이용하여 파일 구조를 알아내거나, 관리자 파일을 쉽게 접근 가능한 사이트들을 찾기es) 해당 사이트의 서버사이드 언어를 알아내고 이를 통해 OS를 알아냄홈페이지에서 게시판이나 자료실, 로그인 부분 포함 여부 확인ex) 로그인 부분이 제대로 구현이 안되어있을 수 있음홈페이지 파일의 확장자 확인해당..
웹 서비스
·
Web
HTMLHyper Text Markup Language가장 단순한 형태의 웹 언어웹 서버에 HTML 문서를 저장하고 있다가 클라이언트가 특정 HTML 페이지를 요청하면 해당 HTML 문서를 클라이언트로 전송정적인 웹 페이지클라이언트의 웹 브라우저를 통해 웹 서버의 무엇인가를 바꿀 수 있는 가능성이 매우 낮기 때문에 웹을 이용한 공격이 매우 어려움SSS (Server Side Script)ASP (Active Server Page), JSP (Java Script Pages), php 등으로 개발동적인 페이지 제공ASP 또는 JSP의 확장자를 가진 웹 문서를 요청처리 결과를 HTML 파일로 만들어 클라이언트에 전송완벽하게 HTML로 완성된 페이지를 받음CSS (Client Side Script)자바스크립트..
네트워크 보안 시스템
·
Hacking/Network
네트워크 해킹은 대부분 프로토콜의 취약점을 이용하기 때문에 근본적으로 막기 어렵다방화벽보안을 높이기 위한 가장 기본적인 보안 솔루션내부 네트워크로 들어오거나 나가는 패킷에 대해서 방화벽이 정해진 룰이나 규칙에 따라 차단하거나 보내주도록 필터링하는 역할을 함주요 기능접근제어 : 관리자가 명시한 접근 정책 도는 규칙에 따라서 접근 허용 구현 방법에 따라 패킷 필터링 방식과 프록시 방식으로 구분로깅과 감사추적 : 허가나 거부된 접근에 대한 기록을 유지그 외의 추가적인 기능도 존재한다. 인증메시지 인증 :메시지의 신뢰성 및 무결성 인증사용자 인증: 패스워드를 통한 단순한 인증 (OTP), 토큰 기반 인증 (Token base)클라이언트 인증 : 모바일 사용자처럼 특수한 경우에 접속을 요구하는 호스트 자체를 정당..
무선 랜 보안
·
Hacking/Network
무선 랜Ethernet 개념으로써 보통 내부 네트워크의 확장으로써 이동내부의 유선 네트워크 AP(Access Point) 장비를 설치하여 사용Access Point와 무선 장비들이 무선으로 연결되어 있음AP를 통해서 무선 단말기와 소통함무선 랜이 있으려면 안테나가 필요하다.무선랜 프로토콜은 802.11 표준 규약을 지킨다.  SSID 우리가 와이파이 설정에 들어가면 와이파이 목록이 뜬다. 이것들이 AP이다.어떻게 AP의 목록을 알 수 있는걸까? 대부분의 Access Point들은 주기적으로 자신의 SSID를 브로드캐스팅한다. SSID(Service Set Identifier) : AP 탐색 시 나타나는 각 AP의 이름악의적인 사용자가 무선 랜 환경에 들어오게 된다면, AP에 연결된 패킷들을 쉽게 스니핑할..
Session Hijacking | 세션 하이재킹
·
Hacking/Network
Session Hijacking | 세션 하이재킹Session | 세션사용자와 컴퓨터, 또는 두 대의 컴퓨터간의 활성화된 상태 즉, 특정 두 호스트 등이 연결이 지속되고 있는 상태이다. Session Hijacking | 세션 하이재킹세션 가로채기ex) 누군가 작업을 하다가 잠시 자리를 비운 pc를 몰래 사용해 원하는 작업을 하는 것현재 살아있는 세션을 가로채는 것이다.클라이언트나 서버가 알지 못하도록 해야한다. (클라이언트가 새로운 세션을 서버에 요청하면 안됨) 더보기[웹 개발 시 중요한 점]로그아웃 기능을 구현 시 단순히 "현재 페이지를 닫는다" 는 것에 집중하면 안된다.현재 연결된 세션을 끊어야한다. 즉, 서로 통신하는 두 호스트가 모두 알지 못하도록 하면서 C가 세션을 가로채야하므로 굉장히 까다롭..