nextjs/no-unwanted-polyfillio 정확성
작동 방식
안전하지 않은 polyfill.io 도메인 사용 및 중복 폴리필 사용을 막습니다.
왜 나쁜가요?
보안 위험: 2024년 공급망 공격에서 cdn.polyfill.io와 polyfill.io 도메인이 악의적인 행위자에게 인수되었으며, 웹사이트에 해로운 코드를 삽입하기 시작했습니다. 38만 개 이상의 웹사이트가 영향을 받았습니다. 이러한 도메인은 어떠한 상황에서도 사용해서는 안 됩니다.
성능 문제:cdnjs.cloudflare.com/polyfill/과 같은 안전한 대안을 사용할 경우, 이미 Next.js에서 함께 제공되는 폴리필을 추가하는 것은 페이지 크기를 불필요하게 증가시켜 로딩 성능에 영향을 줄 수 있습니다.
예시
이 규칙에 대해 잘못된 코드 예시:
javascript
// 보안 위험 - 침해된 도메인
<script src='https://cdn.polyfill.io/v2/polyfill.min.js'></script>
<script src='https://polyfill.io/v3/polyfill.min.js'></script>
// 중복 폴리필
<script src='https://cdnjs.cloudflare.com/polyfill/v3/polyfill.min.js?features=Array.prototype.copyWithin'></script>
<script src='https://cdnjs.cloudflare.com/polyfill/v3/polyfill.min.js?features=WeakSet%2CPromise'></script>사용 방법
구성 파일 또는 CLI를 통해 이 규칙을 활성화하려면 다음을 사용할 수 있습니다:
json
{
"plugins": ["nextjs"],
"rules": {
"nextjs/no-unwanted-polyfillio": "error"
}
}bash
oxlint --deny nextjs/no-unwanted-polyfillio --nextjs-plugin