백도어 (Backdoor)
쉽게 풀면
백도어는 건물의 정문 경비를 통과하지 않고도 드나들 수 있는 뒷문을 몰래 만들어 두는 것과 같습니다. 정상적인 로그인 절차 없이도 공격자가 언제든 시스템에 재접속할 수 있게 해 주는 숨겨진 접근 경로입니다. 한 번 시스템에 침입한 공격자가 나중에 다시 들어오기 위한 발판으로 심어 두는 경우가 많습니다. 소프트웨어 개발 단계에서 의도적으로, 또는 악의적으로 삽입되는 경우도 있습니다.
왜 중요한가
백도어는 탐지가 어려운 지속적 침투 경로를 제공하기 때문에 침해사고 분석과 사고 대응 연구에서 핵심적으로 다뤄집니다. 공급망 공격에서 정상 소프트웨어에 백도어가 삽입되는 사례가 늘면서 소프트웨어 무결성 검증 연구의 필요성도 함께 커지고 있습니다.
논문에서는 이렇게 쓰입니다
침해사고 이후 재접속용 통로로 백도어가 활용된 사례를 설명하는 문장입니다.
소프트웨어 공급망을 통해 백도어가 대규모로 유포된 사례를 언급하는 문장입니다.
조금 더 깊게 보면
백도어는 별도의 실행 파일 형태로 존재하기도 하지만, 정상 프로그램의 소스코드 일부로 은밀히 삽입되어 컴파일 시점부터 포함되는 경우도 있습니다. 웹쉘처럼 서버에 스크립트 파일을 남겨 두는 방식, 특정 포트를 열어 원격 명령을 대기하는 방식 등 구현 형태가 다양합니다. 탐지를 위해서는 비정상적인 네트워크 연결, 알 수 없는 실행 파일, 코드 무결성 검사 등이 활용됩니다.
주의할 점
백도어는 원격접근트로이목마(RAT)와 개념이 겹치는 경우가 많지만, 백도어는 은밀한 접근 경로 자체를 의미하고 RAT는 그 경로를 이용해 원격 제어 기능까지 제공하는 도구를 지칭한다는 점에서 강조점이 다릅니다.