보안·신뢰성 운영 가이드
T2Editor는 단순한 텍스트 입력기라기보다 파일 업로드, 외부 API 호출, HTML 렌더링, 코드 블록 표시, 단축 URL 생성 같은 기능을 함께 다루는 복합 시스템입니다. 따라서 실제 운영에서는 “에디터가 뜬다”는 것만으로 충분하지 않고, 업로드 보안과 출력 보안, 외부 서비스 장애 대응까지 함께 준비해야 합니다.
초보자와 웹마스터를 위한 핵심 점검
가장 먼저 볼 것은 업로드 정책입니다. 이미지와 파일 업로드가 가능한 구조라면 허용 확장자와 용량 제한이 반드시 명확해야 합니다. 여기에 더해 업로드 디렉터리를 웹 루트 아래에 둘 것인지, 직접 실행이 불가능한 경로로 둘 것인지도 검토해야 합니다.
다음으로 중요한 것은 외부 서비스입니다. AI, T2Search, ClipURL처럼 DSclub이나 외부 API를 사용하는 기능은 편리하지만, 운영 중단이나 호출 제한에 영향을 받습니다. 사이트 특성상 꼭 필요하지 않다면 초기에 비활성화하는 편이 더 안전할 수 있습니다.
전문 개발자를 위한 보안 포인트
업로드 보안
- 확장자만 보지 말고 MIME 검사와 파일명 정규화를 함께 적용합니다.
- 이미지 변환(WebP 등) 과정에서 예외가 발생해도 원본 파일이 무방비하게 남지 않도록 처리합니다.
- 업로드 디렉터리에서 PHP 실행이 가능하지 않도록 서버 설정을 별도로 확인합니다.
출력 보안
- 코드 블록은 반드시 “텍스트로 렌더링”되어야 하며, HTML로 평가되지 않아야 합니다.
- 보기 페이지에서 에디터가 만든 HTML을 어느 수준까지 허용할지 정책을 분리합니다.
- 커스텀 플러그인이 raw HTML을 삽입한다면 보기 스킨에서의 필터 정책까지 함께 문서화해야 합니다.
외부 API 보안
- API 키, 공유 비밀값, 도메인 서명 같은 정보는 클라이언트 코드에 직접 노출하지 않는 것이 원칙입니다.
- CORS 허용 범위를 넓힐 때는 실제 호출 도메인만 허용하도록 제한합니다.
- 장애 시 무한 재시도나 UI 멈춤이 발생하지 않도록 예외 처리와 타임아웃을 둡니다.
운영 체크리스트
- 업로드 허용 확장자 최소화
data,collab디렉터리 권한 최소화 원칙 검토- 보기 페이지 XSS 점검
- 외부 API 장애 시 대체 문구 또는 비활성화 흐름 준비
- 라이선스 파일과 설정 파일 백업
- 업데이트 전후 보안 회귀 테스트 수행
참고 자료
- DSclub T2Editor 서비스 페이지: https://dsclub.kr/service/editor
- DSclub 개발 및 관리 가이드: https://dsclub.kr/code/1403
- SIR T2Editor 9.0.0 업데이트 글: https://sir.kr/boards/g5_plugin/15053