1. [사건] ConnectWise 백업 앱 자격증명이 적의 손에 — 173개 M365 테넌트 무단 로그인
MSP(관리형 서비스 제공자)용 클라우드 백업 서비스 ConnectWise Cloud Backup(구 SkyKick)의 Microsoft 365 애플리케이션 자격증명이 탈취돼, 공격자가 고객 테넌트에 무단으로 로그인한 사고가 진행 중이다. Huntress가 173개 파트너·고객 테넌트에서 실제 무단 로그인을 확인했다.
- 왜 치명적인가: 이 백업 앱은 설치된 모든 테넌트에서 메일함·OneDrive·SharePoint·Teams·디렉터리 데이터에 광범위하게 접근하도록 동의(consent)돼 있다. 자격증명 하나가 모든 테넌트에 유효하다 — Huntress는 “앱의 자격증명이 적대자의 손에 있다”고 표현했다.
- 공격 패턴: 10-15 06:13~08:34 UTC,
144.172.64[.]128에서 Microsoft Graph 토큰을 획득. 정렬된 GUID 순서로 몇 초 간격씩 테넌트를 이동해 “대상 목록을 스크립트가 도는” 형태였다. 같은 IP는 10-13~14 법률사무소 4곳에 패스워드 스프레이도 시도했다(성공 로그인 미확인). - 권한 상승 연쇄: 한 파트너 테넌트에서는 별도의 ConnectWise Cloud Management for Teams 앱(애플리케이션 ID
24205314-2b89-4e07-a2a4-579e898a5640)이 스스로 Global Administrator 역할에 추가된 뒤 Python 스크립트(UAPython-urllib/3.12)로 MSP 관리 앱과 Huntress 자체 앱에 새 클라이언트 시크릿을 추가했다. 보안 도구의 앱에 자격증명이 붙으면 그 도구의 권한 전체가 공격자 것이 된다. - 대응: ConnectWise는 Cloud Backup 애플리케이션 접근을 추가 공지까지 차단했다. Todyl은 “사용자 세션 폐기로는 이 접근이 끝나지 않는다”고 경고한다 — 앱을 비활성화해야 신규 토큰 발급이 멈추고, 이미 발급된 토큰은 최대 90분간 유효하다. 테넌트에서 앱이 켜져 있는 한 자격증명 로테이션 전까지 노출이 계속된다.
- 시사점: 백업·모니터링·RMM 같은 MSP 도구가 곧 다중 테넌트 신뢰 앵커다. 하나가 뚫리면 고객사 수백 곳이 동시에 열린다. 앱 동의(consent) 목록과 클라이언트 시크릿 변경 이력을 감사 로그에서 직접 확인해야 하는 이유다.
출처: The Hacker News - Hackers Use Compromised ConnectWise Credential to Sign In to 173 Microsoft 365 Tenants | BleepingComputer - Hackers breach Microsoft 365 tenants via ConnectWise supply-chain attack
2. [사건] MALFEX — 9줄짜리 JS가 네이티브 애드온 뒤에 셸코드 로더를 숨겼다 (npm imgdecode)
2023년 8월부터 이어진 npm 악성 패키지 캠페인 MALFEX의 새 변종 imgdecode가 발견됐다. 표면은 평범한 이미지 유틸리티지만, 컴파일된 Node.js 애드온 안에 악성 로더가 들어 있다.
- 동작: 9줄의 JS가 Windows DLL을 로드하고, Node.js에서
require('imgdecode')를 호출하면 DLL이 GitHub에서 암호화된 셸코드를 내려받아 복호화한 뒤dllhost.exe새 프로세스에 주입한다. 게시자는malfexteste8, 09-30 업로드, 979회 다운로드, 최신 1.0.3 — 작성 시점까지 npm에 여전히 게시되어 있다. - 캠페인 규모: 5개 게시자 핸들(
malfexkkj·malfex_user·malfexteste2/3/4)로 8개 패키지. 3개는 Overlord RAT 로더, 3개(cdn-img-fetch·img-to-native·native-runner)는 Node.js 스틸러 체인, 나머지는 postinstall 훅으로 다음 단계 바이너리를 받아온다. 스틸러 체인에는 install 훅이 아예 없다 — 로드 시점에만 실행된다. - 체인 세부:
cdn-img-fetch가 GitHub 저장소cavecrew/proj의banner.png에서 암호문 추출 →img-to-native가 키malfexteam2027로 복호화해%APPDATA%\Microsoft\Windows\node_runtime_helper.exe로 기록 →native-runner가 이를 실행,104.234.65[.]75:700에서setup.exe(movinlike) 스틸러를 받아온다. - 가장 눈에 띄는 점: 공개·삭제에 2일 만에 대응했다. 09-28
native-runner·img-to-native삭제 → 09-30 03:29·03:37 대체품imgbundle·runhelper게시 → 09-30 22:32 새 이름imgdecode등장. 이후 10-07·10-08 추가 삭제에도 10-11 1.0.3을 올렸다. 테이크다운이 아니라 이름 바꾸기 경쟁이다. - 시사점: “install 스크립트 없음”은 더 이상 안전 신호가 아니고, 순수 JS만 읽는 리뷰도 네이티브 애드온(.node/DLL) 앞에서는 무력하다. 의존성 이름·게시자 이력·바이너리 포함 여부를 함께 보는 패키지 출처 검증이 필요하다.
출처: The Hacker News - MALFEX npm Package 'imgdecode' Hides Shellcode Loader in Windows Native Addon
3. [사건] UAT-11985 — 가짜 행사 초대장·변조 QR로 대만 연구기관 구글 계정 탈취
Cisco Talos가 대만 연구기관 관계자들을 노린 스피어피싱 캠페인 UAT-11985를 공개했다. 정상 행사·학술기관을 사칭해 AitM(중간자) 프록시로 구글 자격증명과 MFA 코드를 동시에 빼낸다. 2026년 중반부터 관측됐다.
- AI 생성 흔적: 지리·정책 주제가 달라도 초대 메일의 문장 구조가 거의 동일하다 — 대상별로 정성껏 쓴 것이 아니라 재사용 가능한 프롬프트 템플릿으로 대량 생산한 형태다. 구성은 ① 장황한 지정학적 배경 ② 수신자를 띄우는 맞춤 문구 ③ 행사 물류(주제·일시·장소·등록)의 3단 구조.
- 사칭 대상: Taiwan European Union Centre, NCCU 국제관계연구소, Taiwan Research Institute 등 실존 기관. 링크에 마우스를 올리면 정상 Google Forms URL처럼 보이게 표시된다.
- QR(quishing) 확장: 정상 행사 포스터를 긁어와 QR 코드만 악성으로 바꿔 배포했다. 메일 수신자를 넘어 인쇄물을 보는 2차 피해자까지 공격면이 넓어진다.
- 탈취 방식: 위조 Google Forms가 “양식 제출을 위해 로그인” 팝업을 띄우고, 픽셀 단위로 복제한 가짜 로그인 화면이 AitM 프록시로 동작한다. 난독화 JS가 입력값을 WebSocket으로 실시간 유출하면서 동시에 정상 구글 인증 서버로 전달해 로그인은 실제로 성공한다. 연결 전 로케일·UA·화면 크기·모바일 여부를
google_login_start요청으로 C2에 보고한다. - 시사점: “링크 미리보기가 정상 도메인”과 “로그인이 실제로 된다”는 두 가지가 모두 피싱 판별 신호로 못 쓰인다. 방어는 사용자 교육이 아니라 피싱 저항 MFA(패스키)와 OAuth 토큰 이상 행위 탐지 쪽으로 이동해야 한다.
4. [사건] 프록시재킹 — D-Link·Ubiquiti·SAP 결함으로 34개국 143대를 '대역폭 판매' 노드로
GreyNoise가 조사 중이던 조직에서 시작해 34개국 143대 이상의 장비가 거주용 프록시 네트워크에 편입된 캠페인을 확인했다. 공격자는 합법 대역폭 공유 앱 Pawns.app을 소유자 동의 없이 설치해, 피해자의 인터넷 회선으로 다른 사람의 트래픽을 흘려보내고 수익을 챙겼다.
- 침투 경로(모두 알려진 결함): D-Link ShareCenter NAS의
CVE-2024-3272·CVE-2024-3273, Ubiquiti UniFi Video NVR의CVE-2021-44228(Log4Shell), SAP NetWeaver Visual Composer의CVE-2025-31324. Hikvision·Dahua DVR/NVR도 표적이었으나 사용 결함은 미공개. - 지속성: 일부 장비에서 SSH 키 인증을 백도어로 설정해 재접근 경로를 확보했다.
- 왜 문제인가: 합법 프록시 네트워크도 감독 부족으로 의심 트래픽을 중계한다. 참여 노드의 IP는 차단되거나, 불법 활동 연루 의혹에 노출된다. FBI는 이미 이런 네트워크가 대규모 크리덴셜 스터핑에 쓰인다고 경고한 바 있다.
- 조치: NAS·NVR·DVR 같은 인터넷 노출 스토리지·녹화 장비를 즉시 패치하고, 원격 접근을 제한하며, GreyNoise의 무료 IP 평판 조회로 자사 IP가 프록시 풀에 들어갔는지 확인한다.
- 시사점: 공격의 목적이 갈취·랜섬에서 자원 재판매로 다변화하고 있다. 눈에 띄는 피해 없이 회선·IP 평판만 소모되므로 탐지가 늦다.
출처: BleepingComputer - Hackers hijack D-Link, Ubiquiti devices to resell your stolen bandwidth
5. [취약점] 인증 경계가 한 칸씩 비어 있다 — Mage OSS 9.8 · phpMyFAQ 9.8 · LatePoint 9.1
NVD 24시간 창에서 새로 등록된 크리티컬 중 눈에 띄는 셋은 모두 “인증”을 통과시키는 지점의 검증 누락이다. (3일 창은 어제 글의 항목과 겹쳐 캐리오버로 확인·제외했다.)
CVE-2026-111823(9.8): Mage OSS 0.9.80 이하(커밋76c4f46이전) — 알 수 없는(unknown) OAuth 제공자를 만났을 때 세션 생성을 그대로 진행한다. 즉 “모르는 발급자”라는 예외 상황이 인증 실패가 아니라 인증 성공으로 처리된다.CVE-2026-111911(9.8): phpMyFAQ 4.0.0~4.1.9 미만 — WebAuthn 등록 엔드포인트가 인증도 챌린지 검증도 없이 임의 계정에 자격증명을 붙인다. 공격자는 피해자 사용자명을 선점한 뒤fmt=none위조 attestation으로 패스키를 등록하고, 비밀번호·TOTP를 모두 우회해 계정을 탈취한다. 패스키가 오히려 우회 경로가 된 사례.CVE-2026-110653(9.1): WordPress LatePoint 예약 플러그인 5.7.4 이하 —verifyOTP의 시도 횟수 카운터가 원자적이지 않은 read-modify-write(조건부WHERE도SELECT ... FOR UPDATE도 없음)여서 동시 요청으로 10회 잠금을 우회한다. OTP 무차별 대입이 가능해진다.CVE-2026-111853(8.8): Tektronix 3 Series MDO 오실로스코프 1.21.1 미만 —FILESystem:MOUNT:DRIveSCPI 명령 핸들러의 OS 명령 주입. 계측기가 원격 코드 실행 지점이 됐다.- 시사점: 세 결함의 공통 형태는 “검증되지 않은 외부 속성을 신뢰”다 — OAuth 제공자 이름, WebAuthn attestation, OTP 시도 카운터. 인증 로직을 실패 시 닫히는(fail-closed) 구조로 짜야 한다는 오래된 원칙이 매주 새 CVE로 증명된다.
출처: NVD - CVE-2026-111823 (Mage OSS) | NVD - CVE-2026-111911 (phpMyFAQ) | NVD - CVE-2026-110653 (LatePoint) | NVD - CVE-2026-111853 (Tektronix)
6. [취약점] WordPress 플러그인 — LearnPress 9.8 · User Rights Access Manager 9.8 · 10Web Booster 9.8
같은 창의 WordPress 생태계 항목은 9.8 세 건이 나란히 올라왔다. 전부 비인증으로 시작해 사이트 전체 장악으로 끝난다.
CVE-2026-104736(9.8): LearnPress 4.4.10 이하 — 체크아웃 AJAX의checkout-email파라미터가sanitize_text_field()만 거치는데, 이 함수는 직렬화 객체 문법을 제거하지 않는다. 값이 세션 테이블에 저장됐다가 이후 요청에서unserialize()(allowlist 없음)로 처리되며 PHP 객체 주입. 비인증 공격자에게 문이 열린다.CVE-2026-109145(9.8): User Rights Access Manager 1.1.3 이하 — AJAX 계정 등록 핸들러에 접근 제한이 없고, 신규 계정에 관리자 역할을 복사해 만든 역할을 부여한다. 비인증 공격자가 관리자 동급 계정을 스스로 등록해 사이트를 장악한다.CVE-2026-108587(9.8): 10Web Booster 2.34.10 이하 —compressCustom의page_id파라미터에 파일 형식·확장자 검증이 없고, 누구나 읽을 수 있게 노출된 nonce가 인증 검사를 우회한다. 비인증 임의 파일 업로드 → RCE.- 그 외 9.8: Fluent CRM 3.2.5 이하(
CVE-2026-109694)와 Frontend Admin by DynamiApps 3.29.13 이하(CVE-2026-109892)의 부적절한 권한 부여 = 권한 상승, Link Whisper Free 0.9.7 이하(CVE-2026-109686)의 객체 주입. - 시사점: 이번 주 결함은 “등록”과 “세션”이라는 두 관문에 몰려 있다. 특히 nonce를 데이터로만 취급하고 비밀으로 취급하지 않은 10Web Booster 사례는 “CSRF 토큰이 있으면 인증된 것”이라는 오해가 얼마나 위험한지 보여준다.
출처: NVD - CVE-2026-104736 (LearnPress) | NVD - CVE-2026-109145 (User Rights Access Manager) | NVD - CVE-2026-108587 (10Web Booster)
7. [패치] Drupal 코어 RCE 2건 — 100만+ 사이트, “익스플로잇은 몇 시간~며칠 안에”
Drupal이 지원 중인 모든 버전의 코어에 영향을 주는 원격 코드 실행 결함 2건을 수정했다. 보안팀은 사전 공지에서 “익스플로잇이 몇 시간 또는 며칠 안에 개발될 수 있다”며 코어 업데이트 시간을 미리 확보하라고 경고했다.
CVE-2026-108097: 코어 Field UI 모듈의 RCE. 코어 단독으로는 악용 불가지만, 기여(contributed) 모듈이 여러 공격 경로를 제공하며 그중 최소 하나는 인증이 필요 없다. 커스텀 코드도 취약 기능을 노출할 수 있다.CVE-2026-108099: 기여 모듈 Entity List(Views 없이 엔티티 목록 생성)의 RCE. 역시 기여 모듈·커스텀 코드와의 상호작용이 필요하지만 비인증 경로가 최소 하나 알려져 있다.- 패치 버전: 코어 10.6.19 / 11.3.19 / 11.4.10(브랜치별), Entity List 3.0.10. Drupal 10.6.x 미만과 11.3.x 미만은 EOL로 지원되지 않는다. 12 사전 릴리스는 beta2 이전이 영향, 정식 12.0에 수정 포함.
- 임시 완화: 업그레이드가 불가능하면 코어 Field UI(
field_ui) 모듈을 제거하는 것이 효과적이다. Drupal Steward는 일부 알려진 공격 벡터만 막고 모든 익스플로잇을 커버하지 않는다. - 시사점: “코어만으로는 악용 불가”라는 문구는 안전 신호가 아니다. 정부·대학·비영리에서 특히 많이 쓰이는 CMS에서, 실제 익스플로잇은 기여 모듈 조합에서 나온다. 설치된 기여 모듈 목록을 함께 점검해야 한다.
출처: BleepingComputer - Drupal patches critical RCE flaws, warns exploits may emerge soon
8. [패치] 오늘·내일이 KEV 마감 — Atlassian D-day, BeyondTrust·Fortinet 내일 · 그리고 NVD '거부' 표기 함정
CISA KEV 카탈로그(현재 1,748건)의 마감일이 오늘과 내일에 몰려 있다. 어제 글에서 “예정”으로만 언급한 항목들이 이제 실제 기한이 됐다.
- 오늘(2026-10-18) 마감 — Atlassian:
CVE-2026-21589— Bitbucket·Confluence·Jira(JSM·JSW)·Bamboo·Crowd·Crucible·Fisheye Data Center 계열에서 파일·디렉터리가 외부에 노출되는 결함. 10-15 KEV 등록. - 내일(2026-10-19) 마감 — BeyondTrust:
CVE-2026-102764(CVSS 9.3, 원격 지원 서버 제로데이 — 어제 항목 1)와 FortinetCVE-2025-61624(FortiOS·FortiPAM·FortiProxy·FortiSwitchManager 경로 순회, 관리자 프로필 인증 필요). 둘 다 10-16 등록. - 지나간 마감(미완료 시 ‘패치’가 아니라 ‘사냥’): AhsayCBS
CVE-2026-105134·105133, Cisco Secure Email GatewayCVE-2026-76519, PAN-OSCVE-2026-0322(모두 10-17), Ivanti Connect SecureCVE-2026-104935, WindowsCVE-2026-96951(10-16). - 실무 함정 — KEV에 있는데 NVD는 ‘거부’: Atlassian
CVE-2026-21589의 NVD 레코드는 “false positive 또는 실수였을 수 있어 거부(rejected)” 상태로 표기돼 있다. 자산 스캐너·SBOM 도구가 NVD 상태를 근거로 이 항목을 목록에서 빼버릴 수 있다. 마감일이 오늘인데도. KEV와 NVD가 어긋날 때는 KEV(실제 악용 근거)를 우선하고 벤더 권고로 버전을 확인해야 한다. - 시사점: “패치 목록”은 자동으로 생성되지만 우선순위는 자동으로 생기지 않는다. 피드 간 불일치를 사람이 확인하는 단계가 남아 있는 이유다.
출처: CISA - Known Exploited Vulnerabilities Catalog | NVD - CVE-2026-21589 (rejected)
9. [트렌드] HackerOne ‘Exposure Debt’ — 고치는 속도는 54% 빨라졌는데 백로그는 131% 늘었다
HackerOne의 10주년 Security Research Report(2026-10-07)가 “발견은 빨라졌지만 해결이 못 따라간다”는 구조를 수치로 보여줬다. 보고서가 정의한 Exposure Debt(노출 부채) — 이미 알고 있으면서 고치지 않은 취약점 — 가 2년 만에 131% 증가했다.
- 핵심 역설: 평균 해결 시간은 135일 → 62일(−54%)로 플랫폼 역사상 가장 빨라졌는데, 검증된 미해결 항목의 백로그는 131% 늘었다. 고치는 속도보다 발견되는 속도가 더 빨라졌다.
- 현장 체감: 보안 리더 75%가 노출 부채를 공식 추적한다고 답했고, 약 70%가 “검증된 발견이 처리 능력보다 빨리 들어온다”고 답했다. CEO 캐라 스프레이그: “고치는 일은 빨라졌다. 그런데 여전히 뒤처졌다. 병목은 발견이 아니라 보고서가 도착한 뒤 리스크가 해결되기까지의 전 구간”.
- AI 취약점의 이동: 시스템 프롬프트 유출 +557%, 허위정보(misinformation) +455%, 부적절한 출력 처리 +264%(전년 대비). 프롬프트 주입·민감정보 노출은 여전히 최대 비중. “모델을 뚫는 결함”에서 “모델의 출력이 흘러가는 경로의 결함”으로 무게가 옮겨가는 중이다.
- 연구자 쪽 변화: 85%가 AI 역량을 키우는 중이고 약 3/4이 유효 발견이 늘었다고 자평한다. 68%는 더 복잡하고 보상이 큰 버그로 이동했다. 지난 1년(2025-07~2026-06) 지급액은 $89M(+18%, 사상 최대).
- 시사점: “취약점을 더 많이 찾는 도구”는 이미 충분히 많다. 지금 부족한 것은 분류·소유자 지정·검증·재발 방지로 이어지는 처리 파이프라인이다. 개인·소규모 팀이라면 고치지 않을 항목을 명시적으로 ‘수용(accept)’하고 기록하는 것만으로도 부채가 리스크로 둔갑하는 일을 줄일 수 있다.
출처: HackerOne - Report Reveals Growing Exposure Debt: Vulnerability Backlogs Grew 131% Even as Resolution Time Improved 54% | Cybersecurity Insiders - HackerOne Report Finds Vulnerability Backlogs Grew 131% in Two Years