•  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
r62 vs r64
......
22
[include(틀:사건사고)]
33
[include(틀:문서 훼손 주의)]
44
{{{#!folding [포크를 위한 이용허락 안내 (CC BY-NC-SA 2.0 KR등)]
5
[include(틀:CCL, 라이선스=CC BY-NC-SA 2.0 (KR or Unported), 아이디=)]
5
[include(틀:CCL, 라이선스=CC BY-NC-SA 2.0 (KR or Unported), 아이디=disciple153)]
66
------
77
[include(틀:CCL, 라이선스=CC BY 1.0, 아이디=disciple153)]}}}
88
[목차]
......
1616
더시드위키에 (KST 기준) 12시 40분에 접근이 가능해 include 도배로 반달된 문서들을 되돌린 작업이 있어 05시부터 12시 30분 까지, 12시 50분부터 17시까지에 발생한 것으로 추정된다.
1717
알파위키의 접속 가능상황은 더시드위키와 비슷했다. 그러나 알파위키 내에서 당시의 [[https://archive.ph/xyGub|최근 변경내역(KST 2021-12-03 06시 아카이브)]][*UTC 접속한 컴퓨터의 시간대에 맞게 편집, 토론 스레드 등의 시각이 변한다. 아카이브의 시각은 UTC 시간대이며 여기에 맞춰 스냅샷이 저장된 것. 따라서 UTC 및 기록된 편집 시각 등에서 9시간을 더 경과시킨 시각을 KST라 생각하면 이해할 수 있다.]을 보면 [[https://archive.ph/sWPzq|더시드위키(KST 2021-12-03 06시 아카이브)]][*UTC]와 다르게 include도배와 관련된 편집이나 편집 요청 내역이 없다. 그럼에도 불구하고 알파위키가 더시드위키와 동시에 접속이 안 되었던 정황과 두 위키 모두 [[namu]]의 소유인 정황으로 미루어 두 위키가 동일서버를 사용한다는 추정이 있다. (만일 이것이 사실이고 DDoS가 원인이라면 공격은 12시까지 되었고 12시 50분 경에 재시작했다는 말이 된다.)
1818
19
{{{#!folding [각주 보기]
2019
[각주]
21
}}}
2220
23
=== include 도배 ===
21
=== include 구문을 비롯한 도배 ===
2422
[anchor(include_반달)]include가 대상 문서에서 본문들을 모두 호출하는 명령이면서 '''무제한으로 가능'''함을 감안할 때, 문서 하나 열 때마다 KB(킬로바이트) 단위 되는 내용이 include 구문으로 도배한 횟수 만큼 기계적으로 로드(load)되는 구조라고 보면서 서버 자체에 무리를 준 공격의 원인이 되지 아니하냐는 설이 있다. 만일 문서 시스템이 이렇게 기계적으로 일일이 구문을 불러온 다음 컴파일하고 출력하는 방식으로 동작되고 있었다면 심각한 문제일 것이다.
2523
2624
이 설이 있는 근거로는 두 사례가 있고, 다음 글자수는 해당 설이 참이라고 가정했을 때 도출되는 계산이다.
2725
2826
==== 나무위키에서의 사례 ====
29
먼저 동일한 [[the seed]] 엔진을 쓰는 나무위키에서, KST 2021-12-02 15:17:54 편집으로 [[https://namu.wiki/w/SARS-CoV-2/%EC%98%A4%EB%AF%B8%ED%81%AC%EB%A1%A0%20%EB%B3%80%EC%9D%B4|"SARS-CoV-2/오미크론 변이"]] 문서(이하 "오미크론 변이" 문서)에 include 도배가 된 예가 있다. 이 문서의 [[https://namu.wiki/history/SARS-CoV-2/%EC%98%A4%EB%AF%B8%ED%81%AC%EB%A1%A0%20%EB%B3%80%EC%9D%B4?from=720|편집 기록]] 중 r698판[* 반달러가 2001:4430:412b:fc8c:d06a:7d30:babe:410e VPN이다.]에 대한 "편집 비교"나 "blame"을 열람하고자 하면 오류로 '''탭 로드가 중지되면서 튕긴'''다. ("편집 비교"나 "blame"이 구문에 대하여 일부 동작이 되면서 데이터 비교를 보여주는 동작으로 추정된다.) 다만 r698판의 [[https://namu.wiki/raw/SARS-CoV-2/%EC%98%A4%EB%AF%B8%ED%81%AC%EB%A1%A0%20%EB%B3%80%EC%9D%B4?rev=698|RAW]]는 동작하기 전 입력된 구문들만 보여주는 까닭이라 열람이 가능하다.
27
나무위키에서, KST 2021-12-02 15:17:54 편집으로 [[https://namu.wiki/w/SARS-CoV-2/%EC%98%A4%EB%AF%B8%ED%81%AC%EB%A1%A0%20%EB%B3%80%EC%9D%B4|"SARS-CoV-2/오미크론 변이"]] 문서(이하 "오미크론 변이" 문서)에 include 도배가 된 예가 있다. 이 문서의 [[https://namu.wiki/history/SARS-CoV-2/%EC%98%A4%EB%AF%B8%ED%81%AC%EB%A1%A0%20%EB%B3%80%EC%9D%B4?from=720|편집 기록]] 중 r698판[* 반달러가 2001:4430:412b:fc8c:d06a:7d30:babe:410e VPN이다.]에 대한 "편집 비교"나 "blame"을 열람하고자 하면 오류로 '''탭 로드가 중지되면서 튕긴'''다. ("편집 비교"나 "blame"이 구문에 대하여 일부 동작이 되면서 데이터 비교를 보여주는 동작으로 추정된다.) 다만 r698판의 [[https://namu.wiki/raw/SARS-CoV-2/%EC%98%A4%EB%AF%B8%ED%81%AC%EB%A1%A0%20%EB%B3%80%EC%9D%B4?rev=698|RAW]]는 동작하기 전 입력된 구문들만 보여주는 까닭이라 열람이 가능하다.
3028
31
해당 도배된 구문은 {{{[include(제7회 전국동시지방선거/여론조사)]}}} 만 4,760번 입력인데, '오미크론 변이' 문서 수정 당시 시점인 KST 2021-12-02 15:17:54 기준으로 붙여놓기 된 문서는[[https://namu.wiki/w/%EC%A0%9C7%ED%9A%8C%20%EC%A0%84%EA%B5%AD%EB%8F%99%EC%8B%9C%EC%A7%80%EB%B0%A9%EC%84%A0%EA%B1%B0/%EC%97%AC%EB%A1%A0%EC%A1%B0%EC%82%AC|"제7회 전국동시지방선거/여론조사" 문서]]의 r1328판이며, 글자수만 해도 include구문을 제외하면 484,920자였다. 이 연습장에 옮겨적기 할 때 include문을 삭제하면서 개행 4번까지 삭제하고 연습장에 입력하면 484,916자가 되는데 개행 1번당 글자수 1자임을 고려 때 총 484,920자가 된다. ([[https://namu.wiki/raw/%EC%A0%9C7%ED%9A%8C%20%EC%A0%84%EA%B5%AD%EB%8F%99%EC%8B%9C%EC%A7%80%EB%B0%A9%EC%84%A0%EA%B1%B0/%EC%97%AC%EB%A1%A0%EC%A1%B0%EC%82%AC?rev=1328|비교 1 (놓기 문서 r1328판의 RAW)]], [[https://namu.wiki/raw/%EB%82%98%EB%AC%B4%EC%9C%84%ED%82%A4:%EC%97%B0%EC%8A%B5%EC%9E%A5?rev=13684|비교 2 (연습장 r13684판의 RAW)]])
29
해당 도배된 구문은 {{{[include(제7회 전국동시지방선거/여론조사)]}}} 만 4,760번 입력인데, '오미크론 변이' 문서 수정 당시 시점인 KST 2021-12-02 15:17:54 기준으로 붙여놓기 된 문서는[[https://namu.wiki/w/%EC%A0%9C7%ED%9A%8C%20%EC%A0%84%EA%B5%AD%EB%8F%99%EC%8B%9C%EC%A7%80%EB%B0%A9%EC%84%A0%EA%B1%B0/%EC%97%AC%EB%A1%A0%EC%A1%B0%EC%82%AC|"제7회 전국동시지방선거/여론조사" 문서]](이하 "선거 여론조사" 문서)의 r1328판이며, 글자수만 해도 include구문을 제외하면 484,920자였다. include로 문서를 끼워넣을 때 가져올 문서에 적힌 include명령문, 분류 등은 동작되지 않고 공백되어 끼워넣기가 된다. 연습장에 옮겨적기 할 때 include문을 삭제하면서 개행 4번까지 삭제하고 연습장에 입력하면 484,916자가 된다. 개행 1번당 글자수 1자임을 고려하면 484,920 자가 된다. ([[https://namu.wiki/raw/%EC%A0%9C7%ED%9A%8C%20%EC%A0%84%EA%B5%AD%EB%8F%99%EC%8B%9C%EC%A7%80%EB%B0%A9%EC%84%A0%EA%B1%B0/%EC%97%AC%EB%A1%A0%EC%A1%B0%EC%82%AC?rev=1328|비교 1 ('선거 론조사' 문서 r1328판의 RAW)]], [[https://namu.wiki/raw/%EB%82%98%EB%AC%B4%EC%9C%84%ED%82%A4:%EC%97%B0%EC%8A%B5%EC%9E%A5?rev=13684|비교 2 (연습장 r13684판의 RAW)]])
3230
33
해당 글자수만큼 4,760번 하면 무려 '''23억 자'''[* 정확히는 [math(484,920 \times 4,760 = 2,308,219,200)]자. 게다가 개행은 0번이다. 곧 반달러가 '''한 줄에 그 많은 include문법을 다 때려넣고 저장'''한 것.]가 된다. '오미크론 변이' 문서의 글자수 변동만 해도 [math(\color{green}+97,446)] 자이며 처음부터 반달 겸 도배하는 수정이므로 실제 변경된 글자 수는 이보다 더 많겠지만[* 5자마다 {{{\}}}를 놓으면 {{{ [incl\ude(제\7회 전국\동시지방선\거/여론조\사)]}}} 로 28자, 이 문구가 [math(4,760)]번 도배되었으니 입력된 구문은 [math(28 \times 4,760 = 133,280)]자.[br]이 13여 만 자에서 변동폭을 뺀 만큼의 글자수가 '''반달되기 직전 문서의 글자 수'''가 된다. 이 글자수 만큼 전체 지우고 해당 도배문구로 채웠으니 실제 변경된 글자 수는 (최대) [math((133,280 - 97,446)+133,280 =169,114)]자 이다.]앞의 연습장의 수정에서는 이보다 서너 배 넘는 글자수가 수정되었어도 동작이 원활했다. (단순 글자수 변동이 아니라 어떤 동작원리가 있다고 추정된다.)
31
해당 글자수만큼 로드(load)된다고 했을 때 이를 4,760번 하면 무려 '''23억 자'''[* 정확히는 484,920 × 4,760 = 2,308,219,200 자. 게다가 개행은 0번이다. 곧 반달러가 '''한 줄에 그 많은 include(문)을 다 때려넣고 저장'''한 것.]가 된다. '오미크론 변이' 문서의 글자수 변동만 해도 {{{#green +97,446}}} 자이며 처음부터 반달 겸 도배하는 수정이므로 실제 변경된 글자 수는 이보다 더 많겠지만[* 5자마다 {{{\}}}를 놓으면 {{{ [incl\ude(제\7회 전국\동시지방선\거/여론조\사)]}}} 로 28자, 이 문구가 4,760 번 도배되었으니 입력된 구문은 28 × 4,760 = 133,280자.[br]이 13여 만 자에서 변동폭을 뺀 만큼의 글자수가 '''반달되기 직전 문서의 글자 수'''가 된다. 이 글자수 만큼 전체 지우고 해당 도배문구로 채웠으니 실제 변경된 글자 수는 다음으로 된다.[br](최대) (133,280 - 97,446)+133,280 =169,114 .]앞의 연습장의 수정에서는 이보다 서너 배 넘는 글자수가 수정되었어도 동작이 원활했다. (단순 글자수 변동이 아니라 어떤 동작원리가 있다고 추정된다.)
3432
35
번외로, 이 문제를 사측에서 인지하고 있는 상황인데도 되돌리기 하는 이용자가 있었다. --운영 방해--
33
번외로, '선거 여론조사' 문서는 당시 손가락에 꼽을 정도로 내용서였다. 그리고 이 문제를 사측에서 인지하고 있는 상황인데도 되돌리기 하는 이용자가 있었다. --운영 방해--
3634
37
{{{#!folding [각주 보기]
3835
[각주]
39
}}}
36
4037
==== 더시드위키에서의 사례 ====
41
두 번째 사례로는 더시드위키에서 include를 악용하여 캬루 사진 문서를 도배한 사례가 있다. (이 문서는 더시드위키의 일반 문서들 중 2021-12-02 기준 __가장 내용이 많은 문서__이며, 시스템상 106,756글자이다.) 해당 반달러는 차단되었다.
42
위와 같은 계산법으로 한다면 include를 제외하고(r4판 바이트 수 기준) 개행 1자를 추하면 [math(106,737)]자가 된다. 도배한 [[https://theseed.io/raw/%EB%8B%B4%EB%8F%84%EC%95%94%EB%B3%B5%EC%8B%B1%206%ED%98%B8%EC%84%A0?rev=8|한 문서]]만 봐도 {{{ [include(캬루캬루캬루쨩♥)]}}}[math(19,620)]번을 도배했데,렇게 되면 문서에 되는 글자는 무려 '''20억 자''' [* 확히는 [math(106,737 \times 19,620 = 2,094,179,940)]자. 입력 문구까지 보면 이보 조금(?)은 더 많이 된다.]가 된다.
38
더시드위키에서 include를 악용하여 "캬루캬루캬루쨩♥"으로 이름했었던 문서(이하 "캬루 사진 문서")를 도배한 사례가 있다. 이 문서는 더시드위키의 일반 문서들 중 2021-12-02 기준 __가장 내용이 많은 문서__이며, 시스템상 106,756글자이다. include가 괄호 안에 적힌 이름에 해당되는 문서 내용가져오구문므로 다른 이름으로 수정되었다. 해당 반달 차단되었다.
4339
44
{{{#!folding [여담]
40
위와 같은 계산법으로 하여 include와 제외하고(r4판 바이트 수 기준) 개행 1자를 추가하면 106,737 자가 된다. 도배한 [[https://theseed.io/raw/%EB%8B%B4%EB%8F%84%EC%95%94%EB%B3%B5%EC%8B%B1%206%ED%98%B8%EC%84%A0?rev=8|"담도암복싱 6호선" 문서]]만 봐도 {{{ [include(캬루캬루캬루쨩♥)]}}}을 19,620번을 도배했는데, 이렇게 되면 문서에 로드 되는 글자수는 무려 '''20억 자''' [* 정확히는 106,737 × 19,620 = 2,094,179,940 자. 그러나 입력 문구까지 보면 이보다 조금(?)은 더 많이 된다.]가 된다.
41
4542
여담으로 해당 더시드위키의 반달러는 다른 문서에도 같은 짓을 해서 총 두 번 했고, 나머지는 자잘(?)하게 도배했다. 해당 이용자는 [[https://theseed.io/history/마이조노 사야카|어떤 캐릭터에 대한문서]]를 [[https://theseed.io/raw/마이조노 사야카?rev=1|편집(r1판)]]하면서 [[http://namu.wiki/w/마이조노 사야카|해당 캐릭터]]의 [[https://i.pinimg.com/736x/d7/44/34/d74434e96f564f618dbea1d5659718b6.jpg|이미지]]가 업로드가 안된다는 편집 요약을 남겼다면 자유게시판에 다른 질문을 할 수 있을텐데도 "비로그인 이용자가 편집 못한다" 하는 [[https://theseed.io/thread/OptimalAblazeTameMiddle|핑계 토론]]에 기여내역들이 부정입력으로 벌이는 업무방해 행위들이니 유감일 따름이다.
46
lovelovelovelovelovelovelove1972 아이디로 들어와서 반달하는 모양새가 나무위키의 반달러와 동일인으로 추정된다.}}}
4743
48
{{{#!folding [각주 보기]
44
2021-12-05일 lovelovelovelovelovelovelove1972 아이디로 들어와서 반달하는 동시에 토론을 도배했는데, 더시드위키를 이용하는 사람이 적은 상황, 동일한 {{{ [include(캬루캬루캬루쨩♥)]}}} 도배(이 문서에다 도배했다. [[https://theseed.io/history/2021%EB%85%84%20the%20seed%20%EC%97%94%EC%A7%84%20%EC%9C%84%ED%82%A4%20%EC%84%9C%EB%B2%84%20%EA%B3%BC%EB%B6%80%ED%95%98%20%EC%82%AC%EA%B1%B4?from=30|편집 기록 보기]]), 편집 요약으로 남겨놓은 --다이어트 몰러유 드립-- 내용으로 보건대 12-02일 더시드위키 반달러의 다중계정으로 추정되면서도 나무위키 반달러와 동일인으로 추정된다.
45
4946
[각주]
50
}}}
47
5148
=== 결론 ===
52
더 많은 조사가 필요하나, 현재로서는 해당 include문의 악용 유력한 원인이라고 본다.
53
확실한 점으로는 반달을 방지하는 차원에서라도 인용문 문({{{ > }}}를 입력) 같이 엔진을 개선하여 include 문 동작에 제한을 줄 필요가 있다.
49
더 많은 조사가 필요하나, 현재로서는 해당 include문의 악용 도배가 유력한 원인이라고 본다.
50
확실한 점으로는 반달을 방지하는 차원에서라도 인용문 문({{{ > }}}를 입력) 같이 엔진을 개선하여 include 문 동작에 제한을 줄 필요가 있다.
5451
이것이 원인으로 밝혀진다면 이 사건은 이용자들이 반달러 때문에 [[2017년 나무위키 XSS 공격 보고서|대낮에 삽질하게 만든 사건]]으로 될 것이다.
5552
5653
[각주]
57
------