Session Hijacking | 세션 하이재킹
·
Hacking/Network
Session Hijacking | 세션 하이재킹Session | 세션사용자와 컴퓨터, 또는 두 대의 컴퓨터간의 활성화된 상태 즉, 특정 두 호스트 등이 연결이 지속되고 있는 상태이다. Session Hijacking | 세션 하이재킹세션 가로채기ex) 누군가 작업을 하다가 잠시 자리를 비운 pc를 몰래 사용해 원하는 작업을 하는 것현재 살아있는 세션을 가로채는 것이다.클라이언트나 서버가 알지 못하도록 해야한다. (클라이언트가 새로운 세션을 서버에 요청하면 안됨) 더보기[웹 개발 시 중요한 점]로그아웃 기능을 구현 시 단순히 "현재 페이지를 닫는다" 는 것에 집중하면 안된다.현재 연결된 세션을 끊어야한다. 즉, 서로 통신하는 두 호스트가 모두 알지 못하도록 하면서 C가 세션을 가로채야하므로 굉장히 까다롭..
Spoofing | 스푸핑
·
Hacking/Network
Spoofing | 스푸핑사전적 의미 : 속이다 ARP 스푸핑ARP (Address Resolution Protocol) : IP 주소로 MAC 주소를 찾는 프로토콜2계층 통신을 위한 프로토콜 > 서로 MAC 주소의 정보를 알아야 통신이 가능함∴ 동일 네트워크 내부망에서만 사용 가능ARP 프로토콜을 이용하여 MAC 주소를 속이는 공격 기법ARP 프로토콜이 가지는 취약성을 이용스위칭 환경에서 스니핑을 하기 위해 사용됨 (결과적으로 스니핑이 목적)MAC 주소를 속여 랜에서의 통신 흐름을 왜곡IP 주소는 의미가 없음즉, 공격하고자 하는 시스템에 서로의 IP 주소에 공격자의 MAC 주소를 넣어 공격자를 통해 소통이 되도록 한다. ARP ProtocolIP 주소에 대해서 그 주소에 해당하는 MAC 주소가 무엇인지..
Sniffing | 스니핑
·
Hacking/Network
Sniffing | 스니핑사전적 의미 : 코를 킁킁거리다수동적 (Passive) 공격 : 도청과 엿보기 네트워크를 통해서 흐르는 정보를 중간에서 가로채는 공격스니핑 공격의 종류다른 이의 대화를 엿듣는 것도청 (Eavesdropping)전화선이나 UTP에 태핑(Tapping)을 해서 전기적 신호를 분석해 정보를 찾아내는 것A에서 들어오고 나가는 모든 패킷을 감시하고 싶다.A에서 들어오고 나가는 모든 정보들이 공격자를 통해 전달이 되도록 하는 방법이 스니핑이다. 스니핑의 특징공격 대상은 스니핑 공격에 노출되어있다는 것을 알기가 어려움유선 통신망으로 연결되어 있어야함LAN 안에서만 (동일 네트워크 안에서만) 스니핑이 가능하다.패킷이 공격자를 통과해서 전달이 되도록 하려면, 항상 공격자에게도 패킷이 전송되어야하..
DoS | 서비스 거부 공격
·
Hacking/Network
DoS (Denial of Service) Ping of deathPing네트워크와 시스템이 정상적으로 작동하는지 확인하기 위한 유틸리티ICMP (Internet Control Messaging Protocol) 사용 : 호스트 서버와 인터넷 게이트웨어 사이에서 메세지를 제어하고 오류를 알려줌 > 정상적으로 전송이 되지 않으면 Reply3계층 프로토콜로, IP 프로토콜 (비연결성) 과는 다른 프로토콜이다.인터넷에서 라우터를 거치면서 전송이 되는데, 존재하지 않는 주소로 전송한다면 이 IP패킷은 없어지지 않고 머물게 된다.TTL (Time to Live) 라우터를 하나 거칠 때 마다 TTL의 수가 줄어드는데, TTL의 수가 0이 되면 패킷은 없어진다. (전송하지 않음) Ping of death윈도우 95,..
UPX packing & unpacking
·
Hacking/Reversing
Binary PackingBinary packing is the technique of compressing executable files to obscure their content, making it harder for security application to detect or analyze them.실행 파일을 압축하여 그 내용을 숨기는 기술로, 보안 애플리케이션이 해당 파일을 분석하거나 탐지하게 어렵게 만든다.바이너리 패킹은 실행 파일을 압축하고 암호화하여 그 구조를 숨기는 방식이다. 실행될 때 패커라는 소프트웨어가 파일을 압축하고 실행 시점에서 이를 다시 압축 해제하여 정상적으로 작동하게 만든다 IDA로 UPX packing된 파일을 확인하면 프로그램의 로직적인 부분이 꼬여있는 것을 확인할 수..
[ Application Layer ] HTTP
·
CS/Computer Network
Application LayerProcess : Program running within a host Client-Server 구조항상 동작하고 있는 서버가 존재하고, 클라이언트라는 다른 호스트들로부터 서비스 요청을 받는다.클라이언트는 서로 직접적으로 통신하지 않는다서버는 잘 알려진 고정 IP 주소를 갖는다.서버가 클라이언트로부터 오는 모든 요청에 더 응답하는 것이 불가능할 때, 많은 수의 호스트를 갖춘 데이터 센터가 강력한 가상의 서버를 생성하는 역할로 사용된다.Client process : process that initiates connection 통신을 초기화하는 프로세스Server process : process that waits to be connected 세션을 시작하기 위해 접속을 기다리..
Packet Switching Network Delay | 패킷 교환 네트워크에서의 지연
·
CS/Computer Network
인터넷 : 종단 시스템에서 수행되는 분산 애플리케이션에게 서비스를 제공하는 인프라 스트럭처이다.인터넷 서비스가 패킷의 손실 없이 데이터를 이동시키기 어렵기 때무넹, 컴퓨터 네트워크는 두 종단 시스템 간에 전달될 수 있는 처리율 ( 초당 데이터의 양 )을 제한한다. (bps)이에 따라 종단 시스템 간의 "지연" (delay)가 발생하고, 패킷을 잃어버리기도 한다.  DelayTransmission delay : Time required to push the packet onto the link 패킷의 첫번째 비트가 도달한 순간부터 마지막 비트가 도착할때까지의 시간 / 링크에 패킷 하나를 밀어넣는데에 걸리는 시간* 그림에서는 transmition delay가 보낼 때 발생하는 것으로 되어있는데, 우리는 도착..
Sharing the Links | 네트워크의 링크 공유
·
CS/Computer Network
Sharing the LinksWhen multiple ussers share the same link/router the packets need to be separated. 많은 종단 시스템은 같은 링크/라우터 등을 공유한다. 이를 통해 패킷들은 분리되어 링크를 통해 전달해야할 곳에 전달한다. 이 때, 같은 링크를 공유하여 데이터를 이동시키는 방법에는 두가지가 존재한다. Circuit switching Packet switching Circuit SwitchingResources that are needed for an application are reserved along its root for the duration of the communication session 회선 교환 네트워크에서는 종단..
[코딩테스트] 백준 1068번 트리
·
CS/Algorithm
문제 : https://www.acmicpc.net/problem/1068문제 노드를 지우면, 자식노드까지 전부 삭제하는 문제이다입력 & 출력5-1 0 0 1 11즉, 이 트리는 루트노드는 아무런 부모를 가지고 있지 않고, 1번 / 2번 노드는 0번 노드 (루트 노드)를 부모 노드로 가지고 있으며3번 /4번 노드는 1번 노드를 부모 노드로 가지고 있다.따라서 1번 노드를 지우게 되면 루트노드와 2번 노드만 남으므로최종 남는 리프노드의 개수는 1개이다.1 이 출력된다. 풀이#include using namespace std;int tree[51];int N;void deleteA(int x){ tree[x] = -2; for(int i = 0; i delateA라는 함수를 통해 어떠한 노드를 삭..
Network | 네트워크 (용어 및 동작)
·
CS/Computer Network
용어네트워크데이터 전송과 데이터 처리를 유기적으로 결합하여 어떤 목적이나 기능을 수행하는 시스템데이터 전송 : 컴퓨터에 의해 처리된 정보를 전송하는 것데이터 처리 : 컴퓨터에서 정보를 처리하는 것LAN(Local Area Network)LAN은 일반적으로 300m 이하의 통신 회선으로 연결된 PC 메인 프레임, 워크 스테이션들의 집합종단 시스템을 가장자리 라우터에 연결하는데 사용됨프로토콜 (Protocol) 서로 다른 시스템에 있는 두 개의 엔티티가 통신하려면 서로 동일 약속이 필요함. 이러한 통신 규약들을 의미함인터넷 정보의 송 수신을 제어한다.ex) TCP / IP패킷 (packet)송신 중단 시스템에서 수신 종단 시스템(목적지)로 보내지는 것송신 종단 시스템이 보내고자 하는 데이터를 세그먼트로 나누..