주요정보통신기반시설 기술적 취약점 분석 평가 방법 상세가이드


안전행정부가 출간한 주요정보통신기반시설 기술적 취약점 분석 ·평가 방법 상세가이드이다.




주요정보통신기반시설 취약점 분석·평가 기준 중 기술적 취약점 점검 기준을 상세히 기술한 자료이며, 아래와 같이 구성되어 있다.

- UNIX 서버 보안가이드라인

- 윈도우즈 서버 보안가이드라인

- 보안장비 보안가이드라인

- 네트워크장비 보안가이드라인

- 제어시스템 보안가이드라인

- PC 보안가이드라인

- DBMS 보안가이드라인

- Web(웹) 보안가이드라인


안전행정부 시절 원문 URL은 아래와 같았으나 현재 행정자치부로 바뀌면서 해당 자료는 홈페이지에서 찾을 수 없다. 

http://www.mospa.go.kr/frt/bbs/type001/commonSelectBoardArticle.do?bbsId=BBSMSTR_000000000012&nttId=41297


주요정보통신기반시설_기술적_취약점_분석_평가_방법_상세가이드.7z.001

주요정보통신기반시설_기술적_취약점_분석_평가_방법_상세가이드.7z.002

주요정보통신기반시설_기술적_취약점_분석_평가_방법_상세가이드.7z.003

주요정보통신기반시설_기술적_취약점_분석_평가_방법_상세가이드.7z.004


첨부파일 최대용량이 10MB로 제한되어 있어서 7z 으로 분할해서 올리니 모든 파일을 다운로드 받아서

7z 으로 압축을 풀면 된다.



주요정보통신기반시설 취약점 분석평가 기준


주요정보통신기반시설 취약점 분석평가 기준은 취약점 진단 항목의 표준으로 사용되는 기준 항목으로 취약점 진단 분야에 관심이 있거나 시작하려는 사람에게는 필수적인 자료이다.



1. 주요정보통신기반시설 취약점 분석 평가 기준 (행정안전부, 2012. 12)

출처 : www.law.go.kr/flDownload.do?flSeq=12457820

첨부파일 : 

주요 정보통신기반시설 취약점 분석·평가기준 (전문).hwp


I. 취약점 분석·평가 개요

o 취약점 분석·평가란, 악성코드 유포, 해킹 등 사이버 위협에 대한 주요정보통신기반시설의 취약점을 종합적으로 분석 및 평가 개선하는 일련의 과정을 말함

- 주요정보통신기반시설의 안정적 운영을 위협하는 사이버보안 점검항목과 항목별 세부 점검항목을 도출하여 취약점 분석을 실시

- 발견된 취약점에 대한 위험등급 부여, 개선방향 수립 등의 유기적인 평가 수행





2. 주요정보통신기반시설 취약점 분석 평가 기준 근거

- 정보통신기반 보호법 제9조(취약점의 분석·평가)

출처 : http://www.law.go.kr/%EB%B2%95%EB%A0%B9/%EC%A0%95%EB%B3%B4%ED%86%B5%EC%8B%A0%EA%B8%B0%EB%B0%98%20%EB%B3%B4%ED%98%B8%EB%B2%95

첨부파일 : 

정보통신기반 보호법.pdf



제1조(목적) 이 법은 전자적 침해행위에 대비하여 주요정보통신기반시설의 보호에 관한 대책을 수립·시행함으로써 동 시설을 안정적으로 운용하도록 하여 국가의 안전과 국민생활의 안정을 보장하는 것을 목적으로 한다.


제2조(정의) 이 법에서 사용하는 용어의 정의는 다음과 같다.  <개정 2007.12.21.>

1. "정보통신기반시설"이라 함은 국가안전보장·행정·국방·치안·금융·통신·운송·에너지 등의 업무와 관련된 전자적 제어·관리시스템 및 「정보통신망 이용촉진 및 정보보호 등에 관한 법률」 제2조제1항제1호의 규정에 의한 정보통신망을 말한다.

2. "전자적 침해행위"라 함은 정보통신기반시설을 대상으로 해킹, 컴퓨터바이러스, 논리·메일폭탄, 서비스거부 또는 고출력 전자기파 등에 의하여 정보통신기반시설을 공격하는 행위를 말한다.

3. "침해사고"란 전자적 침해행위로 인하여 발생한 사태를 말한다.


제9조(취약점의 분석·평가) ①관리기관의 장은 대통령령이 정하는 바에 따라 정기적으로 소관 주요정보통신기반시설의 취약점을 분석·평가하여야 한다.

②관리기관의 장은 제1항의 규정에 의하여 취약점을 분석·평가하고자 하는 경우에는 대통령령이 정하는 바에 따라 취약점을 분석·평가하는 전담반을 구성하여야 한다.

③관리기관의 장은 제1항의 규정에 의하여 취약점을 분석·평가하고자 하는 경우에는 다음 각호의 1에 해당하는 기관으로 하여금 소관 주요정보통신기반시설의 취약점을 분석·평가하게 할 수 있다. 다만, 이 경우 제2항의 규정에 의한 전담반을 구성하지 아니할 수 있다.  <개정 2002.12.18., 2007.12.21., 2009.5.22., 2013.3.23., 2015.6.22.>

1. 「정보통신망 이용촉진 및 정보보호 등에 관한 법률」 제52조의 규정에 의한 한국인터넷진흥원(이하 "인터넷진흥원"이라 한다)

2. 제16조의 규정에 의한 정보공유·분석센터(대통령령이 정하는 기준을 충족하는 정보공유·분석센터에 한한다)

3. 「정보보호산업의 진흥에 관한 법률」 제23조에 따라 지정된 정보보호 전문서비스 기업

4. 「정부출연연구기관 등의 설립·운영 및 육성에 관한 법률」 제8조의 규정에 의한 한국전자통신연구원

④미래창조과학부장관은 관계중앙행정기관의 장 및 국가정보원장과 협의하여 제1항의 규정에 의한 취약점 분석·평가에 관한 기준을 정하고 이를 관계중앙행정기관의 장에게 통보하여야 한다.  <개정 2008.2.29., 2013.3.23.>

⑤주요정보통신기반시설의 취약점 분석·평가의 방법 및 절차 등에 관하여 필요한 사항은 대통령령으로 정한다.



보안 취약점 진단 개요


1. 개요

보안 취약점 진단은 보안 취약성 진단, 보안 취약점 점검, 보안 취약성 점검 등의 용어로 사용되고, 정보보호업체 마다 자신들만의 정의가 있어서 조금씩 사용하는 용어가 다르긴 하나 일반적으로 다음과 같이 소개된다.


보안 취약점 진단은 고객사의 주요 정보시스템을 대상으로 취약점 평가 항목을 점검하여 내재되어 있는 보안 취약점을 도출하고, 그 발생 원인을 분석하여 보안 수준을 강화함으로써 서비스의 안전한 운영을 목적으로 하고 있다. 



2. 보안 취약점 진단 분류

- 서버 취약점 진단 (UNIX 계열, Windows 계열)

- 네트워크 취약점 진단 (Cisco, Pumpkin, Alcatel, Piolink 등)

- DBMS 취약점 진단 (Oracle, MySQL, MSSQL, DB2 등)

- 정보보호시스템 취약점 진단 (방화벽, IPS, IDS, UTM, 접근제어, NAC 등)

- PC 취약점 진단 (Windows XP, 7, 8, 10 등)

- 웹 어플리케이션 취약점 진단 (웹 기반의 어플리케이션)

- 모바일 앱 취약점 진단 (IOS, Android)

* VB, Delphi, VC, .NET 등으로 작성된 업무용 어플리케이션은 일반적인 취약점 진단 분야에서는 제외됨

 

참고 : 몇 년 전부터 "모의해킹, 모의침투공격" 등의 명칭으로 "웹 어플리케이션 취약점 진단"을 실시하곤 하는데 엄연히 두 가지는 구분되어 사용되어야 한다.



3. 진단 기준

정보보호업체 마다 각각의 고유한 취약점 진단 기준이 존재한다.

하지만 최근 들어 주요정보통신기반시설 취약점 분석 평가 기준을 취약점 진단의 표준 기준으로 삼고 있다.



4. 진단절차

진단절차는 특별하지 않는 이상 다음과 같이 실시된다.


1) 진단대상선정

2) 정보수집

3) 취약점 진단

4) 진단결과 분석

5) 대응책 수립

6) 보고서 작성



5. 수행 분야

- 정보보호관리체계(K-ISMS, IOS27001 등) 및 개인정보보호관리체계 컨설팅 등에서 기술적 취약점 진단 항목으로 수행

- 주요정보통신기반시설 점검시 기술적 취약점 진단항목 관점에서 수행

- 전문적인 기술적 취약점 진단 수행

- 통합유지보수 관점에서 취약점 진단 분야 포함

- 보안감사 관점에서 수행

- 기타 등등



이상으로 취약점 진단에 대해서 간단하게 알아보았다.


webhacking.kr 1번 문제 풀이


webhacking.kr 의 첫번째 문제..


문제접속 : http://webhacking.kr/index.php?mode=challenge&no=1

다음과 같은 화면이 나타난다.


URL 메뉴에 링크가 걸려있어서 클릭하면 다음 페이지로 연결된다.

http://webhacking.kr/challenge/web/web-01/


index.phps 클릭 시 해당문제의 소스가 제공된다.

http://webhacking.kr/challenge/web/web-01/index.phps

 

<?

if(!$_COOKIE[user_lv])

{

SetCookie("user_lv","1");

echo("<meta http-equiv=refresh content=0>");

}

?>

<html>

<head>

<title>Challenge 1</title>

</head>

<body bgcolor=black>

<center>

<br><br><br><br><br>

<font color=white>

---------------------<br>

<?

 

$password="????";

 

if(eregi("[^0-9,.]",$_COOKIE[user_lv])) $_COOKIE[user_lv]=1;

 

if($_COOKIE[user_lv]>=6) $_COOKIE[user_lv]=1;

 

if($_COOKIE[user_lv]>5) @solve();

 

echo("<br>level : $_COOKIE[user_lv]");

 

?>

<br>

<pre>

<a onclick=location.href='index.phps'>----- index.phps -----</a>

</body>

</html>

 

소스를 봤을 때 해당 문제는 Cookie 조작 문제임을 알 수 있다.

 

소스 중 핵심 구문을 살펴보면 다음과 같다.

 1) 숫자 , . 만 허용한다.

if(eregi("[^0-9,.]",$_COOKIE[user_lv])) $_COOKIE[user_lv]=1;

 

2) Cookie 변수 user_lv 6이상이면 user_lv 1이고

User_lv 5를 초과할 경우 level1을 통과할 수 있다.

if($_COOKIE[user_lv]>=6) $_COOKIE[user_lv]=1;

if($_COOKIE[user_lv]>5) @solve();

 

결국 5초과, 6미만의 값을 넣으면 된다.

해당 소스에서 피리어드(.)의 입력이 가능하므로 5.5를 입력하도록 하자

 

Cookie를 조작하여 user_lv 값으로 5.5를 입력한다.


Congraturation과 함께 level 통과 및 200점 획득



level clear!!



webhacking.kr 25번 문제 풀이


이번 문제는 간단한 javascript 우회 문제이다.


문제 접속 : http://webhacking.kr/challenge/javascript/js2.html

Level 15로 접속하면 Access_Denied Alert이 발생하고 return 된다.


js2.html 소스 화인이 필요하여 chrome view-source로 해당 페이지 소스 확인

view-source:http://webhacking.kr/challenge/javascript/js2.html



소스 확인 결과 off_script가 이번 문제의 패스워드이다.

http://webhacking.kr/index.php?mode=auth 로 가서 획득한 패스워드를 입력하면 성공



다음과 같이 level clear를 확인할 수 있음









최초작성일 : 2017/04/02


이 글은 예전 세미나 용도로 작성해뒀던 자료를 각색하였음


1. BOF(Buffer Overflow) 개요


[위키피디아(위키백과)] http://ko.wikipedia.org/wiki/%EB%B2%84%ED%8D%BC_%EC%98%A4%EB%B2%84%ED%94%8C%EB%A1%9C

버퍼 오버플로(buffer overflow) 또는 버퍼 오버런(buffer overrun)은 메모리를 다루는 데에 오류가 발생하여 잘못된 동작을 하는 프로그램 취약점이다컴퓨터 보안과 프로그래밍에서 이는 프로세스가 데이터를 버퍼에 저장할 때 프로그래머가 지정한 곳 바깥에 저장하는 것이다. 벗어난 데이터는 인접 메모리를 덮어 쓰게 되는데 다른 데이터가 포함되어 있을 수도 있는데손상을 받을 수 있는 데이터는 프로그램 변수와 프로그램 흐름 제어 데이터도 포함된다이로 인해 잘못된 프로그램 거동이 나타날 수 있으며메모리 접근 오류잘못된 결과프로그램 종료또는 시스템 보안 누설이 발생할 수 있다. 


[네이버 지식백과버퍼 오버플로 [buffer overflow] (컴퓨터인터넷IT용어대사전, 2011.1.20, 일진사)

서버에서 가동되고 있는 프로그램에설정되어 있는 수신 용량보다 훨씬 큰 용량의 데이터를 한꺼번에 보낼 때 서비스가 정지되는 상태보낸 데이터에 특수한 실행 프로그램을 넣어두면정지시킨 서비스가 관리자 권한으로 움직이는 경우에 그 특수한 프로그램이 관리자 권한으로 동작한다이렇게 하여 서버에 침입하여 다양한 공격을 한다버퍼 오버 플로는 응용 프로그램을 이용하여 보내진 데이터가 수신 용량을 넘는지를 체크하도록 해두면 막을 수 있다 .



 결국 Buffer Overflow란...


1) 정해진 메모리보다 많은 데이터를 입력 받아 특정 영역을 덮음으로써 프로그램 흐름을 바꿔 공격자가 원하는 코드를 실행하는 공격

   <Phrack Magazine 49-14>, Aleph One


2) 입력 값의 길이를 올바르게 검사하지 않아 생기는 취약점

   프로그램의 실행 흐름을 바꾸어 특정 코드가 실행되게 하는 기법



2. 참고사항


이 문서는 단순히 이어져있는 buffer를 overflow하여 BOF를 성공적으로 수행하는 내용을 설명한다.



3. 실습


OS 환경 (redhat 6.2 버전이 BOF 입문자가 실습하기 매우 좋은 환경임, random stack 이니 stack guard니 exec shield니 그런거 없음)

 redhat 6.2 


간단한 실습코드

// boftest.c


#include <stdio.h>

#include <dumpcode.h>


int main(int argc, char *argv[]) {

        char buf[16];

        char buf2[16];

        if (argc != 2) {

                printf("Usage : %s arg\n“, argv[0]);

                exit(1);

        }

        strcpy(buf2, argv[1]);

        system(buf);

        dumpcode(buf2,64);

} 


컴파일 후 아래와 같이 실행하면 command not found 에러를 발견할 수 있다.

command not found 는 shell이 어떤 명령을 실행했는데 해당 명령어를 발견하지 못했다는 의미이다.

즉, system(buf); 에 의해 무엇인가 실행이 되었지만 해당 command를 찾을 수 없다는 의미가 되겠다.

만약 buf2를 overflow해서 buf에 공격자가 원하는 값을 삽입할 수 있다면 해당 명령어를 실행할 수 있다!!

[demo@redhat6 demo]$ ./bof1 AAAAAAAAAAAA

shx?: command not found

0xbffffb68  41 41 41 41 41 41 41 41 41 41 41 41 00 fb ff bf   AAAAAAAAAAAA....

0xbffffb78  88 fb ff bf 8b 84 04 08 78 97 04 08 8c 97 04 08   ........x.......

0xbffffb88  a8 fb ff bf cb 09 03 40 02 00 00 00 d4 fb ff bf   .......@........

0xbffffb98  e0 fb ff bf 68 38 01 40 02 00 00 00 f0 83 04 08   ....h8.@........


stack 확인

./bof1 AAAAAAAAAAAA 실행 당시 stack 구조를 살펴보면 다음과 같다.

                            Low address

        |     buf2      | AAAAAAAAAAAAAAAA + 00 fb ff bf

        +------------+

        |     buf       | /bin/sh - system() - 88 fb ff bf 8b 84 04 08 78 97 04 08 8c 97 04 08 - command not found

        +------------+

        |     SFP      | - a8 fb ff bf

        +------------+

        |     RET      | - cb 09 03 40

        +------------+ 

                           High address


argument를 통해 입력 받는 값은 buf2에 저장된다. - strcpy(buf2, argv[1]); 

우리는 buf2를 overflow 하여 buf에 우리가 실행할 명령어를 삽입하면 된다. - system(buf);


공격 payload를 구성하면 다음과 같다

[ buf2 ][ buf ][ sfp ][ ret ]


buf2[16] : AAAAAAAAAAAAAAAA

buf[16] : /bin/sh

sfp : Stack Frame Pointer (ebp)

ret : return address, 함수 복귀주소


참고 :  이 글에서는 stack frame pointer overflow 나 ret를 overflow 하지 않고 단순히 buffer를 overflow 하여 공격하는 방법을 다룬다.


최종 공격 payload를 그려보면 다음과 같다

[ AAAAAAAAAAAAAAAA ][ /bin/sh ][ sfp ][ ret ]

                                  ~~~~~~

                                   system()에 의해 실행된다.


다음과 같이 공격을 실행하면 공격 의도대로 shell을 획득할 수 있다.

[demo@redhat6 demo]$ ./bof1 AAAAAAAAAAAAAAAA/bin/sh

bash$ id

uid=501(demo) gid=501(demo) groups=501(demo) 


BOF 개념 끝


'BOF' 카테고리의 다른 글

[windows] windows buffer overflow #3  (0) 2017.04.01
[windows] windows buffer overflow #2  (0) 2017.04.01
[windows] windows buffer overflow #1  (0) 2017.04.01

출처가 불분명한 파일 등을 실행했다가 랜섬웨어(Ransomeware)에 감염되면 복구는 결코 쉽지 않다.


* 랜섬웨어 : 컴퓨터 시스템을 감염시켜 접근을 제한하고 일종의 몸값을 요구하는 악성 소프트웨어의 한 종류

* 출처 : 위키백과 - https://ko.wikipedia.org/wiki/%EB%9E%9C%EC%84%AC%EC%9B%A8%EC%96%B4


복구 업체를 통해서 감염된 파일을 복구할 수 있다고 하나 복구 업체도 결국 Decryption 도구를 구하거나, 구매하거나, 요금을 지불하여 복구한다.


랜섬웨어에 감염되었다면 아래 사이트를 방문해보자

https://www.nomoreransom.org/


랜섬웨어에 감염되어 암호화된 파일을 통해 랜섬웨어 종류 확인도 가능하고... 

- 현재 제공하는 Decryptor로 복구 가능한 랜섬웨어 종류인지 확인 가능


38종의 랜섬웨어 Decryptor(2017.4.24 기준) 등을 제공한다.


- 2017.4.24 기준 Decryptor 리스트

Rakhni Decryptor (updated 2-3-2017 with Dharma)

Rannoh Decryptor (updated 20-12-2016 with CryptXXX v3)

Cry9 Decryptor

Damage Decryptor

Crypton Decryptor

Merry X-Mas Decryptor

BarRax Decryptor

Alcatraz Decryptor

Bart Decryptor

Crypt888 Decryptor

HiddenTear Decryptor

Noobcrypt Decryptor

CryptoMix Decryptor

Popcorn Decryptor

Marlboro Decryptor

GlobeImposter Decryptor

MRCR Decryptor

Globe3 Decryptor

Derialock Decryptor

PHP Ransomware Decryptor

WildFire Decryptor

Chimera Decryptor

Teslacrypt Decryptor

Shade Decryptor

CoinVault Decryptor

Jigsaw Decryptor

TM Ransomware File Decryptor

NMoreira Decryptor

Ozozalocker Decryptor

Globe Decryptor

Globe2 Decryptor

FenixLocker Decryptor

Philadelphia Decryptor

Stampado Decryptor

Xorist Decryptor

Nemucod Decryptor

Gomasom Decryptor

Linux.Encoder Decryptor



끝으로...

랜섬웨어는 신뢰할 수 없는 사이트 방문, 피싱메일, P2P 등을 통한 파일 실행, SNS 등의 다양한 경로 및 방법으로 감염될 수 있음을 알아야 한다.

결국 랜섬웨어 감염을 가능하면 사전에 예방하는 방법을 몸에 익혀두면 많은 도움이 될 것이다. (뿐만 아니라 악성코드까지 덤으로 예방 가능)


백퍼 내 기준에서 생각나도 대로 제시하는 예방 방법들 (추후 전문적으로 찾아보고 내용 업데이트 할 수도..)


- 출처가 불분명한 파일들은 백신 검사 후 실행

  또는, 백신에서 악성코드로 인식하지 않더라도 100% 장담할 수 없다면 실행하지 말자

  용량이 128MB 미만이라면 https://virustotal.com을 이용해서 의심스러운 파일을 다양한 백신으로 검사하는 습관도 아주 좋다.


- 주기적인 운영체제 및 각종 SW의 보안 패치 적용

   DBD 기법 등을 이용해서 감염되는 사례는 주로 윈도우 OS, Flash, 오피스 등의 0-day 취약점 등을 이용하니 보안패치는 필수..

- 백신 최신 업데이트 및 주기적인 검사 (& 성능좋은 백신 사용)

- 중요 데이터 백업 (요즘 외장형 HDD가 싸다..)

- 데이터 보호 도구 사용 (대표적으로 Folder Lock 류의 유틸을 사용하여 데이터 접근 통제)

- 기타 등등


참고하시라..



랜섬웨어 정의 및 감염경로 참고 사이트 :

https://www.krcert.or.kr/ransomware/information.do




1. 개요


This Phishing Attack is Almost Impossible to Detect On Chrome, Firefox and Opera

해석하면 Chrome, Firefox, Opera Web Browser에서 발견하기 거의 불가능한 피싱 공격.. 쯤 될려나..


원문 보기 : http://thehackernews.com/2017/04/unicode-Punycode-phishing-attack.html

참고 : https://www.xudongz.com/blog/2017/idn-phishing/


요약해서...

데모를 확인해보면 apple.com 으로 링크된 페이지를 클릭하면 




피싱 사이트로 연결된다. -_-




2. 분석


분명 링크된 페이지는 apple.com 으로 연결되는데 어떻게 피싱 사이트로 연결되는가?

답은 퓨니코드(punycode)와 키릴(Cyrillic) 문자에 있다.


퓨니코드를 이용하면 도메인 이름에 모든 유니코드 문자를 사용할 수 있기 때문에, IDNA를 사용하여 피싱공격을 할 수 있다.

예를 들어 "wikipedia.org"라는 도메인을 스푸핑하기 위해서 "wikipеdiа.org"(IDNA에서 xn--wikipdi-8fg6b.org) 도메인을 사용할 수 있다. 굵게 표시한 키릴 문자는 보통 로마자와 비슷하거나 같게 보이기 때문에 사용자가 같은 도메인이라 인식할 가능성이 높아진다.


출처 : https://ko.wikipedia.org/wiki/%ED%93%A8%EB%8B%88%EC%BD%94%EB%93%9C


좀 더 설명하면..

2005년 다국어 도메인은 '동형 이의어 스푸핑 공격(Homograph Spoofing Attacks)'에 대한 취약점이 발견되었다. 예를 들어, 유니코드 코드 포인트가 U+0430인 키릴 문자(Cyrillic) 'a'는 유니코드 코드 포인트가 U+0061인 라틴어 소문자 'a'와 코드 포인트는 다르지만 모양이 동일하다. 이용자가 키릴 문자 다국어 도메인 'xn--pypal-4ve.com' 접속 시 웹브라우저 주소창에는 'pаypal.com'로 표시되어 이용자를 혼동시키고 해킹에 악용될 소지가 있는 것이다.


출처 : http://networkers.egloos.com/1120623


즉, https://xn--80ak6aa92e.com/ 접속 시 Chrome, Firefox, Opera Web Browser에서는 Unicode (다국어) 형태로 URL을 보여주기 때문에 apple.com 으로 접속한 것처럼 속일 수 있다는 것이다.


- 소스를 확인해보면 이해가 빠르다.


- explorer에서는 https://xn--80ak6aa92e.com/ 그대로 노출된다.



3. 대응방안

- 잘 알려진 사이트가 피싱 대상이 되므로 포탈사이트나 검색사이트에서 조회해서 안전하게 접속하는 방법

- 직접 URL을 입력하여 접속하는 방법

- 잘 알지 못하는 사이트에서는 링크 타고 접속하지 않기

- URL을 퓨니코드로 보여지도록 웹 브라우저 설정하기

- Chrome, Firefox, Opera Web Browser가 이 문제를 해결하기 전까지 쓰지 말기 -_-

- 피싱에 자주에용되는 금융, 포탈, 쇼핑몰 등은 이미 SSL이 구축되어 있으므로 SSL 인증서 정보 확인하기 등이 있다.



알아야 속지 않으니, 잘 기억해두자!!



참고 : 

- 한글-퓨니코드 변환기 : https://whois.kisa.or.kr/idnconv/index.jsp




P.S :

2017.4.17에 포스팅 된 글을 소개했지만, 이미 2005년도 관련 기법은 공개되었다. (원문에서는 2001년 Homograph 공격으로 알려져 있다고 한다...)

- 현재까지도 Chrome, Firefox, Opera Web Browser에서 해당 기법을 사용하여 공격할 수 있음을 시연했다.

  해당 브라우저들은 신뢰할 수 있는 도메인만 원래 의도된 유니코드 이름으로 보여주는 방식을 사용한다.

  하지만, 이 공격은 SSL을 이용함으로써 웹 브라우저로 하여금 신뢰할 수 있는 도메인으로 믿게끔 해당 기능을 역으로 이용한 것으로 보여진다.


사파리, 파이어폭스, 오페라 웹 브라우저는 이 문제를 해결하기 위해 국제화된 웹사이트에 접속하는 것을 제한하는 대신, 신뢰할 수 있는 도메인만 원래 의도된 유니코드 이름으로 보여 주고 그렇지 않은 도메인은 "xn--"으로 시작하는 퓨니코드 이름으로 보여 주는 방법을 쓴다. 단 ISO 8859-1에 있는 문자들은 섞여 쓰여도 이 취약점을 쓸 수 있는 가능성이 적기 때문에, 명시적으로 허용하지 않아도 유니코드 이름으로 표시된다. 사파리도 보안 업데이트 2005-003 이후로 특히 피싱에 잘 사용되는 그리스 문자, 키릴 문자, 체로키어가 들어 있는 도메인을 이와 비슷한 방법으로 표시하는 방법을 사용하고 있다. 


출처 : https://ko.wikipedia.org/wiki/%ED%93%A8%EB%8B%88%EC%BD%94%EB%93%9C



개인정보의 안전성 확보조치 기준은 「개인정보 보호법」(이하 “법”이라 한다) 제23조제2항, 제24조제3항 및 제29조와 같은 법 시행령 (이하 “영”이라 한다) 제21조 및 제30조에 따라 개인정보처리자가 개인정보를 처리함에 있어서 개인정보가 분실·도난·유출·위조·변조 또는 훼손되지 아니하도록 안전성 확보에 필요한 기술적·관리적 및 물리적 안전조치에 관한 최소한의 기준을 정하는 것을 목적으로 한다.


- 요약하면 개인정보보호법의 기술적, 관리적, 물리적 안전조치에 관한 최소한의 기준을 정의한 고시임

- 개인정보보호법, CPPG, PIA, ISMS, PIMS 등을 공부하거나 심사시 필수적으로 알아야 할 내용임



제정 2011. 9.30. 행정안전부고시 제2011-43호

개인정보의 안전성 확보조치 기준 고시 및 해설서.pdf


개정 2014.12.30. 행정자치부고시 제2014- 7호

개인정보의 안전성 확보조치 기준 해설서(20150217).pdf


개정 2016. 9. 1. 행정자치부고시 제2016-35호

개인정보의 안전성 확보조치 기준 해설서(20161230).pdf


출처 : https://www.privacy.go.kr/



1. SMTP 정의

SMTP(Simple Mail Transfer Protocol), 간이 우편 전송 프로토콜

간이 전자 우편 전송 프로토콜(Simple Mail Transfer Protocol, SMTP)은 인터넷에서 이메일을 보내기 위해 이용되는 프로토콜이다. 사용하는 TCP 포트번호는 25번이다. 상대 서버를 지시하기 위해서 DNS의 MX레코드가 사용된다. RFC2821에 따라 규정되어 있다. 메일 서버간의 송수신뿐만 아니라, 메일 클라이언트에서 메일 서버로 메일을 보낼 때에도 사용되는 경우가 많다.

출처 : (위키백과 - https://ko.wikipedia.org/wiki/%EA%B0%84%EC%9D%B4_%EC%9A%B0%ED%8E%B8_%EC%A0%84%EC%86%A1_%ED%94%84%EB%A1%9C%ED%86%A0%EC%BD%9C)



2. SMTP relay

일반적으로 이메일은 본인이 사용하고 있는 메일주소를 관리하고 있는 메일서버를 통하여 타인과 주고 받는다.

예를들어 id@mail.net을 사용하고 있다면, mail.mail.net 이 메일서버 주소가 된다.

이때 메일서버는 해당 이메일이 메일서버에 등록된 사용자인지 확인하는 과정을 거치게 된다. (여러방법이 있겠지만 SMTP AUTH 방식이 보편적이다.)


하지만 외부에서 메일서버를 경유하여(일반적으로 IP 또는 IP 대역을 Open하는 방식으로 별도의 인증없이 사용된다. - 웹 어플리케이션에서 메일 발송 등) 다른 메일서버로 이메일을 보내는 방식을 SMTP Relay 라고 한다.



3. SMTP open relay

여기서 모든 전자메일 메시지를 Relay 하도록 잘못 설정되어 있다면, 해당 메일서버는 스팸메일의 발신지로 사용될 수 있다.
(아니, 오랜시간이 걸리지 않아도 해비 스패머들은 해당 메일서버가 Open Relay로 설정되어 있다는 것을 알아내고 스팸메일의 발송을 시작할 것이다.)


4. SMTP open relay 점검

SMTP open relay 설정이 되어 있는지 점검 할 수 있는 online 사이트들이 다수 존재한다.

필요할 때 유용하게 쓰자...


online 점검 사이트 : 아래 사이트 이외에도 다양하게 존재한다.

http://www.mailradar.com/openrelay/

[이미지 수정]


http://www.nmonitoring.com/open-relay-test.html

[이미지 수정]


http://www.aupads.org/test-relay.html

[이미지 수정]


https://mxtoolbox.com/SuperTool.aspx

[이미지 수정]





+ Recent posts