출처 : 후니의 쉽게 쓴 네트워크 + 정보통신기술용어해설 

라우팅과 라우티드 프로토콜

라우티드 프로토콜(Routed Protocol)

  • 정보통신기술용어해설 정의 : 라우팅 프로토콜이 라우팅하는 프로토콜
  • 다른 네트워크로 가기 위해 사용되는 프로토콜
  • 말 그대로, 라우팅을 당하는, 즉 라우터가 라우팅을 해주는 고객을 뜻한다.
  • 즉, 라우터는 자동차를 타고 여행을 떠나는 승객이라고 생각하면 된다.
  • 라우티드 프로토콜은 고객으로서 라우터라는 자동차를 타고 다른 네트워크로 여행을 떠나는 것이다.
  • 종류
    • TCP/IP
    • IPX
    • Appletalk

라우팅 프로토콜(Routing Protocol)

  • 정보통신기술용어해설 정의 : 라우터간에 라우팅 정보의 교환 및 라우팅 테이블의 유지관리를 동적으로 수행하는 프로토콜
  • 후니 책에 나와 있는 것처럼 쉽게 얘기하면, 라우터라는 자동차를 안전하고 빠르게 운전하는 운전 기사라고 볼 수 있다. 즉, 라우터에 살면서 라우티드 프로토콜에게 목적지까지 가장 좋은 길을 갈 수 있게 해주는 역할이다.
  • 라우팅 알고리즘 이라고도 한다. 라우팅 알고리즘은 자신의 라우팅 테이블을 가지고 있으면서 자기가 찾아갈 경로에 대한 정보를 이곳에 기억한다.
  • 종류

    • RIP(Routing Information Protocol)
    • IGRP(Interior Gateway Routing Protocol)
    • OSPF(Open Shotest Path First)
    • EIGRP(Enhanced Interior Gateway Routing Protocol)
  • 필수 기능 및 요소

    • 라우팅 수행 프로세스
      • 라우팅 정보를 주고받기 위한 프로세스
      • 최적 경로 계산 및 이를 라우팅 테이블에 기록하는 프로세스
      • 토폴로지 변화를 감지하고 이를 자동으로 학습 반영하는 프로세스
    • 라우팅 테이블의 갱신 관리
      • 최적 경로 결정을 위한 알고리즘 및 프로세스를 적용
    • 라우팅 알고리즘
      • 최적 경로 산출을 하여가며 라우팅 테이블의 갱신, 유지관리
    • 라우팅 프로토콜 메세지
      • 라우팅 정보를 라우터들 간에 운반, 전달, 교환 등


서비스 거부 공격 관련 용어 정리

DoS(Denial of Service; 서비스 거부 공격)

개요

  • 서비스 거부 공격은 공격 대상 시스템(Target)이 정상적인 서비스를 할 수 없도록 만드는 공격을 말한다. 따라서 서비스 거부 공격은 가용성(Availability)을 떨어트리는 것이 공격의 목적이다.
  • 서비스 거부 공격은 두가지로 구분할 수 있다.
    • 서버 시스템 자원 소진 공격 : CPU, 메모리, 디스크 등의 자원에 과도한 부하를 발생 시키는 유형
    • 네트워크 대역폭 소진 공격 : 과도한 트래픽으로 네트워크 대역폴을 소진시키는 유형
  • DoS 공격은 공격자가 단일 컴퓨터를 통해 공격을 하는 경우를 말한다. (DDoS와의 차이점)
  • 용어의 모호성 : 서버는 서비스를 거부하지 않는다. 공격자의 방해로 인해 서비스를 제공할 수 없을 뿐이다. 따라서 서비스 거부 공격이라는 영어 그대로의 직역보다 서비스 방해 공격이 더 나은 표현일 수 있다.

공격의 유형

  • Ping Of Death Attack : 아주 작은 ICMP 패킷으로 다수의 IP 단편화를 발생하게 하여 수신측에서 재조합 하는 과정에서 과부하 발생
  • Land Attack : src ip와 dest ip가 같은 패킷을 만들어 공격
  • Teardrop Attack : IP패킷의 재조합 과정에서 잘못된 fragment offset 정보로 인해 수신측이 문제를 발생하도록 만다는 공격

DDos(Distributed DoS; 분산 서비스 거부 공격)

개요

  • 분산 서비스 거부 공격은 분산된 다수의 좀비 PC에 의해 공격대상 시스템의 서비스를 마비시키는 공격 형태를 의미한다.
  • 공격의 구조를 살펴보면 다음과 같이 크게 4가지 구성요소로 이루어져 있다.
    • 공격자 : C&C 서버에 공격 명령을 전달하는 해커의 컴퓨터라고 한다.
    • 명령제어(C&C, Command & Control) 서버 : 공격자로부터 직접 공격 명령을 전달받는 시스템을 말하며 전달받은 명령은 관리ㅏ는 다수의 좀비 PC에게 전달한다.
    • 공격대상 : 공격의 대상이 되는 피해 시스템

공격의 절차

  • 공격자는 좀비 PC를 관리하고 명령을 내리는 C&C 서버를 구축한다.
  • Sphere Phising이나 악의적인 웹 사이트 등을 통해 불특정 다수의 PC에 악성코드를 배포해 감염을 시도한다.
  • 사용자가 악성 코드를 다운로드해 실행하면 좀비 PC가 된다.
  • 공격자가 C&C 서버에 명령을 내리면 C&C 서버는 좀비 PC에 명령을 전달한다.
  • 좀비 PC는 명령에 따라 다양한 공격을 수행하며 스스로 다른 PC로 악성코드 전파를 시도하기도 한다.

공격의 대표적 유형

  • 대역폭 소진 공격
    • UDP/ICMP Flooding, SYN Flooding 등
  • 시스템 자원 소진 공격
    • HTTP GET Flooding 등
  • 외에 더 많은 공격 유형은 따로 공부할 것!! 

IoT를 이용한 DDoS

  • 작은 단말에도 인터넷이 들어가는 IoT 장비가 많아져서 이를 이용한 공격이 증가하고 있다.
  • 주로 CCTV(카메라+dvr/mvr)나 IP공유기가 해당된다.
  • IoT 단말들은 주로 임베디드 리눅스가 설치되어 있으며, 백신이 없는 리눅스 환경은 악성코드에 취약해서 좀비 단말이 될 확률이 높다.
  • 또한 이러한 단말들은 현재 있는 IP 대역을 스캔한 뒤 악성코드를 배포하여 더 많은 좀비 IoT 단말을 만들 수 있다.

싱크홀(Sink Hole) 서비스

  • 악성 코드에 감염된 좀비 PC가 해커의 명령을 받기 위해 C&C 서버로 연결을 시도할 때 C&C 서버 대신 싱크홀 서버로 우회시켜 더 이상 해커로부터 조종 명령을 받지 않도록 해주는 시스템/서비스를 말한다.
  • KISA에서 국내 주요 ISP업체(KT) 등과 협력을 통해 운영중이다.
  • 싱크홀 동작 과정
    • 사전 단계로 KISA에서 배포한 C&C 목록을 ISP 등 DNS 싱크홀 적용기관의 DNS 서버에 주기적으로 업데이트한다.
    • 좀비 PC가 싱크홀이 적용된 DNS에 C&C 서버에 대한 질의를 보낸다.
    • DNS는 좀비 PC에 싱크홀 서버 IP주소를 반환한다.
    • 이를 통해 악성 봇 PC는 C&C 서버가 아닌 싱크홀 서버로 접속하여 공격자의 명령으로부터의 피해를 방지할 수 있다.

DrDos(Distributed reflection DoS)

개요

  • 공격자는 src IP를 희생자의 IP로 위조(IP spoofing)하여 다수의 반사 서버로 요청정보를 전송하고, 희생자는 반사 서버로 부터 다수의 응답(대량의 트래픽)을 받아 서비스 거부 상태가 되는 공격 유형을 말한다.
  • 크게 반사와 증폭으로 이루어져 있다.

DrDoS 공격의 형태

  • 주로 UDP를 사용한다. 주로 DNS(53), NTP(123), SNMP, CHARGEN 등의 서비스를 이용한다.
  • TCP도 가능하다. 3 way handshake를 이용하여 위조된 ip의 syn 요청을 반사서버로 전달하여 syn+ack 응답이 희생자로 향하도록 한다.
  • 외에도 (Smurf Attack) ICMP 프로토콜의 echo request와 echo response를 이용하여, 위조된 주소의 echo request를 반사서버로 전달하여 echo response가 희생자로 향하도록 하는 공격이 있다.

일반 DoS 공격과의 차이점

  • 공격 근원지를 파악하기 어렵다! src IP를 변조하고 공격 트래픽이 수많은 반사 서버를 경유하므로 공격의 근원지를 파악하는 것이 매우 어렵다.
  • 좀비 PC의 공격 트래픽 효율이 증가한다. DrDoS에 사용되는 반사 서버는 syn+ack 패킷에 대한 응답이 없을 경우 일정 횟수 재전송을 수행하기 때문에 공격자가 전송하는 syn 패킷보다 몇 배 많은 syn+ack 패킷이 공격대상서버에 전송된다. (비용 절감 측면)

대응방법

  • DrDoS 공격은 src IP를 위조하는 공격이므로 IP 주소가 위조된 패킷이 인터넷 망에 유입되지 않도록 ISP 단에서 직접 차단할 수 있다. (Ingress Filtering)
  • 반사 서버에서는 ICMP 등 필요없는 프로토콜을 사전에 차단한다.
  • DNS 서버
    • 내부 사용자 주소만 Recursive query 제한
    • 특정 바이트 이상의 query 차단, 동일 ip에 대해 초당 요청 개수 제한
  • NTP 서버
    • monlist 명령 비활성화 (/etc/ntp.conf -> disable monlist)
    • monlist : 최근에 NTP에 접속한 클라이언트 정보를 전송해주는 명령




인터넷 일반 기술에 관한 문서부터 개인정보 관련 문서까지 넓은 범위의 기술안내 가이드를 배포중이다.


공개 sw를 활용한 소프트웨어 개발 보안 가이드나 소프트웨어 보안 약점 진단 가이드 등 보안에 관련된 가이드도 많이 있다.




http://www.kisa.or.kr/public/laws/laws3.jsp





“해커는 컴퓨터 팬이 회전할 때 발생하는 작음을 통해 데이터를 절취할 수 있다. 회전속도의 차이로 잡음이 발생하며 관련 잡음을 녹음장비에 녹취 후 데이터 절취가 가능하다. 이 과정은 네트워크 연결이 차단된 상황에서도 실현이 가능하다.”



자세한 내용은 아래 기사 참고.


http://dailysecu.com/news_view.php?article_id=14901





CCTV가 DDoS 공격에 활용되고 있다고 한다.

일반적으로 좀비 네트워크가 오프라인 상황일 때 공격이 약화되는 현상이 발생하게 되는데,

이번 공격에 이용된 좀비 PC는 항상 온라인 상태로 유지되었다고 한다.

CCTV는 항상 켜져있으므로....



자세한 내용은 아래 기사를 참조하기 바람.


http://www.dailysecu.com/news_view.php?article_id=14918





샤오미 폰의 커스텀 빌드 안드로이드에 있는 앱에서 중간자(main in the middel) 공격을 통해 패키지 내에 원격 코드 실행 취약점을 지닌 많은 앱들을 발견했다고 한다.


자세한 내용은 아래 기사 참조


http://dailysecu.com/news_view.php?article_id=14934

헷갈릴 여지가 많은 게이트 웨이와 라우터의 차이점에 대하여 알아보자.


위키에서 정의를 보면 다음과 같다.


##게이트웨이

(위키링크 : https://ko.wikipedia.org/wiki/%EA%B2%8C%EC%9D%B4%ED%8A%B8%EC%9B%A8%EC%9D%B4)

* 게이트웨이(gateway문화어: 망관문)는 컴퓨터 네트워크에서 서로 다른 통신망, 프로토콜을 사용하는 네트워크 간의 통신을 가능하게 하는 컴퓨터나 소프트웨어를 두루 일컫는 용어, 즉 다른 네트워크로 들어가는 입구 역할을 하는 네트워크 포인트이다. 넓은 의미로는 종류가 다른 네트워크 간의 통로의 역할을 하는 장치이다.


##라우터

(위키링크 : https://ko.wikipedia.org/wiki/%EB%9D%BC%EC%9A%B0%ED%84%B0 )

* 라우터(router, 문화어: 경로기)혹은 공유기는 패킷의 위치를 추출하여 그 위치에 대한 최상의 경로를 지정하며 이 경로를 따라 데이터 패킷을 다음 장치로 전향시키는 장치이다.



정의만 놓고 보면 완전 다른 개념이지만, 추상적으로 공부를 하다보면 헷갈린다.


둘다 외부의 네트워크와 이어주는 개념으로 이해할 수 있기 때문이다.


하지만 게이트웨이는 개념적인 용어이고 라우터는 장비이기 때문에 약간은 분류가 다르다고도 할 수 있다.


즉, 네트워크 구성환경에 따라서 라우터가 게이트웨이로 쓰일 수도 있는 것이고, 게이트웨이는 다른 장비나 소프웨어가 될 수도 있는 것이다.













## File Upload 취약점


* 일반적으로 업로드가 허용되는 이미지 파일등 외에 허용되지 않은 (웹쉘같은) 악의적인 파일을 올려서 서버를 장악할 수 있는 취약점이다.

jsp, php, asp 등의 파일을 업로드하여 악성행위를 하게 된다.




## File Upload 취약점 원인


* 해당 페이지에서 허용하는 파일만 업로드 할 수 있게 해놓아야 하는데, 업로드 파일에 대한 검증 부분이 취약하여 해커가 악성코드를 서버에 심을 수 있게 된다.





## Upload File 확장자 필터링 방식


* 클라이언트가 업로드하는 파일의 확장자를 검사하여 파일을 필터링 하게 된다. 



#### 확장자 필터링 우회 방식 예시

* 확장자의 대소문자를 바꿔가며 시도해 본다.   ex) a.php -> a.pHp

* 확장자만 바꿔서 올린다 ex) a.php -> a.jpg

* a.php -> a.php.kr

* a.php -> a.php.

* a.php -> a.php;.jpg    (세미콜론 사용)

* a.php -> a.php%00.jpg (NULL Byte 사용)



#### 파일 업로드 후 파일의 절대경로가 바로 나오는 경우도 있으나 그렇지 않을 경우 디렉토리 구조를 파악한 후 업로드 된 파일의 절대경로를 찾아야 한다.




## File Upload 취약점 대응 방식

#### 서버에서 대응 방식

* 파일이 업로드 되는 디렉토리의 실행 권한을 제거 한다.

* 업로드 된 파일의 이름을 무작위로 변경한다.

* 너무 작거나 큰 파일을 처리하는 로직을 포함해야 한다.

* 임시 디렉토리에서 업로드된 파일을 지우거나 다른곳으로 이동시킨다.

* 폼에서 어떠한 파일도 선택되지 않았다면 파일 업로드에 사용되는 변수를 초기화 시킨다.

* Content-Type 이나 File Signature를 확인하여 허용하는 파일 형식만 업로드할 수 있게끔 한다.


#### 확장자 필터링 우회 대응 방식 예시

* Server Side에서 구현한다.

* 확장자 부분의 문자를 모두 upper case로 바꾼 뒤 검사한다.



#### 아파치 서버 설정 변경

* http.conf에서 해당 디렉토리

<Directory "/usr/local/apache">

AllowOverride FileInfo

....

</Directory>


* 파일 업로드 디렉토리에 .htaccess 파일 생성한 후 Server Side 에서 Script가 실행되지 않도록 설정

<.htaccess>

<FileMatch "\.(ph|inc|lib)">

order allow,deny

deny from all

</FileMatch>

AddType text/html .html .htm .php .php3 .php4 .phtml .phps .in .cgi .pl .shtml .jsp



#### IIS 설정 

* 시작 -> 제어판 -. 관리도구 -> 인터넷 서비스 관리자

* 해당 업로드 폴더를 선택하여 실행 권한을 "없음"으로 설정한다.





## 실습













* 참고문서 : 네트워크 접근 통제(NAC) 기술동향 (TTA)*

NAC (Network Access Control)

개념

네트워크 접근 제어(NAC : Network Access Control)란 단말이 네트워크에 접근하기 전 보안정책 준수여부를 검사하여 네트워크 사용을 제어하는 것을 말한다. NAC 시스템은 네트워크에 연결된 단말의 여러 가지 정보를 수집하고, 수집된 정보를 바탕으로 단말들을 분류하며, 분류한 그룹의 보안 위협 정도에 따라 제어를 수행한다.

설명

  • NAC는 모든 네트워크를 경계선으로 본다. 어떤 사용자가 어떠한 경로를 통하여 들어오든지 사용자 및 단말은 검사를 통과하여야 내부 네트워크로 진입할 수 있다. 예를 들어 방문한 외부직원이 가 설치되어 있는 네트워크에 접근하였다고 하면 네트워크를 사용하기에 앞서 사용자에 대한 인증을 받아야 하며 사용하는 노트북이 네트워크에 연결하여도 안전하다는 검사를 받아야 한다. 또한 네트워크를 사용하면서 조금이라도 이상한 통신 (Traffic)을 수행한다면 이는 바로 NAC에 의하여 감지가 되어 외부 직원의 노트북은 네트워크로부터 격리되게 된다.

목적

접근제어/인증

  • 내부직원 역할기반 접근제어
  • 네트워크의 모든 IP기반 장치 접근제어

PC 및 네트워크 장치 통제 (무결성 체크)

  • 백신관리
  • 패치관리
  • 자산관리(비인가 시스템 자동 검출)

해킹/Worm/유해트래픽 탐지 및 차단

  • 유해트래픽 탐지 및 차단
  • 해킹행위 차단
  • 완벽한 증거수집 능력

컴플라이언스

  • 사내 정보보호 관리체계 통제 적용
  • 정기/비정기 감사 툴로 사용

분류

    *

agent-based NAC (Host-based)

  • 스위치의 단말접속포트에 연결하여 네트워크 내 단말 정보를 수집
  • 네트워크로 패킷을 송출하여 제어하는 센서장치 사용
  • 도용단말을 탐지하기 위해 네트워크에 연결된 모든 단말의 IP포트를 스캔하여 단말 유형 파악
  • 특정 단말의 유형이 시스템이 알고 있는 단말 유형 정보와 다를 경우 도용 판단
  • 도용 단말 존재여부만 판단할 뿐, 어떤 장비의 어떤 포트에 도용 단말이 연결되었는지 파악할 수 없음
  • 도용 단말 차단 불가
  • 센서 장비 설치에 다른 추가적인 비용 소요
agent-less NAC (network based)
  • 인증서버 별도 도입 또는 L7단의 Web 인증
  • 단말단의 통제력 약화로 식별/인증, 보안정책 검증 부문 보다는 모니터링 및 탐지 부문의 장점 존재
  • 네트워크 구성에 독립적 또는 인라인으로 통제장비 구축 (Out-Of-Bound, In-Line)
  • 네트워크 접속 후에 단말을 통제 한다.
  • 인증서버 미 구축 시 비용 측면에서 상대적으로 다소 우세


'보안 > Network' 카테고리의 다른 글

라우팅, 라우티드 프로토콜  (0) 2016.08.02
서비스 거부 공격 관련 용어 정리  (0) 2016.08.02
게이트웨이와 라우터의 차이점  (0) 2016.07.12

에버노트의 무료 계정 기기 2대 제한 정책

아침에 일어나서 메일을 확인하는데 에버노트에서 메일이 도착해 있었다.


위와 같은 내용의 메일이다.

한줄 요약하면 앞으로는 무료 계정을 사용하는 사용자는 데스트톱, 랩톱, 스마트폰, 태블릿 등 의 기기 중 단 2대와 연동이 가능하다는 것이다.

(컴퓨터 1대, 노트북 1대), (폰 1대, 태블릿 1대), (노트북 2대), (

에버노트가 망조라는 소식(물론 반박글도 상당히 많다)은 여러 매체를 통해 들었지만, 수익모델이 없어서 이렇게 해서 까지 무료 사용자를 유료 사용자로 전환시키는 정책을 냈어야 했나는 의문이다.

더구나 기능은 조금 다를 수 있어도 대체재가 많은 상황에서 말이다. 

그렇지 않아도 조금만 내용이 길어지면 타이핑을 못 따라오는 딜레이가 생기는 문제 때문에 좀 짜증이 났었는데, 노트앱 양대 산맥이라는 원노트로 이주를 고려중이다.


원노트, 심플노트 등 다양한 노트를 고려하고 있는데 비교하기위해 찾아본 여러 링크들을 첨부한다.





백투더맥을 운영중이신 One님이 메모를 관리하는 Flow 

맥을 쓰는 사용자로서 에버노트와 원노트를 비교해놓은 글

http://anatta.tistory.com/1657

네이버 포스트 원노트와 에버노트 장단점 비교

http://m.post.naver.com/viewer/postView.nhn?volumeNo=3902893&memberNo=15306560&vType=VERTICAL


또한 MS에서는 에버노트 사용자를 원노트로 쉽게 이주시키기 위해 import 툴을 제공하고 있다. (아래 링크 참조)

https://www.onenote.com/import-evernote-to-onenote


일단 다른 앱으로 이주를 시도해 보고, 프리미엄이나 플러스 계정을 사용할 지 결정 해야겠다.



+ Recent posts