Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
도구/GitHubGitHub/trailofbits/semgrep-rules
Static AnalysisVulnerability AnalysisCode AnalysisDevSecOpsMisconfiguration
GitHubtrailofbits/semgrep-rules

semgrep-rules

여러 언어에 걸친 정적 코드 분석, 보안 취약점 탐지, 안전한 코딩 관행 적용을 위한 Semgrep 규칙 모음입니다.

저장소 보기
52659744개월 전Kitploit 검토 완료

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

Trail of Bits 공개 Semgrep 규칙

이 저장소에는 Trail of Bits가 개발하여 공개한 Semgrep 규칙이 포함되어 있습니다. 이 규칙은 지속적인 개발 노력의 일부이며 보안 감사, 취약점 연구 및 내부 프로젝트에 사용됩니다. 새로운 기술을 식별함에 따라 시간이 지나면서 발전할 것입니다.

Semgrep 지침은 Testing Handbook을 방문하세요.

Semgrep 사용

규칙을 실행하는 가장 쉬운 방법은 Semgrep 레지스트리에서 실행하는 것입니다. 그러려면 프로젝트의 루트 폴더로 이동하여 다음을 실행하세요:```shell $ semgrep --config "p/trailofbits"

root@kitploit:~
또는 이 저장소를 클론하고 프로젝트의 루트 폴더로 이동한 다음, 아래 명령을 사용하여 개별 규칙을 실행할 수 있습니다:```shell
$ semgrep --config /path/to/semgrep-rules/semgreprule.yml

클론된 저장소에서 모든 규칙을 실행하려면:```shell $ semgrep --config /path/to/semgrep-rules/ .

root@kitploit:~
## 유용한 플래그

Semgrep는 `.gitignore` 파일에 있는 파일을 제외한 모든 지원되는 코드 파일에 대해 실행됩니다. `.gitignore`에 있는 파일을 포함한 모든 파일과 디렉터리에 규칙을 실행하려면 `--no-git-ignore` 플래그를 추가하세요.```shell
$ semgrep --config /path/to/semgrep-rules/ . --no-git-ignore

또한 Semgrep에게 특정 패턴과 일치하는 파일 및 디렉터리를 무시하도록 지시할 수 있습니다. 예를 들어, 모든 Go 테스트 파일을 무시하도록 Semgrep에 지시하려면 다음을 실행하면 됩니다:```shell $ semgrep --config /path/to/semgrep-rules/ . --exclude='*_test.go'

root@kitploit:~
`-o`를 사용하여 결과를 파일로 출력합니다:```shell
$ semgrep --config /path/to/semgrep-rules/hanging-goroutine.yml -o leaks.txt'

규칙

go

python

rs

javascript

ruby

hcl

jvm

yaml| ID | 플레이그라운드 | 영향 | 신뢰도 | 설명 |

| -- | :--------: | :----: | :--------: | ----------- | | apt-key-unencrypted-url | 🛝🔗 | 🟥 | 🌘 | | | apt-key-validate-certs-disabled | 🛝🔗 | 🟥 | 🌘 | | | apt-unencrypted-url | 🛝🔗 | 🟥 | 🌘 | | | dnf-unencrypted-url | 🛝🔗 | 🟥 | 🌘 | | | dnf-validate-certs-disabled | 🛝🔗 | 🟥 | 🌘 | | | get-url-unencrypted-url | 🛝🔗 | 🟥 | 🌘 | | | get-url-validate-certs-disabled | 🛝🔗 | 🟥 | 🌘 | | | rpm-key-unencrypted-url | 🛝🔗 | 🟥 | 🌘 | | | rpm-key-validate-certs-disabled | | 🟥 | 🌘 | | | | | 🟥 | 🌘 | | | | | 🟥 | 🌘 | | | | | 🟥 | 🌘 | | | | | 🟥 | 🌘 | | | | | 🟥 | 🌘 | | | | | 🟥 | 🌘 | | | | | 🟥 | 🌘 | | | | | 🟩 | 🌕 | | | | | 🟧 | 🌘 | | | | | 🟧 | 🌘 | | | | | 🟧 | 🌘 | | | | | 🟧 | 🌘 | | | | | 🟧 | 🌘 | | | | | 🟧 | 🌘 | | | | | 🟧 | 🌘 | |

generic

swift

ID플레이그라운드영향신뢰도설명
insecure-url-host-hassuffix-check🛝🔗

기여하기

Pull Request와 이슈는 언제나 환영합니다!

자세한 내용은 CONTRIBUTING.md를 참조하세요.

라이선스

이 저장소에 정의된 규칙은 AGPLv3에 따라 라이선스가 부여됩니다.

사이드카 예제 는 다른 저작물에서 파생되었을 수 있으며, 필요한 경우 원래 라이선스를 유지합니다.

도구 다운로드
IDPlayground영향도신뢰도설명
eth-rpc-tracetransaction🛝🔗🟥🌕EVM 트랜잭션 또는 블록에서 트레이스 정보를 추출하려는 시도를 감지합니다. 교환 또는 브리지 애플리케이션에서는 이러한 엔드포인트를 캡슐화하는 추가 로직을 구현하여 되돌려진 호출 프레임 중에 전송된 값이 계산되지 않도록 해야 합니다.
eth-txreceipt-status🛝🔗🟥🌕트랜잭션 영수증의 상태가 읽힐 때를 감지합니다.
hanging-goroutine🛝🔗🟩🌗고루틴 누수
invalid-usage-of-modified-variable🛝🔗🟧🌘오류 발생 시 의도하지 않은 할당 가능성
iterate-over-empty-map🛝🔗🟩🌗빈 맵에 대한 중복 반복일 가능성이 있습니다.
missing-runlock-on-rwmutex🛝🔗🟧🌗함수에서 반환하기 전에 RWMutex 잠금에 대한 RUnlock 누락
missing-unlock-before-return🛝🔗🟧🌗함수에서 반환하기 전에 mutex 잠금 해제 누락
nil-check-after-call🛝🔗🟧🌗가능한 nil 역참조
racy-append-to-slice🛝🔗🟧🌗여러 고루틴에서 append에 대한 동시 호출
racy-write-to-map🛝🔗🟧🌗여러 고루틴에서 동일한 맵에 대한 동시 쓰기
servercodec-readrequestbody-unhandled-nil🛝🔗🟩🌘잠재적으로 잘못된 ServerCodec 인터페이스 구현
string-to-int-signedness-cast🛝🔗🟧🌘정수 언더플로
sync-mutex-value-copied🛝🔗🟩🌘값 수신기를 통한 sync.Mutex 복사
unmarshal-tag-is-dash🛝🔗🟧🌘
unmarshal-tag-is-omitempty🛝🔗🟩🌘
unsafe-dll-loading🛝🔗🟥🌘DLL 하이재킹 공격에 취약한 함수 사용
waitgroup-add-called-inside-goroutine🛝🔗🟧🌗익명 고루틴 내부의 sync.WaitGroup.Add 호출
waitgroup-wait-inside-loop🛝🔗🟧🌗루프 내부의 sync.WaitGroup.Wait 호출
IDPlayground영향도신뢰도설명
automatic-memory-pinning🛝🔗🟩🌘PyTorch 메모리가 자동으로 고정되지 않음
lxml-in-pandas🛝🔗🟧🌘pandas에서 lxml 로드로 인한 잠재적 XXE 공격
msgpack-numpy🛝🔗🟥🌗피클링에 의존하는 함수로 인한 잠재적 임의 코드 실행
numpy-distutils🛝🔗🟩🌘더 이상 사용되지 않는 numpy.distutils 사용
numpy-f2py-compile🛝🔗🟥🌗NumPy f2py 컴파일로 인한 잠재적 임의 코드 실행
numpy-in-pytorch-datasets🛝🔗🟩🌘Torch 데이터셋 내부의 NumPy RNG 호출
numpy-in-pytorch-modules🛝🔗🌫️🌗PyTorch 모듈 내부의 NumPy 함수 사용
numpy-load-library🛝🔗🟥🌗NumPy 라이브러리 로드로 인한 잠재적 임의 코드 실행
onnx-session-options🛝🔗🟥🌗ONNX 라이브러리 로드로 인한 잠재적 임의 코드 실행
pandas-eval🛝🔗🟥🌕사용자 제공 표현식을 평가하는 pandas 함수로 인한 잠재적 임의 코드 실행
pickles-in-keras-deprecation🛝🔗🟥🌗Keras의 load_model 함수로 인한 잠재적 임의 코드 실행
pickles-in-keras🛝🔗🟥🌗Keras의 load_model 함수로 인한 잠재적 임의 코드 실행
pickles-in-numpy🛝🔗🟥🌗피클링에 의존하는 NumPy 함수로 인한 잠재적 임의 코드 실행
pickles-in-pandas🛝🔗🟥🌗피클링에 의존하는 Pandas 함수로 인한 잠재적 임의 코드 실행
pickles-in-pytorch-distributed🛝🔗🟥🌗피클링에 의존하는 PyTorch.Distributed 함수로 인한 잠재적 임의 코드 실행
pickles-in-pytorch🛝🔗🟥🌗피클링에 의존하는 PyTorch 함수로 인한 잠재적 임의 코드 실행
pickles-in-tensorflow🛝🔗🟥🌗tensorflow의 load 함수로 인한 잠재적 임의 코드 실행
pytorch-classes-load-library🛝🔗🟥🌗PyTorch 라이브러리 로드로 인한 잠재적 임의 코드 실행
pytorch-package🛝🔗🟥🌕torch.package로 인한 잠재적 임의 코드 실행
pytorch-tensor🛝🔗🌫️🌘부적절한 텐서 생성으로 인한 잠재적 구문 분석 문제 및 비효율성
scikit-joblib-load🛝🔗🟥🌗피클링에 의존하는 SciKit.Joblib 함수로 인한 잠재적 임의 코드 실행
tarfile-extractall-traversal🛝🔗🟧🌗tarfile에 대한 extractall 호출에서 잠재적 경로 순회
tensorflow-load-library🛝🔗🟥🌗TensorFlow 라이브러리 로드로 인한 잠재적 임의 코드 실행
waiting-with-pytorch-distributed🛝🔗🟩🌗요청을 기다리지 않을 때 발생할 수 있는 PyTorch 정의되지 않은 동작
IDPlayground영향도신뢰도설명
panic-in-function-returning-result🛝🔗🟩🌘Result를 반환하는 함수에서 unwrap 또는 expect 호출
IDPlayground영향도신뢰도설명
schema-directives🛝🔗🟥🌗오래된 ApolloServer 옵션 'schemaDirectives' 사용
use-of-graphql-upload🛝🔗🟧🌕graphql-upload 라이브러리 사용
v3-potentially-bad-cors🛝🔗🟧🌕잠재적으로 잘못된 CORS 정책
v3-express-bad-cors🛝🔗🟥🌗잘못된 CORS 정책
v3-express-no-cors🛝🔗🟩🌘CORS 정책 부재
v3-bad-cors🛝🔗🟥🌗잘못된 CORS 정책
v3-no-cors🛝🔗🟩🌘CORS 정책 부재
v3-csrf-prevention🛝🔗🟧🌘CSRF 방지 부재
v4-csrf-prevention🛝🔗🟧🌘CSRF 보호 비활성화됨
IDPlayground영향도신뢰도설명
action-dispatch-insecure-ssl🛝🔗🟥🌘
action-mailer-insecure-tls🛝🔗🟥🌘
active-record-encrypts-misorder🛝🔗🟥🌘
active-record-hardcoded-encryption-key🛝🔗🟥🌘
faraday-disable-verification🛝🔗🟥🌘
global-timeout🛝🔗🟩🌘
insecure-rails-cookie-session-store🛝🔗🟩🌘
json-create-deserialization🛝🔗🟥🌕
rails-cache-store-marshal🛝🔗🟩🌗
rails-cookie-attributes🛝🔗🟩🌘
rails-params-json🛝🔗🟥🌕
rest-client-disable-verification🛝🔗🟥🌘
ruby-saml-skip-validation🛝🔗🟧🌘
yaml-unsafe-load🛝🔗🟥🌘
IDPlayground영향도신뢰도설명
docker-hardcoded-password🛝🔗🟥🌘
docker-privileged-mode🛝🔗🟩🌘
podman-tls-verify-disabled🛝🔗🟩🌘
root-user🛝🔗🟩🌘
tls-hostname-verification-disabled🛝🔗🟥🌘
aws-oidc-role-policy-duplicate-condition🛝🔗🟥🌘
aws-oidc-role-policy-missing-sub🛝🔗🟥🌘
vault-hardcoded-token🛝🔗🟥🌘
vault-skip-tls-verify🛝🔗🟥🌘
IDPlayground영향도신뢰도설명
gc-call🛝🔗🟩🌘
mongo-hostname-verification-disabled🛝🔗🟥🌘
🛝🔗
unarchive-unencrypted-url
🛝🔗
unarchive-validate-certs-disabled
🛝🔗
wrm-cert-validation-ignore
🛝🔗
yum-unencrypted-url
🛝🔗
yum-validate-certs-disabled
🛝🔗
zypper-repository-unencrypted-url
🛝🔗
zypper-unencrypted-url
🛝🔗
port-all-interfaces
🛝🔗
aws-secret-key
🛝🔗
azure-principal-secret
🛝🔗
gcp-credentials-json
🛝🔗
jfrog-hardcoded-credential
🛝🔗
pypi-publish-password
🛝🔗
rubygems-publish-key
🛝🔗
vault-token
🛝🔗
ID플레이그라운드영향신뢰도설명
amqp-unencrypted-transport🛝🔗🟥🌘
container-privileged🛝🔗🟥🌗
container-user-root🛝🔗🟥🌗
curl-insecure🛝🔗🟥🌗
curl-unencrypted-url🛝🔗🟥🌗
gpg-insecure-flags🛝🔗🟥🌗
installer-allow-untrusted🛝🔗🟥🌘
mongodb-insecure-transport🛝🔗🟥🌘
mysql-insecure-sslmode🛝🔗🟥🌗
node-disable-certificate-validation🛝🔗🟥🌘
openssl-insecure-flags🛝🔗🟥🌗
postgres-insecure-sslmode🛝🔗🟥🌘
redis-unencrypted-transport🛝🔗🟥🌘
ssh-disable-host-key-checking🛝🔗🟥🌗
tar-insecure-flags🛝🔗🟥🌗
wget-no-check-certificate🛝🔗🟥🌗
wget-unencrypted-url🛝🔗🟥🌗
🌫️
🌘