Yozzang의 해킹일기 💻
article thumbnail
Network Layer (네트워크 계층)
Networking 2022. 4. 9. 00:22

이번 포스트에서는 Network Layer에 대해 다루도록 하겠습니다. Network Layer의 주요 역할 : 패킷 전달(Packet Forwarding) : 종단 간(END-TO-END)의 패킷 전달 라우팅(Routing) : 종단 간 패킷을 전송할 때, 라우팅 프로토콜을 기반으로 가장 효율적인 경로를 선택하여 패킷을 전송할 수 있게 함. 논리적인 주소(Logical Address) 사용 : IP 주소를 사용하여 사용자 데이터를 목적지 장치까지 전달. Network Layer 논리 주소 사용시의 동작 과정 : Transport 로부터 segment를 전달 받음 전달 받은 세그먼트를 캡슐화(헤더를 붙이는 작업)해서 데이터그램으로 바꿈 network -> datalink -> physical -> phy..

article thumbnail
Network Core
Networking 2022. 4. 8. 00:14

이번 포스트에서는 Network Core(라우터의 집합)에 대해 다루도록 하겠습니다. 데이터는 어떻게 인터넷을 통해 전송되었을까? 그 해답은 바로 Circuit switching과 Packet switching입니다. Circuit switching 이란? : circuit switching은 유일한 경로를 통해 데이터를 전송합니다. 즉, 목적지까지 가는 경로가 단 하나뿐인 것입니다. 통신하기 전에 먼저 연결을 해야 하며 연결이 되고 나면 출발지(source)로부터 목적지(destination)까지 도착하는데 사용되는 회선 전체를 독점(dedicated)하기 때문에 다른 사람은 끼어들 수 없습니다. Circuit switching 의 특징 : 전용 리소스 (공유 X) 일정한 성능 Call setup 요구..

article thumbnail
TCP & UDP
Networking 2022. 4. 7. 18:05

이번 포스트에서는 네트워크의 전송(Transport) 계층에서 사용하는 프로토콜인 TCP와 UDP에 대해 다루도록 하겠습니다. TCP 이란? : TCP는 Connection-oriented service(연결형 서비스)를 기반으로 하고 있습니다. 즉, 데이터를 전송하는 데에 있어 높은 신뢰성을 보장하고 있습니다. TCP의 특징: In-order byte-stream(순서대로 받기) Flow control(흐름 제어) : 데이터를 송신하는 곳과 수신하는 곳의 데이터 처리 속도를 조절하여 수신자의 버퍼 오버플로우를 방지하는 기법 Congestion control(혼잡 제어) : 네트워크 내의 패킷 수가 넘치게 증가하지 않도록 방지하는 기법 높은 신뢰성 보장 전이중(Full-Duplex), 점대점(Point ..

article thumbnail
TCP/IP Protocol Model
Networking 2022. 4. 7. 00:28

이번 포스트에서는 TCP/IP의 Protocol Model에 대해 다루도록 하겠습니다. TCP/IP Protocol Model : 네트워크의 복잡한 기능을 세부적으로 나눠서 처리하게 해주는 모델 TCP/IP 프로토콜 모델의 구성은 다음 그림과 같이 총 5개의 Layer로 구성되어 있습니다. 각 층(Layer)마다 다른 기능을 제공하고 있습니다. L5(Application) : 사용자(응용프로그램)가 OSI 환경에 접근할 수 있도록 서비스를 제공한다. L4(Transport) : 논리적 안정과 균일한 데이터 전송 서비스를 제공함으로써 종단 시스템(End-to-End)간에 투명한 데이터 전송을 가능하게 한다. L3 (Network) : 네트워크 연결을 설정, 유지, 해제하는 기능 및 경로 설정(Routing..

article thumbnail
Antialiasing (안티에일리어싱)
Computer Graphics 2022. 4. 6. 00:02

이번 포스트에서는 Antialiasing에 대해 다루도록 하겠습니다. Antialiasing : 컴퓨터 그래픽스는 디지털 단위로 이미지를 출력하기 때문에 어쩔 수 없이 Aliasing(계단 현상)이 발생합니다. Antialiasing은 이를 제거 또는 완화하기 위해 제작된 기술입니다. 대표적인 Antialiasing 기술로는 Unweighted Area Sampling과 Weighted Area Sampling이 있습니다. Unweighted Area Sampling (동일 가중치 샘플링) : 영역 내부 모든 곳에 동일한 가중치를 부여하는 방법 동일 가중치 샘플링은 다음과 같은 순서로 진행됩니다. 하나의 픽셀을 가로, 세로로 3등분 해서 9개의 서브 픽셀로 만든다. (Supersampling) 선분 스캔..

article thumbnail
Clipping Polygons (다각형 클리핑)
Computer Graphics 2022. 4. 5. 19:20

이번 포스트에서는 여러 Clipping Polygons Algorithm에 대해 다루겠습니다. Sutherland Hodgman Algorithm : 오른쪽, 아래쪽, 왼쪽, 위쪽 경계에 대해 차례대로 클리핑해주는 것입니다. 해당 알고리즘을 좀 더 상세하게 보자면 다음 그림과 같습니다. Case 1 : Inside -> Inside, p 꼭지점을 새로운 꼭지점으로 변경 Case 2 : Inside -> Outside, i 교차점을 새로운 꼭지점으로 변경 Case 3 : Outside -> Outside, 변화 없음 Case 4 : Outside -> Inside, i 교차점 및 p 꼭지점을 새로운 꼭지점으로 변경 그러나 Sutherland-Hodgman Algorithm을 사용하여 오목 다각형을 처리하면..

article thumbnail
[명령어] whoami, who, clear
Operating System/Linux 2022. 4. 4. 13:47

이번 포스트에서는 리눅스의 명령어인 whoami, who, clear에 대해 다루도록 하겠습니다. whoami : 현재 로그인한 사용자의 ID를 출력하는 명령어 실행 화면 : who : 호스트에 로그인한 사용자의 정보를 출력하는 명령어 주요 옵션 : -a : (--all) 전체 정보 출력 -b : (--boot) 마지막 시스템 부팅 시간 출력 -d : (--dead) 죽은 프로세스 출력 -q : (--count)로그인한 사용자와 사용자 수를 모두 출력 -s : (--short) 이름, 행, 시간 정보만 출력 -t : (--time) 마지막으로 변경한 시스템 시간 출력 실행 화면 : clear : 터미널의 내용을 모두 지우는 명령어 실행 화면 :

article thumbnail
[명령어] date, hostname, uname
Operating System/Linux 2022. 4. 4. 13:30

이번 포스트에서는 리눅스의 명령어인 date, hostname, uname에 대해 다루도록 하겠습니다. date : 현재의 날짜 및 시간을 확인 명령어 주요 옵션 : +%Y-%m-%d : 날짜 출력을 YYYY-MM-DD 포맷으로 출력 +%H:%M:%S : 시간 출력을 H(시)-M(분)-S(초) 포맷으로 출력 실행 화면 : hostname : 호스트 정보 확인 명령어 주요 옵션 : -i : (--ip) 호스트의 IP주소를 출력 실행 화면 : uname : 시스템 정보 확인 명령어 주요 옵션 : -a : 시스템의 전체 정보 출력 -s : 커널의 이름 출력 -n : 네트워크의 호스트 이름 출력 -r : 커널의 릴리즈 정보 출력 -v : 커널의 버전 출력 -m : 시스템의 하드웨어 타입 출력 -p : 프로세서의..

article thumbnail
Parametric Line Clipping (매개 변수 선분 알고리즘)
Computer Graphics 2022. 4. 3. 15:37

이번 포스트에서는 컴퓨터 그래픽스의 Parametric Line Clipping Algorithm(매개 변수 선분 알고리즘)에 대해 다루도록 하겠습니다. Parametric Line Clipping Algorithm 지난 포스트에서는 C-S 알고리즘에 대해 다루었습니다. C-S 알고리즘은 선분의 양 끝점이 어디에 위치하느냐에 따라 선분을 accepted, rejected, clipped로 나누어 반복 실행을 통해 구했습니다. Parametric Line Algorithm은 이것을 바탕으로 단 한 번만 자르는 C-S알고리즘보다 더 효율적인 알고리즘이다. 먼저 다음에 제시된 그림을 통해 그래픽스 상의 선분의 특징에 대해 알아보겠습니다. Line 1, 2, 3이 있습니다. 세 Line의 양 끝점이 각각 P0와..

article thumbnail
SQL Injection (SQL 인젝션)
WebHacking 2022. 4. 2. 01:53

이번 포스트에서는 SQL Injection에 대한 포괄적인 소개를 다루도록 하겠습니다. SQL Injection SQL Injection의 정의 : SQL Injection은 우리나라 말로 SQL 주입이라 할 수 있습니다. 즉 임의의 SQL 쿼리문을 주입하는 공격 기법이라 할 수 있습니다. 좀 더 자세하게 설명하자면 SQL 인젝션은 웹 사이트의 보안상 허점을 이용해 특정 SQL 쿼리문을 전송하여 데이터베이스가 비정상적인 동작을 하도록 조작하는 행위입니다. SQL Injection의 발생 원인 : SQL Injection은 주로 사용자가 입력한 데이터가 제대로 필터링, 이스케이핑하지 못했을 경우에 발생합니다. 즉, 클라이언트 측의 데이터를 신뢰해서 그대로 SQL문에 사용했기 때문입니다. SQL Inject..