프론트엔드 뉴스레터
#14
이번 이슈 한눈에
- Chrome 158부터 브라우저 내 XSLT 변환이 중단돼요.
- Vercel Sandbox 조사에서 호스트 메모리를 유출하는 Linux 취약점이 확인됐어요.
- DeepSeek Search·Fetch API가 공개됐고, DeepSeek API를 쓰는 코딩 도구의 서버 측 호출도 11월부터 과금돼요.
- 01
news.hada.io
Chrome의 XSLT 지원 종료가 한 달 앞으로 다가왔어요
원문 읽기 ↗11월 17일 출시 예정인 Chrome 158부터
XSLTProcessor와 XML에 연결한 XSLT stylesheet가 동작하지 않아요. 지난해 예고한 제거 일정이 다가온 것으로, 브라우저에서 XML을 HTML로 바꾸던 화면이 영향을 받습니다.사이트맵·RSS의 XML 데이터와 검색 크롤링은 유지되지만, 사람이 브라우저에서 열었을 때 보던 정리된 화면은 달라질 수 있어요. 변환을 서버로 옮겨 HTML을 보내거나, JavaScript·WASM 기반 XSLT 구현으로 대체할 수 있습니다.
- Origin Trial이나 Enterprise Policy로 사용을 연장할 수 있지만, 이 예외도 2027년 8월 17일 Chrome 176에서 끝나요.
- XML 자체와
type="text/css"로 연결한 stylesheet는 계속 지원합니다. Edge도 제거를 추진하지만 별도 종료 날짜는 공개하지 않았어요.
- 02
news.hada.io
Linux 네트워크 취약점으로 VM에서 호스트 메모리가 유출됐어요
원문 읽기 ↗Vercel Sandbox 보안 조사에서 microVM 내부에서 보낸 패킷으로 호스트 메모리를 읽는 취약점이 확인됐어요. PwnEscape라는 이름으로 공개됐으며, 게스트가 조작한 체크섬 정보가 검증을 마친 IPv4 헤더를 나중에 덮어쓰는 문제입니다.
메모리 유출은 Vercel 운영 환경에서 재현됐고, 호스트 충돌과 관리자 권한 코드 실행은 연구자 소유의 KVM·Firecracker 환경에서 입증됐어요. Vercel은 완화 조치를 적용했고, 고객 파일·비밀 정보·애플리케이션 데이터에 접근한 보고는 없었다고 밝혔습니다.
- 수정 커밋
6785011f8b16은 10월 14일 Linux mainline에 반영됐어요. 직접 샌드박스를 운영한다면 사용하는 배포판의 호스트 커널에 수정이 backport됐는지 별도로 확인해야 합니다.
- 수정 커밋
- 03
news.hada.io
DeepSeek Search·Fetch API가 공개되고 코딩 도구 호출도 과금돼요
원문 읽기 ↗DeepSeek가 10월 17일 Search·Fetch API를 공개했어요. Search는 구조화된 웹 검색 결과를, Fetch는 단일 페이지의 본문을 Markdown으로 반환합니다. 요금은 각각 성공 요청 1,000건당 0.75달러이며, HTTP 200 응답에 실제 검색 결과나 페이지 본문이 있어야 과금돼요.
DeepSeek Harness·Claude Code·Codex에서 DeepSeek API를 사용할 때 서버 측 도구가 호출하는 Search·Fetch는 현재 무료지만, 11월 1일 베이징 시간 00시부터 건별 과금이 시작됩니다.
- 실패한 요청·빈 검색 결과·타임아웃에는 요금이 붙지 않으며, 검색 결과 개수를 정하는
count는 요청당 가격에 영향을 주지 않아요.
- 실패한 요청·빈 검색 결과·타임아웃에는 요금이 붙지 않으며, 검색 결과 개수를 정하는
- 04
lea.verou.me
CSS 변수로 아이콘을 고르고, mask로 텍스트 색상을 따라가게 해요
원문 읽기 ↗Lea Verou가 아이콘마다 SVG 마크업을 넣는 대신,
--icon-start·--icon-end에 이미지를 지정하는 구현을 공개했어요.::before·::after에mask를 적용하고currentColor로 칠하므로, selector나 media query에서 아이콘과 색상을 바꿀 수 있습니다.style query로 아이콘이 지정된 경우에만 가상 요소를 만들고,
@property의inherits: false로 자손마다 같은 아이콘이 붙는 문제를 막아요. 전체 구현은@nudeui/icons로도 배포하며, 아이콘 이미지 자체는 포함하지 않습니다.- Safari에는 style query 갱신과 등록한 속성의 명시적 상속에 관한 버그가 있어 원문의 우회 처리가 필요해요.
- 텍스트가 없는 아이콘 버튼에는
aria-label같은 접근 가능한 이름을 따로 제공해야 합니다.