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/Secure C 2014. 4. 23. 21:08

1.메모리 동적 할당이란?

내가 원하는 만큼의 공간을 Heap 이라는 곳에 할당하여 사용하는 것


2.선언 방법

기본형 : void* malloc(size_t size);

->size_t = typedef unsigned int size_t => 부호가 없는 정수 즉, 양수를 선언하는 자료형이다.

->인자 부분에는 양수 형태로 만들고자 하는 공간의 크기를 입력

->자료형이 "void*" 형이기 때문에 사용시 캐스팅을 사용해야 한다.


* malloc(); 함수는 할당한 공간의 주소를 리턴한다.


3.사용하는 이유

1.원하는 만큼 공간을 사용할 수있다.

2.메모리 관리가 효율적이다.

ex) char stu[100]; 이라고 '100'크기의 공간을 선언했다.

그러나 실질적으로는 '30'만큼의 공간만 사용한다. 그러면 '70'이라는 공간이 남게 되어 메모리가 낭비된다.

그러므로 메모리 동적 할당으로 필요한 만큼만 할당해서 사용한다.




4.메모리 동적 할당 사용

1.헤더파일

malloc();함수를 사용 하기 위해서는 <stdlib.h> / <malloc.h> 헤더파일이 필요하다(둘 중에 하나 선택 사용)

2.free(); 함수

메모리를 할당하고 사용 후 pc에게 공간 사용을 종료하겠다고 이야기 해주는 기능

사용 형태 : free(할당된 공간의 시작 주소);

#include <stdio.h>

#include <stdlib.h>


int main(void)

{

int *ptmp = malloc(10);    -예제1

int *ptmp = (int*) malloc(10);    -예제2

  free(ptmp);    -예제3

return 0;

}

(예제1)

이 코드를 실행하면 ERROR가 난다.

이유는 malloc(); 함수는 "void*"형태이기 때문에 캐스팅을 하고 사용해야 되는데 캐스팅을 하지 않았기 때문이다.


(예제2)

malloc();함수의 올바른 사용이다.

캐스팅 할때에는 할당한 공간에 담을 data의 형태에 맞게 캐스팅한다.

만약 포인터 연사자 '*'을 뺄 경우 할당된 공간의 주소가 아니라 값이 전달되므로 ERROR가 난다.


(예제3)

인자로 ptmp를 넣은 이유는 ptmp가 할당한 공간의 시작주소를 가지고 있기 때문이다.


*"free();"함수로 같은 공간을 두번 닫았을 경우

처음 'A'라는 공간을 할당하여 사용 후 종료했다.

그리고 'B'라는 공간을 할당하고 'A'가 있던 공간에 할당 되었다

'B' 공간을 사용 중에 'A'라는 공간을 종료하지 않았다고 착각해서 'A'공간을 닫았을때 

'A'공간이 아니라 'B'공간이 닫히게 되어서 ERROR가 발생한다.



5.메모리 동적 할당 사용2

<예제 코드>

#include <stdio.h>

#include <stdlib.h>

int main(void)

{

int i = 0;

int *ptmp = (int*) malloc(10);

char *pch = (char*) malloc(20);

ptmp[0] = 10;

ptmp[1] = 20;

printf("Sum = %d\n",ptmp[0] + ptmp[1]);

for(i ; i<10 ; i++)

{

pch[i] = 0x61 + i ;

}

printf("%s\n",pch);

free(ptmp);

free(pch);

return 0;

}


<실행 결과>






*문자열 뒤에 이상한 값이 나오는 이유

 ->문자열 출력시 NULL문자까지 출력한다. 그런데 NULL문자는 "pch"맨끝에 존재 하고 나는 pch[0] ~ pch[9]까지 입력 하였다.

   그러면 pch[10] ~ pch[18]까지는 쓰레기 값이 들어 있으므로 이상한 값이 출력된다.

 ->해결방법

   1.pch[10]에 0을 입력해준다 => pch[i] = 0;(for문이 끝나면 i의 값은 10을 가지고 있기때문에)

   2.공간을 크기 조정 => char *pch = (char*)malloc(10);


*공간의 낭비를 없애기 위한 방법

지금 내가 필요한 만큼의 공간을 할당해서 사용하고 있지만 ptmp가 가르키는 곳에는 2byte, pch가 가르키고 있는 곳에는 10byte가 낭비되고 있다.

이것을 없애기 위해서는 malloc();함수의 인자값을 변경할 필요가 있다.


인자 : 자료형의 크기 * 데이터의 갯수

malloc(sizeof(int)*2);   /    malloc(sizeof(char)*10);


(그냥 처음 인자는 8, 두번째 인자는 10을 넣으면 안되냐는 생각을 할 수도 있지만 만약에 세월이 지나서 자료형의 크기가 변하게 되서 이 코드를 사용하면 제대로 동작하지 않는다

그런데 이렇게 코드를 작성하면 자료형의 크기가 변해되더라도 사용가능 하다.)


*ptmp[3] = 30; 이라고 소스를 추가 했을때

현재 ptmp가 가르키고 있는 곳의 크기는 10byte이다. 그 곳에는 현재 4byte 짜리 ptmp[0], ptmp[1] 2개가 존재해서 8byte를 사용중이다.

그런데 ptmp[3]을 추가하게 되면 남은 공간은 2byte데 4byte를 추가할려고 하므로 ERROR가 발생한다.


*할당한 공간 늘리기 -> realloc();

->사용 형태 : realloc(늘릴 곳의 주소, 변경할 크기);

->공간 늘림 : 원래 입력되어 있던 값은 그대로 있고 공간만 늘어남

<소스 추가>

  realloc(ptmp, sizeof(int)*5);

realloc(pch, sizeof(char)*20);

<실행 결과>



->공간 줄임 : 원래 있던 값 중 공간안에 있을 수 있는 만큼만 남고 없어짐 

<소스 추가>

realloc(ptmp, sizeof(int));

realloc(pch, sizeof(char)*5);

<실행 결과>








출처 == i2sec

'i2sec > Secure C' 카테고리의 다른 글

14.04.28 21:10  (0) 2014.04.28
2014-04-23 AM12:46  (0) 2014.04.23
주의 사항!!!  (0) 2014.04.18
하... 역시나...  (0) 2014.03.31
START...  (0) 2014.03.28

네트워크 해킹 시작..

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

2014-04-23 AM12:46

2014. 4. 23. 00:53

보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력해주세요.

패스워드 크래킹

i2sec/System hacking 2014. 4. 23. 00:38

1.패스워드 크래킹이란?

공격 대상이 이미 ID를 알고 있다는 가정 하에 비밀번호를 알아내는 해킹 기법이다.                                                    이 기법은 해킹 기법중 난이도는 낮은 편이나 가장 강력한 공격이다.


2.취약한 패스워드 분류

1. 길이가 너무 짧거나 아예 패스워드를 설정하지 않은 경우                                                                                   2. 사전에 나오는 단어나 이들의 조합                                                                                                                3. 키보드 자판의 나열                                                                                                                                      4. 사용자 계정 정보에서 유추가능한 단어


3.패스워드의 안전성 확인

입력문자 

7자리 

8자리 

영문 소문자(26문자) 

 45분

20시간 

 영문 소문자 + 숫자(36문자)

 8일

13일 

 영문 대문자 + 숫자(62문자)

25일 

4년반 

 영문 대소문자 + 숫자 + 특수문자(94문자)

437일 

114년 

<출처 : 정보보호뉴스>

우리가 평균적으로 사용하고 있는 영문소문자 +숫자로 구성된 8자리 패스워드는 13일이면 해킹당할 수 있다.                  13일이라는 시간을 들여 일반인의 패스워드를 크래킹하는 경우는 잘없겠지만 공공기관이나 주요 직책의 사람들의 것일 경우는 이야기가 달라진다. 점점 높아지는 컴퓨터 사양으로 인해 이시간은 점차 쭐어들 것으로 보인다.                         이러한 문제점을 해결하기 위한 가장 빠르고 정확한 해결방안은 사용자 본인이 경각심을 느끼고 패스워드 관리에 좀더 신경을 쓰는 것이라고 생각한다.


위 프로그램은 kisa에서  제공하는 패스워드 안전성검사 프로그램이다.                                                                   현재 자신의 패스워드의 안정성을 표시해준다.(스스로의 패스워드를 진단해보길 바란다)

*안전한 패스워드                                                                                                              1. 2가지 변수 + 10가지 이상의 길이                                                                                                                2. 3가지 변수 + 8가지 이상의 길이                                                                                                                 (변수 : 영문대문자, 영문소문자, 숫자, 특수문자(4가지))

4.패스워드 크래킹의 종류

고전기법과 현대기법이 있지만, 암묵적인 의미에서 현대기법(자동화된 툴이용)만 사용

이되고 있고, 아래와 같은 종류가 있다.

고전 기법

1. Shoulder Sniffing

누구나 한번쯤 타인의 비밀번호를 어깨너머로 훔쳐본 적 있을것이다. 

이 기법은 단어 뜻 그대로 어깨넘어로 훔쳐 본다는 의미를 가진 크래킹 기법 이다.


2. Dumpster Diving 

영화에 가끔 등장하는 장면 중 하나인 쓰레기통을 뒤져 서류나 메모를 찾아 정보를 얻는 장면을 볼수 있다.

그렇게 무심결에 버려진 정보들을 찾아서 정보를 훔치는 기법이다.


3. Social Engineering

사회 공학 기법이라고도 하며 요즘 크게 문제가 되고 있는 보이스 피싱, 스미싱과 같이

사람들을 속여 정상 보안 절차를 깨트리기 위한 비기술적 침입 수단을 뜻하는 기법이다.


현대 기법

1.Dictionary attack(사전 공격)  

사전 대입 공격으로 미리 사전파일을 만들어 놓고 그 내용을 하나하나 대입하는 기법이다. 

이 기법은 용량이 크면 클수록 좋다. 해외에서 공격이 잦다.

(사전파일 안에 내용이 중요)(ex-한글)


2.hybrid attack : 

앞선 사전 공격 보다 진화(혼합 공격)

 guessig 이 첨가된 부분이 크기 때문에 경험이 높은 사용자의 경우에는 효과가 높지만,

 경험이 미비한 사용자의 경우에는 역효과

 단점:추측을 잘못하면 더오래걸릴수있다


3.brute force attack : 

무차별 대입 공격으로 암호를 풀기 위해 가능한 모든 경우의 값을 대입하여 암호를 해독하는 기법

언젠가는 뚤리지만, 정확히 언제인지는 알 수 없다. 관제서비스에서 필터링 되어 질  확률이 높다.

장점:가장 정확하다.

단점:오래 걸림


5.사전 공격을 위한 사전 파일 정보 수집 -> "구글링"

site : 해당 도메인 내에서 검색

ex>kr, jp,cn....

inurl : url 내에서 포함된 문자열 검색

ex>www.i2sec.co.kr <-- 개인정보 및 취약점 노출확인가능


intitle : <title> </title> 내에 포함된 문자열 검색


filetype : exe, pdf, xls, hwp와 같은 파일 확장자를 검색

ex>filetype:ppt 제안서

  이력서와 같은 민감한 파일들이 노출된다.


사전파일 찾는 요령 : inurl:dictionary.txt 및 password.txt

            filetype:txt,doc



6.Dictionary attack(사전 공격)


사전 공격을 위해 Unsecure이란 툴을 사용



공격을 위한 사전파일이 툴과 같은 폴더에 들어 있어야 한다. 

툴 사용법

1.Computer name and IP - 패스워드 크래킹할 PC나 서버의 IP주소 입력

2.Port - 접속 방식의 포트 번호 입력(ex-21:ftp, 22:ssh, 23:telent)

3.Username : 패스워드 크래킹 할 ID 입력

4.Dictionary file : 준비된 사전 파일 이름을 입력

5.Attack options : 사용할 공격을 설정하는 부분 (Dictionary attack 선택)

6.Connect 클릭!

7.사전 파일을 비교하고 맞는 암호가 있으면 출력! (사전파일이 많을수록 시간이 오래걸린다)


*간단하고 쉬운 공격같아 보이지만 상대방의 IP와 ID만 알면 누구나 쉽게 공격할 수 있는 무서운 공격이다.

직접 실습해본 결과 사전파일의 양보다는 역시 질이 중요한 것 같다.

아무리 많은 경우의 수를 가지고 있더라도 모두 다 틀린답인 경우 결과는 모르는 상황과 같다.

많은 추리, 추측과 경험이 요구되는 기법인 것 같다.

하지만 이러한 것이 갖춰졌을때 무엇보다도 무서운 공격이 될꺼 같다.

또다시 비밀번호의 중요성을 느끼는 시간이 되었다.


출처 == I2sec


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

백도어 탐지  (0) 2014.04.27
백도어(Backdoor)  (0) 2014.04.27
SetUID  (0) 2014.04.27
Unix & Windows 인증 구조  (0) 2014.04.27
Windows 단축키 및 주요 프로세스  (0) 2014.04.21

Windows 단축키 및 주요 프로세스

i2sec/System hacking 2014. 4. 21. 11:50

1.알면 편한 단축키

   윈도우 + R = 실행

   윈도우 + D = 바탕화면 바로가기

   alt+tap    = 작업표시줄

   alt+shift+tap = 작업표시줄 역방향

   ctrl + a  = 전체지정

   shift + 방향키 or home or end = 텍스트 범위 지정

   윈도우 + e : 내컴퓨터


실행 : msconfig, calc, mstsc, control, regedit



2. 윈도우 주요 프로세스

레지스터리 : 윈도우의 설정값들이 저장되는 데이터베이스

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run

- alg.exe : 인터넷 연결 공유 응용프로그램과 인터넷 연결 방화벽에

            대한 써드 파티 프로토콜 플러그인들을 지원함.

            #써드 파티 : 주개발사와 사용자 외의 개발사

- ctfmon.exe : 고급텍스트 서비스 , 필기, 음성인식과 같이 보다

               향상된 입력방법을 제공

- csrss.exe : 윈도우 콘솔 , 쓰레드 생성/삭제

- dllhost.exe : dll에 기초를 둔 어플리케이션을 관리 담당

- explorer.exe : 우리가 보는 화면 작업표시줄, 바탕화면을 지원.

- lsass.exe : 윈도우 보안 메커니즘 핸들링

- mstask.exe : 시스템 백업이나 업데이트 작업

- services.exe : 윈도우즈 서비스를 관리

- smss : 시스템 변수를 설정하고, winlogon 및 csrss.exe 프로세스를 구동함


- spoolsv : 프린터의 작업을 저장하고, 프린터가 저장되었을때 해당 작업들을 프린터로

               포워딩 하는 서비스 담당

- svchost : DLL에 의해 실행되는 프로세스의 기본 프로세스로 한 시스템에 여러개의                svchost가 존재하고, 여러개의 svchost 프로세스가 있음

- system : 대부분의 커널 모드 스레드의 시작점이 됨

- system idle process : cpu의 잔여 프로세스 처리량을 %로 나타낸 값

- taskmgr : 작업관리자

- wdfmgr.exe : 윈도우 미디어 플레이어 10 이상 설치했을때 생성됨

- winlogon.exe : winnt 기반 프로세스 사용자 로그온과 로그오프를 관리함

#winnt : 2000,xp 같은 운영체제를 Winnt라 한다.  (NT는 Network)




3.레지스트리 

-윈도우의 설정값들이 저장된느 데이터베이스

-HKEY_CURRENT_USER\Software\microsoft\Windows\CurrentVersion\Run

-HKEY_LOCAL+MACHINE\SOFTWARE\Microsoft\windows\Currentversion\Run


출처 == 12sec



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

백도어 탐지  (0) 2014.04.27
백도어(Backdoor)  (0) 2014.04.27
SetUID  (0) 2014.04.27
Unix & Windows 인증 구조  (0) 2014.04.27
패스워드 크래킹  (0) 2014.04.23

주의 사항!!!

2014. 4. 18. 22:04

보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력해주세요.

하... 역시나...

2014. 3. 31. 22:30

보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력해주세요.