공부/JUN STUDY

Zeroday VS Oneday VS Olday(N-day) 제로 데이 VS 원데이 VS 올데이

JUNFUTURE 2021. 1. 24. 23:45

핵심 정리

Olday, Oneday, Zeroday 모두 취약점의 종류를 나타내는 단어입니다.
0, 1, N day 취약점은 패치발표, 패치 적용, 해당 취약점에 대한 관심도를 기준으로 나뉩니다.

 

0 - day

패치를 발표하지 않음. 무방비 상태

 

1 - day

패치를 발표함. 적용은 안됨. 시간이 생명

 

N - day

패치를 발표한지 오래임. 아직도 적용이 안됨

 

 

구분 0-day 1-day N-day 취약점 해결(취약점X)
패치 발표 X O O O
패치 적용 X X X O
벤더 관심도 O O X O

0-day VS 1-day VS N-day 비교 표

 


서론

평소 Zeroday attack이 굉장히 위험하다. 뭐 이런 이야기들은 손쉽게 들어볼 수 있습니다.

반면에 Oneday, Olday(N-day)라는 단어를 처음에 들었을때 이런 단어가 있었어? 하며 당황할 수도 있는데요.

(실제로 저는 처음에 Onday라는 단어를 듣고 Zeroday의 오타 인줄 알았습니다.)

 

이에 본 포스팅에서는 아래와 같은 주제에 대해 다뤄 보겠습니다.

1. Olday, Oneday, Zeroday (N-day, 1-day, 0-day) 란?
2. 각 단어들을 구분하는 방법 이해 (Olday VS Oneday VS Zeroday)

 


본론 1 - Zeroday, Oneday, Olday (0-day, 1-day, N-day)란?

1-1. ( ) - day란?

설명의 편의를 위해, ( ) - day 를 Zeroday, Oneday, Olday 처럼 day로 끝나는 취약점을 나타내는 단어라고 정의하겠습니다.

 

가장 먼저 ( ) - day 란 무엇인가에 대해서 알아봅시다.

Zeroday, Oneday, Olday란 모두 취약점의 종류를 나타내기 위한 단어 입니다.

 

이 세가지 단어기 취약점의 종류를 나타낸다는 것은 이해에 큰 도움이 됩니다.

여기서 취약점이라는 것은 아직 패치가 되지 않았음을 전제 하는 의미라고 이해해주시면 좋을 것 같습니다.

 

(Zeroday, Oneday, Olday == 취약점을 나타내는 단어)
(취약점 == 아직 패치가 되지않았음 )

 

 

어찌 되었던 Zeroday, Oneday, Olday 는 전부 취약점을 나타내는 단어라는 것을 알게되었습니다.

 

이제 각각이 어떠한 특성을 가지고 있는 취약점인지 이해한다면

이 세가지 단어를 성공적으로 이해할 수 있을 겁니다.

 

각각의 ( ) - day 취약점의 특성을 이해하기 위해서는

패치 발표 여부, 해당 패치 적용 여부, 해당 취약점을 수정해야할 집단에서의 관심도

이 세가지를 기준으로 구분하는 것이 좋습니다.

 

아래에선 각각의 기준들의 의미에 대해서 살펴보도록 하겠습니다.

 


패치 발표 여부

우선, 패치 발표 여부는 해당 취약점이 발견된 소프트웨어나 서비스를 관리하는 벤더사나 공공기관같은 취약점을 수정해야할 의무를 가지고 있는 집단에서 해당 취약점을 인지하고, 그에 대한 대응방안을 발표 했는가를 뜻 합니다.

 

일반적으로 해당 취약점에 대한 패치를 발표 하지 않았다는 것은 취약점을 수정해야할 집단이 취약점에 대해 인지하지 못하고, 대응방안을 마련하지 못한, 공식적으로는 무방비 상태와 같은 말이라고 이해하면 좋을 것 같습니다.

 

※ 물론 패치를 발표하지 않았다고 해서 내부적으로 취약점에 대해 인지도 못하고, 대응방안도 마련하지 못했다고 단정할 수 는 없습니다.

집단 내부의 사정으로 취약점 공개를 꺼리거나 (취약점 공개 혹은 기업이미지 실추로 인한) 대응방안을 열심히 연구중이지만 아직 부족할때가 있을 수 있기 때문입니다. 

하지만 Zeroday, Oneday, Olday 이 세가지 단어를 구분할 때에 있어서 만큼은, 보안패치 발표가 없다는 것은 무방비 상태를 뜻한다고 생각하면 이해가 수월하다는 이야기입니다.

 

 

해당 패치 적용 여부

해당 패치 적용 여부는 패치 발표 이후, 해당 패치를 취약점이 발생한 소프트웨어나 서비스에 실제로 적용했는가를 뜻합니다.

 

 

해당 취약점을 수정해야할 집단에서의 관심도(이하 관심도)

관심도란 패치 발표 이후, 실제로 패치가 적용되기까지의 시간에 반비례하는 값이라고 정의 하겠습니다.

 

말이 쓸데없이 어려웠죠. 쉽게 말해 패치를 신속히 잘 적용했는가를 뜻합니다.

패치 발표 이후 재빨리 패치를 적용했다면, 해당 취약점에 대한 관심도가 높았다고 볼 수 있습니다.

반대로 패치는 발표 해놓고 몇 십년이 지난채로 패치를 적용하지 않고 있다면, 해당 취약점에 대한 관심도가 낮았다고 볼 수 있습니다.

 

※ Olday, Oneday, Zeroday 취약점을 구분하는 기준으로 언급한 단어 들(패치 발표 여부, 해당 패치 적용 여부, 관심도)은 전부 필자가 정의한 용어입니다. 본 포스팅 내에서 이해를 돕기 위해 정의한 단어일 뿐, 절대 공식적인 단어가 아님을 명심해주시면 감사하겠습니다.

 


본론 2- Zeroday VS Oneday VS Olday

이제 앞서 언급한 기준들을 이용하여 Olday, Oneday, Zeroday 각각의 특성에 대해서 알아 보도록 하겠습니다.

1. Zeroday

Zeroday (1-day)
패치 발표 X
패치 적용 X
관심도 O (△?)

Zeroday 취약점은 패치 발표도 이루어지지 않은, 아직 패치가 실제로 적용되지 않았고, 패치 발표 시점이 최근이여서 해당 취약점 개선에 대한 관심도가 있는 취약점을 의미합니다.

 

Zeroday 취약점의 핵심적인 특성은 패치 발표조차 이루어지지 않았다는 것 입니다.

 

Zeroday 취약점을 수정해야할 집단은 해당 취약점의 존재를 알고도 아직 마땅한 대응방안을 내놓지 못했거나 심지어는 해당 취약점의 존재조차 인지하지 못하고있는, 말그대로 무방비 상태입니다.

 

악의적인 해커에서 Zeroday 취약점 공격을 당했다면 해당 집단은 공격 시점부터 부랴부랴 해당 취약점에 대한 대응방안 개발을 시작해야하기 때문에, 소프트웨어나 서비스 운용에 굉장히 치명적인 취약점이라고 할 수 있습니다.

 

앞서 언급하였듯, Zeroday 취약점은 기존에 인지하고 있지 못한 취약점을 뜻하기 때문에 소프트웨어나 서비스를 제공 중인 집단에서는 Zeroday 취약점에 대해 긴장하고 있을 확률이 높습니다. 또한, 설령 알려지지 않은 취약점이라 하더라도 관심도가 저조하다면 보안패치조차 하지 않은 취약점(사실상 무시)로 남을 확률이 있기 때문에 관심도를 O (△?)와 같은방법으로 표기 해두었습니다.

 

2. Oneday (1-day)

Oneday (1-day)
패치 발표 O
패치 적용 X
관심도 O (△)

Oneday 취약점은 패치 발표는 이루어 졌으나, 아직 패치가 실제로 적용되지 않았고, 패치 발표 시점이 최근이여서 해당 취약점 개선에 대한 관심도가 있는 취약점을 의미합니다.

 

Oneday 취약점의 핵심적인 특성은 패치 적용이 되지 않았다는 것입니다.

내부적으로 취약점도 인식했고, 이에 대한 대응방안도 완성된 상태이지만 아직 실 소프트웨어나 서비스에 보안 패치를 적용하지 못한 상태입니다. 

 

취약점에 대한 패치 발표에는 일반적으로 해당 취약점에 대한 설명대응 계획이 반영됩니다.

제공하는 소프트웨어나 서비스의 장애가 발생했을때, 이를 신속하게 공지해주고 대응 계획을 발표하는 것은 정상적인 벤더사나 서비스 제공기관이라면 아주 바람직한 자세입니다. 

 

하지만 동시에 패치 발표라는 것은 취약점의 존재를 세상 만천하에 알리는 것이기 때문에 패치가 발표된 시점과 실제로 패치가 적용되는 잠깐의 시간 텀을 이용한 공격에 노출되기 쉽습니다. 이 시점에 이루어지는 공격이 바로 Oneday 취약점 공격입니다.

 

Oneday 취약점의 경우, 취약점을 수정해야할 집단에서의 관심도가 높다면 하루 빨리 패치가 이루어져야 할테고 관심도가 낮다면 Olday 취약점으로 남아있을 가능성이 존재하는 취약점입니다. 때문에 관심도를 O (△) 와 같은방법으로 표기해두었습니다.

 

3. Olday (N-day)

Olday (1-day)
패치 발표 O
패치 적용 X
관심도 X

Olday 취약점은 패치 발표도 이루어 졌고, 패치 발표로부터 시간도 굉장히 많이 지났음에도 불구하고 패치 적용이 이루어 지지 않은 취약점을 의미합니다.

 

Olday 취약점의 핵심적인 특성은 해당 취약점에 대한 개선 의지가 현저히 낮다는 것입니다.

내부적으로 취약점을 인식한 것을 넘어 적절한 대응방안도 마련해두었지만, 모종의 이유로 패치를 적용하지 않은 것 입니다.

 

패치 발표로 취약점이 공개된지도 오래이기 때문에 해당 취약점을 이용한 공격 도구들도 이미 다 개발되어 공격이 매우 수월한 경우가 대다수입니다.

 

패치를 적용하지 않는 것에 의아할 수도 있지만, 해당 취약점이 소프트웨어나 서비스를 제공하는 집단의 입장에서 크게 위협적이지 않거나, 패치 적용으로 인한 비용이 위험을 받아들이는 비용보다 클 경우 충분히 발생할 수 있는 일입니다. 위험에 대응하는 수많은 위험대응전략 중에 '위험 감수'는 적절히 선택한다면 아주 효과적인 전략이기 때문입니다.


결론

이상 포스팅을 마치도록 하겠습니다.

 

본 포스팅에서 강조하고 싶었던 메세지는 다음과 같습니다.

1. Zeroday, Oneday, Olday 취약점은 모두 보안 패치가 적용되지 않은 상태의 취약점을 의미한다 

2. 이들을 구분하는 기준은 패치 발표 여부, 패치 적용 여부, 관심도 이다

 

감사합니다.

JUNTHEWORLD