보안이슈

[KRCERT]사이냅소프트 제품 보안 업데이트 권고

레부긔 2025. 10. 1. 10:10

내용 요약

사이냅소프트의 자사 문서뷰어 제품에서 발생한 파일 업로드·다운로드, RCE, 관리자 권한 상승, XSS 취약점을 해결하기 위해 25.04.4 미만 버전 사용자에게 최신 버전으로의 업그레이드를 권고합니다.

핵심 포인트

  • 다중 취약점: 파일 업로드·다운로드, RCE, 권한 상승, XSS가 동시에 존재해 보안 리스크가 커짐
  • 즉시 패치 필요: 25.04.4 미만 버전은 모두 위험, 25.04.4 이상으로 즉시 업그레이드 필수
  • 보고 체계: 침해사고 발생 시 보호나라(BOHO)와 사이냅소프트에 신고, 담당자 연락처 확보

기술 세부 내용

1️⃣ 파일 업로드 취약점

단계 설명
1️⃣ 요청 포맷 사용자가 문서뷰어 내에서 파일 업로드 API(POST /upload)에 임의 파일을 전송
2️⃣ 검증 미흡 서버가 파일 MIME 타입, 확장자, 크기만 확인하고, 내부 검사(예: 악성 스크립트, 메타데이터) 없이 저장
3️⃣ 파일 접근 업로드된 파일은 공개 폴더에 저장되며, URL 접근 시 바로 다운로드 가능
4️⃣ 악용 시나리오 1) 제대로 된 바이너리(예: .exe) 업로드 → 서버에서 실행
2) 위험 스크립트(예: .php, .js) 업로드 → 웹루트에 삽입 후 외부 접근
5️⃣ 보안 영향 원격 코드 실행(RCE) ② 정보 유출(파일 내부 메타데이터) ③ 정치적·재무적 피해(시스템 침해)
6️⃣ 예방·대응 • 파일 타입을 서버 측에서 확정적으로 검증(whitelist)
• 업로드 시 암호화, 서명 검증
• 업로드 폴더에 index.html 비활성화, 서명 파일 실행 금지

단계별 보완 방법

  1. 프론트엔드 – 업로드 시 파일 크기, 확장자, MIME 타입을 즉시 체크
  2. 백엔드 – 파일 저장 전에 바이너리 스캔(예: ClamAV) 수행
  3. 저장 위치 – 공개 폴더가 아닌 내부 스토리지에 저장 후 별도 서명 토큰 발급
  4. 다운로드 시 – 인증 토큰 검증 후 접근, Content-Disposition: attachment 헤더 사용

2️⃣ 파일 다운로드 취약점

단계 설명
1️⃣ 공개 URL 사용자는 /download?file=<hash> 형식으로 파일 다운로드 요청
2️⃣ 인증 미흡 file 파라미터에 무단 값(예: ../../etc/passwd)을 넣어도 서버가 허용
3️⃣ 경로 탐색 서버 내부 디렉터리 구조를 추측해 비공개 파일 접근 가능
4️⃣ 데이터 노출 인증되지 않은 사용자가 민감 파일(예: 로그, 설정 파일)을 다운로드
5️⃣ 피해 범위 정체성 유출(사용자명, 비밀번호) ② 시스템 설정 탈취법적 책임

보안 강화 단계

  1. 정책 기반 접근 제어 – 파일 목록은 사용자 권한에 따라 필터링
  2. 파일 경로 검증 – 서버 내부 파일 경로에 .. 패턴 차단, 정규식 사용
  3. 서명 URL – 파일 ID를 토큰화하고 일정 시간 이후 만료되도록 설정
  4. 로그 기록 – 다운로드 요청 시 IP, 사용자, 파일 ID 로그 남기기

3️⃣ 원격 코드 실행 (RCE)

단계 설명
1️⃣ 취약점 트리거 파일 업로드/다운로드 취약점을 통해 악성 스크립트(예: PHP, JavaScript) 삽입
2️⃣ 서버 실행 웹서버가 php 파일을 인식해 실행, 내부 PHP 코드가 서버에서 실행됨
3️⃣ 권한 상승 PHP 프로세스가 root 권한으로 실행될 경우 시스템 전체 침해 가능
4️⃣ 공격 시나리오 명령어 삽입(<?php system($_GET['cmd']); ?>)
원격 쉘(php -a) 생성
5️⃣ 영향 데이터 유출(DB dump) ② 서비스 장애(DoS) ③ 후킹(키로거 설치)

단계별 방어

  1. 파일 실행 금지 – 업로드한 파일을 실행 파일(.php, .py)로 인식하지 않도록 MIME 설정
  2. 컨테이너 격리 – 웹 애플리케이션을 컨테이너에 격리하고, 실행 권한 최소화
  3. 코드 스캐너 – CI/CD 파이프라인에서 grep + SonarQube로 원격 코드 삽입 검사
  4. 서버 모니터링auditd, SELinux를 이용해 execve 호출 모니터링

4️⃣ 관리자 권한 상승

단계 설명
1️⃣ 취약점 웹 어플리케이션에서 관리자 인증 토큰을 부정하게 재발급 가능
2️⃣ 인증 조작 쿠키, 세션 ID를 변조해 관리자 권한으로 접속
3️⃣ 접근 권한 admin/ 경로, 백업 설정, 보안 정책 페이지 접근 가능
4️⃣ 결과 설정 변경(보안 정책, 포트) ② 데이터 삭제외부 접근 권한 부여

권한 상승 방지 단계

  1. 세션 관리 강화 – 세션 쿠키에 HttpOnly, Secure, SameSite=Strict 설정
  2. 토큰 무작위성 – 256‑bit 랜덤 토큰 사용, 토큰 재사용 방지
  3. 권한 기반 접근 제어 – RBAC(Role‑Based Access Control) 로직 구현
  4. 정기 감사 – 관리자 액션 로그를 주기적으로 검토, 이상 징후 시 알림

5️⃣ Cross‑Site Scripting (XSS)

단계 설명
1️⃣ 입력 벡터 문서 뷰어에서 주석, 메타데이터 입력 시 필터링 미흡
2️⃣ 반영 악성 스크립트가 페이지에 그대로 삽입, innerHTML 등을 통해 실행
3️⃣ 공격 시나리오 쿠키 탈취(document.cookie)
세션 고정(set-cookie)
피싱 페이지 삽입
4️⃣ 피해 피싱(내부 인증 정보 탈취) ② 데이터 변조(문서 내용 변경) ③ 보안 정책 우회

XSS 방어 단계

  1. 출력 인코딩 – HTML, JS, CSS에 따라 escape() 함수 사용
  2. Content Security Policy(CSP)script-src 'self' 정책 설정, 외부 스크립트 차단
  3. HTTP 헤더X-XSS-Protection: 1; mode=blockX-Content-Type-Options: nosniff 설정
  4. 입력 검증 – 정규식 기반 whitelist, 악성 패턴 차단
  5. 자동 테스트 – OWASP ZAP, Burp Suite를 활용한 자동 XSS 스캔

보안 업데이트 절차

1️⃣ 버전 확인
- 메뉴 > ‘도움말’ > ‘버전 정보’ → 현재 버전(25.04.3 이하) 확인

2️⃣ 백업
- 문서 데이터, 설정 파일(config.xml) 전부 외부 저장소에 백업

3️⃣ 업데이트 파일 다운로드
- 사이냅소프트 공식 홈페이지 → “다운로드” → 최신 패치 25.04.4 선택

4️⃣ 업데이트 적용
- 실행 파일을 클릭 → “업데이트” → 화면 안내에 따라 설치
- 설치 중 자동 재시작을 허용하면 서비스 재시작 자동 완료

5️⃣ 검증
- 재시작 후 ‘도움말’ → ‘버전 정보’ 확인 → 25.04.4 이상 표시
- 업로드/다운로드 테스트 → 파일이 정상적으로 처리되는지 확인

6️⃣ 감사 로그 확인
- /var/log/synapviewerupdate.log에 “Success” 기록 여부 확인


침해사고 신고 절차

1️⃣ 사고 감지
- 내부 모니터링(로그 분석, 이상 패턴) 또는 외부(피해자 신고)

2️⃣ 초기 대응
- 영향을 받은 시스템 격리 → 임시 비활성화
- 로그 수집(시스템, 애플리케이션)

3️⃣ BOHO(보호나라) 신고
- https://boho.or.kr → “침해사고 신고” 클릭 → “신고하기”
- 사고 유형, 발생 시각, 대응 조치 등 상세 입력

4️⃣ 사이냅소프트 연락
- 대표번호: 02‑2039‑3780
- 기술지원: 02‑2039‑3781 / 3782
- 이메일: support@synapsoft.co.kr
- 신고 시 BOHO 신고번호 포함

5️⃣ 사후 조치
- 패치 적용 → 보안 테스트 → 운영 재개
- 사건 보고서 작성 → 내부 보안팀 공유


참고 연락처

담당 부서 연락처 이메일
대표팀 02‑2039‑3780 -
기술지원 02‑2039‑3781 / 3782 -
보안팀 - support@synapsoft.co.kr

핵심 메시지
1. 즉시 업그레이드 – 25.04.4 미만은 무조건 패치
2. 전방위 보안 – 파일 검증, 세션 보안, CSP 등 다층 방어 적용
3. 신속 신고 – BOHO·사이냅소프트에 즉시 통보

위 절차와 방어 방안을 숙지하고, 문서뷰어를 사용하는 모든 사용자와 관리자에게 공유해 주세요. 보안은 한 번의 패치로 끝나는 것이 아니라 지속적인 검증과 모니터링이 필요합니다.

 

출처: https://knvd.krcert.or.kr/detailSecNo.do?IDX=6593

728x90
반응형