day04 - 네트워크 이론

i2sec/Network hacking 2014. 4. 28. 22:22

1. subnetmask

2. routing

3. NAT

4. Windows IP 설정

5. Linux IP 설정

6. ARP/RARP

7. ICMP

-송신 측의 상황과 목적지 노드의 상황 진단 == PING

-IP계층 또는 보다 상위 계층 프로토콜(TCP, UDP)에 의해 이용

-ICMP 메세지는 사용자 프로세스에게 되돌려 주는 에러 메세지 생성

-ICMP 메세지는 IP 데이터 그램으로 전송

-IP Scan, Ping of Death(DOS공격)에 이용


*Ping of Death(DOS공격)

예전에는 가능했던공격. 많은 양을 보내 CPU 과부하시킨다

그러나 요즘에는 과부하가 되기전에 네트워크 선로가 다차서 다른 사용자가 네트워크가 안될 수도 있다.



IP헤더 

ICMP 메세지 

<----------------------------------------------IP 데이터 그램-------------------------------------------------->


8. TCP

3-way handshaking(세션 생성)

*netstat에 표시


Listening : 서버가 특정 클라이언트에 대해서 듣고 있다는 표시

Established : 현재 연결중인 상태. 3-way handshaking이 끝나고 난 다음 상태이다.

Wait : 대기중인 상태

-세션의 갯수가 많을수록 과부하가 걸린다.



Source port

destination port 

 sequence number

acknowledgement number 

 data offset

reserved 

URG 

ACK 

PSH 

RST 

SYN 

FIN 

 windows size

 checksum

urgent pointer 

options 

padding 

data 

-source port : 세그먼트를 전송하는 호스트에게 있는 프로그램의 포트 번호

-destination port : 수신자 호스트 상에서 수행되는 프로그램의 포트번호

-sequence number : 신뢰성 있는 연결을 보장하기 위한 번호

   서로 다른 ISN(Initial Sequence Number)을 생성하여 사용

-ACK : 응답

-PSH : 우선 처리 요청(4계층 TCP -> 7계층 응용)(ex>토렌트)

-RST : 초기화, 강제종료

-SYN : 응답 요청

-FIN : 연결 종료 요청

-checksum : IP헤더에 오류가 있는지 검사

-data : 실질적인 데이터


*포트

-포트가 있는 이유 : 서비스 별로 연결 방식이 다른데 통합하게 디면 비동기화 통신 방식이 형성되기 때문에 속도가 느려진다

   즉, 서비스를 원할하게 하기 위함.

-출발지 포트는 "랜덤"하게 선정되어 나갈때 마다 달라지지만 목적지 포트는 서비스별로 정해져있다.

-서비스 포트는 규약같은 것이기 때문에 거의 바뀌지 않는다.


*TCP(연결할때까지만 사용) ----------> HTTP,SSH,TELNET(응용프로토콜로 바뀜)


9.UDP

-TCP와 달리 handshaking과정이 없다

-비신뢰성 연결이다.(NO reliable data transfer)

-흐름제어를 하지 않는다(No Flow Control)

-TCP에 비해 간단한 전송이 이루어진다(No Congestion Control)

-신뢰성 검사를 하지않고 빠른 전송이 필요할때 사용


10.알아야될 포트

포트번호 

서비스  

서비스 내용 

20/21   (TCP) 

 FTP(-data)

FTP연결 : 21 data전송 : 20 

FTP 연결 시 인증과 컨트롤을 위한 포트 

22 (TCP) 

SSH 

패킷이 암호화되어 전송

Telnet과 같은 비 암호화 프로그램을 대체 

23 (TCP) 

TELNET 

Telnet 서비스로서 원격지의 서버의 실행 창을 얻어낸다. 

25 (TCP) 

SMTP 

메일을 보낼 때 사용하는 서비스

(잘 사용하지 않는다) 

53 (UDP) 

DNS 

Domain Name Service 이름을 해석하는데 사용하는 명령어 

80 (TCP) 

HTTP 

Hyper Text Transfer Protocol 웹 서비스 

*Telnet/FTP : 연결 시 주고 받는 패킷이 암호화 되지않아서 노출되기 쉽고 노출된 패킷으로 복구도 가능하다.

*SSH/SFTP : Telnet/FTP의 암호화되지 않는 단점을 보안한 응용 프로그램으로서 openssl 사용한다


11.트래픽 분류

-유니캐스트(Unicast) : 다른 클라이언트와 1:1 통신


-멀티캐스트 : 특정 그룹과 통신(1:다수)

-브로드캐스트 : 네트워크 내 전체 사용자에게 전송(x.x.x.255 이용)


'i2sec > Network hacking' 카테고리의 다른 글

TCP/IP  (0) 2014.04.25
Network + OSI 7 Layer  (0) 2014.04.25
정보통신  (0) 2014.04.25
네트워크 해킹 시작..  (0) 2014.04.23

TCP/IP

i2sec/Network hacking 2014. 4. 25. 22:13

1. TCP/IP란?

-일상 생활에서 가장 많이 사용하는 통신 프로토콜


2.TCP/IP 4 Layer



1)네트워크 인터페이스 계층

1.OSI 7 계층의 데이터 링크 계층과 물리 계층에 해당

2.MAC 주소를 통해서 통신

    └> 데이터링크계층의 MAC 계층에 의해 사용되는 48bit의 하드웨어 주소

    어떠한 네트워크 카드도 동일한 MAC주소를 가지지 않는 고유한 주소 (16진수로 표현)

    AA : BB : CC : DD : EE : FF

      │                 └>RANDOM한 값(중복 x)

└>제조사 고유 주소(회사 이름이 나올 수도 있다)


3.CSMA/CD :내부통신을 원할하게 하기 위한 통신 방식

   =Carrier Sense : 네트워크에 작업이 있는지 없는지 확인(충동을 피하기 위해)

   =Multiple access : 아무도 통신하고 있지 않을때 자유롭게 통신

   =Collision Detection : 거의 동시에 통신을 하여 충돌 방생

(충동이 발생하면 잼신호를 생성하는데 잼신호는 Carrier Sense로 돌아가게 한다)


4.Ethernet : 근거리에 위치한 컴퓨터간에 데이터 전송이 가능하도록 하는 통신 기능

    현재 가장 널리 사용되는 LAN연결 방법

    CSMA/CD 사용

   Ethernet 구조

Preamble 

Destination Address 

Source Address 

Ether Type 

Data 

FCS 

= Preamble(8 byte) : 프레임의 시작과 끝을 알려 주는 부분(보내는 부분의 시작과 끝을 알아야 통신이 가능하다)

Destination Address(6 byte) : 프레임이 전송되어야 할 목적지 MAC 주소가 들어가는 부분

Source Address(6 byte) : 프레임을 전송하는 호스트의 MAC주소

=Ether Type(2 byte) : 프레임이 어떤 프로토콜 타입과 연계되어 있는지 명시하는 부분

=Data(46 ~ 1500 byte) : 우리가 실질적으로 보내고 싶은 데이터가 담기는 부분

   필드의 크기가 46 ~ 1500 byte인 이유는 최소 전송크기와 최대전송 크기때문인다.

   최소 전송크기보다 작으면 쓰레기값을 넣어서 전송하고 최대 전송 크기보다 크면 쪼개서 보낸다

=FCS(4 byte) : 프레임의 오류를 체크 , CRC라고도 불림


2)인터넷(IP) 계층

1. 네트워크 계층

  = Forwarding : 패킷이 라우터의 입력 링크에 도달 시 라우터는 패킷을 적절한 출력링크로 이동 시켜야함

     즉, 패킷을 보내주는 것

  = Routing : 송수신자가 패킷을 전송할 때 패킷경로를 결정함 (경로를 하나 지날때 마다 1Hop씩 증가)


2. IP(Internet Protocol)

  =대표적인 네트워크 계층의 프로토콜

  =32bit의 2진수(0,1)로 구성

  =실제 표시는 8bit 단위로 점을 찍고 10진수로 표시

       ex> 192.168.1.67  ==  11000000 . 10101000 . 00000001 . 10000011


3. IP 주소 구성

 = 네트워크 주소 : 호스트가 연결되어 있는 네트워크 확인

 = 네트워크의 호스트 중에 하나의 특정 호스트 확인


Class Type 

Netid 

Hostid 

ex> ip: 192.168.0.24                        ==>  Netid : 192.168.0.0

      subnet : 255.255.255.0                      Hostid : 24

*네트워크 주소와 호스트 주소 구별방법

   1. 같은 네트워크에 존재하는 2개 이상의 IP 비교

   2. 서브넷 마스크 확인


4. IP Class                       Byte1                    Byte2                    Byte3                    Byte4

<----------------><----------------><----------------><---------------->

 Class A

 Netid(255.0.0.0)

 Hostid (2의 24승 개)

 Class B

 Netid(255.255.0.0)

 Hostid (2의 16승 개)

 Class C

 Netid(255.255.255.0)

 Hostid (2의 8승 개)

 Class D

 Multicast address

 Class E

 Reserved for future use

*class D 와 class E는 사용하지 않는다.


5. 사설 IP

=장점 : IP 주소를 절약할 수 있습니다.

    내부에서 외부로는 접근이 가능하지만 외부에서 내부로 접근이 불가능(방화벽 기능)

    외부에서의 웜바이러스나 해킹등에 안전


=단점 : 공유기를 이용하여 인터넷을 사용할 경우 공유기에 따라 가끔 오작동을 하는 경우가 있다.

           외부에서 직접 접근이 불가능하므로 게임이나 기타 P2P프로그램의 일부 기능을 이용하지 못할 경우도 있다.


=사설 IP 대역

  A Class :        Netid       : 10.0.0.0/8

                사용가능 주소 : 10.0.0.0 ~ 10.255.255.254

    subnet mask  :  255.0.0.0


  B Class :        Netid       : 172.16.0.0/16

                사용가능 주소 : 172.16.0.1 ~ 172.31.255.254

    subnet mask  :  255.240.0.0


  C Class :        Netid       : 192.168.0.0/24

                사용가능 주소 : 192.168.0.1 ~ 192.168.255.254

    subnet mask  :  255.255.0.0


* Netid 뒤에 " /8, /16, /24"는 서브넷 비트수를 의미

*C Class의 사설 IP는 B Class부터 시작할 수 있다 그러나 구분짓기 위해서 C Class로 표시






출처 == i2sec

'i2sec > Network hacking' 카테고리의 다른 글

day04 - 네트워크 이론  (0) 2014.04.28
Network + OSI 7 Layer  (0) 2014.04.25
정보통신  (0) 2014.04.25
네트워크 해킹 시작..  (0) 2014.04.23

Network + OSI 7 Layer

i2sec/Network hacking 2014. 4. 25. 20:57

1. 네트워크란?

  -Net +Work : 그물 + 일하다.

  -컴퓨터간의 대화를 나누는 것


2. 네트워크 발전 과정

  음성회선 - PSTN - 디지털 전용회선(일반인터넷) - 데이터 전용교환망 - 종합통신망(IP TV + 인터넷 + IP 전화 를 가능하게 한 것)


3. 네트워크 종류

  - 피어 투 피어 네트워크

: P2P. 망 내에 있는 각각의 컴퓨터는 동등(Peer)계층 다른 모든 컴퓨터에 대하여 서버로서 동작하고 동시에                    클라이언트로서 동작한다.


  - 클라이언트 / 서버 네트워크

: 클라이언트는 다른 프로그램에서 서비스를 요청하는 프로그램이며, 서버는 그 요청에 대한 응답을 해주는               프로그램이다.





LAN : 회사,학원,PC방과 같은 소규모 네트워크

MAN : 도시,구 같은 중간 규모 네트워크

WAN : 나라정도의 대규모 네트워크


4. 네트워크 토폴로지

1.Star Topology : 중앙의 시스템과 개별 호스트는 Point to Point 방식으로 연결되어 있다.


*중앙 집중 방식으로 중앙시스템으로 통제가 용의하나 중앙 이스템이 죽으면 전체 네트워크가 죽는 단점이 있다.


2.Bus topology : 네트워크상의 모든 호스트들이 하나의 케이블에 연결된 형태






*한 시스템이 죽어도 다른 시스템에는 지장이 없다.

 그러나 시스템 오류가 발생 했을 시 찾기 힘들고 관리가 힘들다.(대부분 네트워크 형태)

*터미네이터 : 네트워크상에 떠돌고 있는 패킷들을 지워주는 역할


3.Ring Topology : 버스 토폴로지 형태와 비승, 양 종단이 서로 연결되어 링형을 이룸


*절대 충돌이 발생하지 않는 장점을 가지고 있다.

 토큰이라는 것을 통해 토큰에 정보를 담아 통신을하는데 토큰이 올때까지 대기해야되서 속도가 느리다는 단점이 있  다.


4.Mesh Topology : 모든 네트워크 또는 컴퓨터들이 네트워크상이나 개별적으로 네트워크와 연결된 형태


*네트워크가 끊어질 일이 거의 없어 가용성이 극대화되어 있다.

 비용이 많이 든다는 단점이 있다.


5. OSI 7 Layer

  *정의 : 국제 표준 기관 ISO가 개방형 통신을 할 수 있게 만든 모델, 통신을 위한 7가지 절차


OSI 7 Layer

PDU 

Device 

 7 Layer

 응용(Application) 계층

 

 

  6 Layer 

 표현(Presentation)계층

 5 Layer

세션(Session) 계층

 4 Layer

 전송(Transport) 계층

 Record or Segment

 TCP / UDP, ICMP등

 3 Layer

네트워크(Network)계층 

 Packet or Datagram

 Router, L3 switch

 2 Layer

데이터링크(Datalink) 계층 

 Frame

 Switch, Bridge

 1 Layer

물리(Physical) 계층 

Bit 

 Repeater, Hub


*1 Layer - Physical

-Bit 단위(0,1)

-전기, 기계 기능적인 특성을 이용하여 통신 케이블로 데이터 전송

-대표 장비 : 리피터, 허브


*2 Layer - Data Link 

-Frame 단위

-물리적 링크를 통해 데이터를 신뢰성 있게 전송하는 계층. 네트워크를 통해서 데이터가 전송될 때 전송로 역할

-내부통신(게이트웨이를 빠져나가지 않고 통신)에서 사용되면 MAC주소(PC 고유 주소)를 이용하여 통신한다.

-대표장비 : 브릿지 , 스위치


*3 Layer - Network

-packet 단위

-라우팅 프로토콜을 사용하여 최적의 경로를 선택

-외부통신(게이트웨이를 나가서 통신)에서 사용되며 IP를 이용해서 통신한다.

-대표장비 : 라우터

-ex>네이버 접속하는 실제 형태 : pc -> Gateway -> DNS Server -> www.naver.com


*4 Layer - Transport

-Segment 단위

-프로토콜(TCP, SPX등)과 관련된 계층으로, 오류 복구, 흐름 제어 담당

-두 시스템간의 신뢰성 있는 데이터 전송을 보장

-시스템 종단 간에 투명한 데이터 전송을 양방향으로 행하는 계층

-TCP : 신뢰성 있는 전송 방식 , 신뢰성 검사 때문에 UDP보다 속도가 느리다, 연결지향형



-UDP : 비신뢰성 전송 방식, 신뢰성 검사가 없어 TCP보다 속도가 빠르다, 비연결지향형

    요청이 들어오면 연결이 되어있는지 확인하지않고 일단 보내는 형식



6.INTERNET

-TCP/IP 프로토콜 모음을 사용하는 네트워크들의 집합

 -국내 인터넷 현황










출처 == i2sec


'i2sec > Network hacking' 카테고리의 다른 글

day04 - 네트워크 이론  (0) 2014.04.28
TCP/IP  (0) 2014.04.25
정보통신  (0) 2014.04.25
네트워크 해킹 시작..  (0) 2014.04.23

정보통신

i2sec/Network hacking 2014. 4. 25. 20:46

1.정보와 데이터

   -데이터 : 인간이나 컴퓨터가 처리할 수 있도록 실제 생활의 많은 일들을 간단히 문자,기호,숫자 등으로 표현한 것

             즉, 정리 되지 않은 많은 양들의 자료의미


   -정보 : 특정 목적을 위해 의미를 부여한 데이터

           즉, 데이터를 우리가 필요한 부분만 사용할 수 있게 가공한 것


2.정의

 -정보 생산자로부터 그 정보를 필요로 하는 소비자에게 전달하는 행위


3.정보통신의 3대 목표

정확성   /  효율성   / 보안성- - 기밀성 : 암호화 여부 의미

    l - 가용성 : 우리가 얼마나 사용 가능 한지 의미

    - - 무결성 : 정보가 전달되면서 변조되었는지 의미


4.프로토콜

 * 정의 : 네트워크 장비들을 통해 각 컴퓨터들이 데이터를 주고 받는 규칙

 즉, 통신을 하기 위한 언어이다.


 * 프로토콜 3요소

    : Syntex     /  sematics   /  Timing(원할때 전송이 되야하는 것)


 * 프로토콜의 기능

    1.주소지정(addressing)

: - 보내고자 하는 상대방의 이름을 알아야 전송이 가능하다. 

   이 이름이 IP이고 전송할 때 IP주소를 설정해야 한다.


    2.순서지정(Sequencing)

: - 데이터는 순서대로 전송되지 않는다. 그런데 상대방은 보낸 순서대로 데이터를 받아야 보낸 내용을 정확하게 받을 수있다.

   그래서 보낼때 순서를 명시하여 보내야된다.(Sequence number)

 - 이 기능은 연결지향형에서만 사용한다.

    3.단편화와 재조합(Fragmentation and Reassembly)

: - 데이터를 교환하는 프로토콜의 경우 블록 단위로 분할하여 전송한다.

 - 데이터를 블록 단위로 분할하는 것을 단편화(Fragmentation)라고 하며 단편화시 분해 후 번호를 매겨서 전송한다.(Fragment number)

 - 단편화(Fragmentation)시 최대 전송 크기는 1500byte이고 MTU(maximum transmission unit)라고 하며 최소 전송 크기는 46byte이고 MTU(minimumtransmission unit)라고 한다.

(만약 보내는 데이터가 46byte보다 작을시 나머지 공간에 쓰레기 값을 넣어 전송)

 - 받은 개체는 단편화된 데이터를 다쇼ㅣ 원래 데이터로 조합하는데 이것을 재조합(Reassembly)라고 한다.

    

    4.흐름제어

: 수신 측 시스템에서 현재 시스템 상황에 맞게 받은 데이터의 양,속도 제어하는 것



 * 프로토콜의 특성

    -표준/비표준 프로토콜


     송신자와 수신자의 통신언어(프로토콜)가 달라 전달받은 의미 해석을 위해 여러번 절차를 걸쳐야해 속도가 느리다.




   같은 언어(프로토콜)를 가지고 통신하므로 속다가 빠르다.








출처 == i2sec

'i2sec > Network hacking' 카테고리의 다른 글

day04 - 네트워크 이론  (0) 2014.04.28
TCP/IP  (0) 2014.04.25
Network + OSI 7 Layer  (0) 2014.04.25
네트워크 해킹 시작..  (0) 2014.04.23

네트워크 해킹 시작..

i2sec/Network hacking 2014. 4. 23. 19:41

오늘부터 네트워크 해킹이 시작되었다.

첫 시간이라 네트워크에 대한 간단한 개요 설명과 앞으로 학습 방향 같은 것만 이야기 했다.

재일 자신있고 기대되는 분야이기도 하다.

이제부터는 그날 배운건 그날 바로 포스팅 하자!!!

'i2sec > Network hacking' 카테고리의 다른 글

day04 - 네트워크 이론  (0) 2014.04.28
TCP/IP  (0) 2014.04.25
Network + OSI 7 Layer  (0) 2014.04.25
정보통신  (0) 2014.04.25