
Research
Supply Chain Attack on Axios Pulls Malicious Dependency from npm
A supply chain attack on Axios introduced a malicious dependency, plain-crypto-js@4.2.1, published minutes earlier and absent from the project’s GitHub releases.
@naverpay/markdown-lint
Advanced tools
markdown 파일 검사용 lint 도구입니다.
DavidAnson/markdownlint에서 제공하는 패키지와 규칙을 사용하고 있으며, 몇 가지 rule은 커스텀 되어 있습니다.
@naverpay/code-style-cli를 사용하여 설치하는 것을 권장합니다.
npx @naverpay/code-style-cli
또는 직접 설치 후 설정 파일을 생성할 수 있습니다.
npm install @naverpay/markdown-lint -D
echo '{"extends": "@naverpay/markdown-lint"}' > .markdownlint.jsonc
markdown-lint config는 jsonc 형식으로 작성되어 있어, 주석을 통해 rule에 대한 설명을 확인할 수 있습니다. 각 규칙의 명세는 여기서 확인할 수 있습니다.
setting.json에 설정을 추가합니다.{
"editor.codeActionsOnSave": {
"source.fixAll.markdownlint": true
}
}
IDE에서 오류 표기를 하고 싶지 않은 파일이 있다면 .markdownlintignore를 추가합니다.
// .markdownlintignore
CHANGELOG.md
package.json에 스크립트를 추가하여 CLI 환경에서 사용할 수 있습니다.
{
"scripts": {
"markdownlint": "markdownlint '**/*.md'",
"markdownlint:fix": "markdownlint --fix '**/*.md'",
},
}
기본으로 루트에 있는 config 파일을 읽습니다. (.markdownlint.jsonc/json/yaml/yml/cjs/mjs)
그 외 위치에 config 파일을 둔다면 --config 인수로 정의해주어야 합니다.
{
"scripts": {
"markdownlint": "markdownlint --config 'config/.markdownlint.jsonc' '**/*.md'",
"markdownlint:fix": "markdownlint --config 'config/.markdownlint.jsonc' --fix '**/*.md'",
},
}
무시하고 싶은 파일이나 폴더가 있다면 #을 붙여 ignore 할 수 있습니다.
(node_modules 폴더는 자동으로 무시됩니다.)
{
"scripts": {
"markdownlint": "markdownlint '**/*.md' '#**/CHANGELOG.md'",
"markdownlint:fix": "markdownlint --fix '**/*.md' '#**/CHANGELOG.md'",
},
}
이외 옵션은 여기서 확인할 수 있습니다.
prettier와 markdown-lint를 함께 사용한다면 몇 가지 rule에서 충돌이 발생할 수 있습니다.
충돌하는 rule은 여기서 확인할 수 있습니다.
해당 rule에 false 값을 주어 끄거나, .prettierignore에 마크다운 형식을 추가하여 해결할 수 있습니다.
// .markdownlint.jsonc
{
"comment": "Disables rules that may conflict with Prettier",
"blanks-around-fences": false,
"blanks-around-headings": false,
"blanks-around-lists": false,
"code-fence-style": false,
"emphasis-style": false,
"heading-start-left": false,
"hr-style": false,
"line-length": false,
"list-indent": false,
"list-marker-space": false,
"no-blanks-blockquote": false,
"no-hard-tabs": false,
"no-missing-space-atx": false,
"no-missing-space-closed-atx": false,
"no-multiple-blanks": false,
"no-multiple-space-atx": false,
"no-multiple-space-blockquote": false,
"no-multiple-space-closed-atx": false,
"no-trailing-spaces": false,
"ol-prefix": false,
"strong-style": false,
"ul-indent": false,
}
# markdown
**/*.md
FAQs
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Research
A supply chain attack on Axios introduced a malicious dependency, plain-crypto-js@4.2.1, published minutes earlier and absent from the project’s GitHub releases.

Research
Malicious versions of the Telnyx Python SDK on PyPI delivered credential-stealing malware via a multi-stage supply chain attack.

Security News
TeamPCP is partnering with ransomware group Vect to turn open source supply chain attacks on tools like Trivy and LiteLLM into large-scale ransomware operations.