서버 프로그램 관련

  1. 서버 프로그램을 실행하였는가?
    서버 프로그램을 실행하지 않은 경우 해당 서버 프로그램을 실행시켜 시작하도록 합니다.
  2. 서버 프로그램이 성공적으로 시작되었는가?
    서버 프로그램이 성공적으로 시작되었다면 서버 콘솔에 다음과 같은 형식의 메시지가 출력됩니다:
    [23:56:36] [Server thread/INFO]: Done (2.089s)! For help, type "help"
    서버 프로그램 시작에 실패했다면 아래 항목 중 해당하는 사항이 있는지 확인합니다:
    • 서버 프로그램이 이미 이전에 한 번 이상 실행되어 시작에 성공한 상태입니다.
      이전에 실행된 서버 프로그램들을 모두 종료합니다. 이 때, 서버 콘솔이 보이지 않는 경우라면 프로세스 관리 프로그램(ex. 작업 관리자 등)을 사용하여 서버 프로그램을 종료합니다.
    • 다른 프로그램에서 동일한 TCP/IP 소켓 주소를 사용하고 있는 상태입니다.
      해당 주소를 사용하는 프로그램을 종료하거나, 서버 프로그램에서 사용하는 주소가 다른 프로그램에서 사용하는 것과 겹치지 않도록 server-ipserver-port 값을 변경합니다.
    • server.properties 파일에서 값을 잘못 작성한 경우입니다.
      아래 항목 중 잘못된 값이 기입된 경우라면 이를 수정합니다:
      • server-ip - 서버 프로그램의 TCP/IP 소켓 통신에 사용될 IP 주소 값입니다. 네트워크 어댑터(NIC)를 두 개 이상 사용중인 경우(VPN, 프록시 사용 등으로 인한), 특정 네트워크 어댑터에 부여된 IP를 기입하면 해당 네트워크 어댑터를 통해서만 서버에 접속할 수 있도록 합니다. 일반적인 상황[1]이라면 해당 값을 기입하지 않는 것을 권장하며, 값을 비워두면 모든 네트워크 어댑터로부터의 접속을 허용하는 값인 0.0.0.0(IPv4) 혹은 \:\:[2](IPv6)으로 기입한 것과 같이 자동으로 설정됩니다.
      • server-port - 서버 프로그램의 TCP/IP 소켓 통신에 사용될 TCP 포트 값입니다. 0부터 65535까지의 값을 지정할 수 있으나 일반적으로 Well-known 포트 대역인 0~1023의 포트를 사용하는 것은 권장하지 않습니다.
      • 여기에서 설명하고 있지 않은 값에 대해서는 Minecraft 위키의 server.properties 문서를 참조하고, server.properties 페이지에서 기본값을 확인하시기 바랍니다.
    • 서버 프로그램 시작 중 충돌(크래시)이 발생한 상황입니다.
      충돌을 발생시키는 애드온(ex. 모드, 플러그인 등)을 제거하거나 비활성화하는 등 충돌이 발생하지 않도록 조치합니다.

  1. 간단히 서버를 구성하는 경우 혹은 서버 실행 중 다른 네트워크 어댑터를 사용하지 않는 경우 등
  2. 실제 값은 ::이나, .properties 파일 문법 특성상 : 문자 작성 시 앞에 \ 문자를 붙여 이스케이프해야 함

지난 2022년 3월 25일, Google에서 Chrome 버전 99.0.4844.84 업데이트 패치 내용에 0-day 취약점이라고 불리는 CVE-2022-1096 취약점 방지가 추가되었다. 이후 여러 Chromium 기반 브라우저에서 이 취약점을 방지한 업데이트를 내놓으면서 화제가 된다. Chrome에서 패치된 취약점 CVE-2022-1096 은 3월 23일에 보고되었지만, 이미 잘 알려진 취약점이다.

이 취약점은 Chromium 계열 브라우저에서 사용하는 V8 JavaScript 엔진 내부의 Type Confusion으로 인한 취약점인데, 이를 이용하여 해커가 사용자 컴퓨터의 접근 권한을 얻어 악성코드를 실행할 수 있다.

Chromium 계열 브라우저에서는 이미 업데이트를 내놓았지만, V8 엔진을 사용한 Electron 프레임워크 기반 애플리케이션은 어떨까?

Electron 프레임워크를 사용하는 애플리케이션에서는 해당 취약점에 대한 패치를 배포했다는 소식은 아직 들을 수 없지만, 불확실한 점이 두 가지가 있다.
첫 번째는, Chromium 브라우저에 포함된 V8 엔진의 CVE-2022-1096 취약점이 V8 엔진을 사용하는 다른 프로그램에서 발생할 수 있는지 알 수 없다는 점이고,
두 번째는, 해당 애플리캐이션들이 이미 이전에 V8 엔진에 대한 취약점을 패치했는지 알 수 없다는 점이다.

Electron 프레임워크를 사용하는 프로그램들은 많다. 그 중에서 대중성 있는 애플리케이션 프로그램만 나열하면 Discord, Skype, WhatsApp, Facebook Messenger 와 같은 PC에서 실행되는 메신저 앱 부터 Visual Studio Code, Arduino, Atom 과 같은 개발 프로그램, Spotify, Notion, Twitch, Vampire Survivors 와 같은 애플리케이션이 이에 포함된다.

Node.js, Deno 와 같은 JavaScript 런타임 프로그램도 V8 엔진을 사용한다. Chromium 브라우저와 Electron 프레임워크는 대부분 클라이언트에서 실행되지만, Node.js를 사용하는 서버가 훨씬 더 심각하고 치명적일 수 있다. 해커가 서버에 등록된 사용자들의 개인 정보에 접근하고 악용할 수 있기 때문이다. 이 역시도 불확실한 점이 두 가지가 존재하는데, Electron 프레임워크에서 언급한 대로와 마찬가지이다.

 

http://crepuscula.egloos.com/6697085

https://crepuscula.egloos.com/6695355

+ Recent posts