We hardened zizmor's GitHub Actions static analyzer

GitHub Actions용 정적 분석기 zizmor가 YAML 앵커(anchor) 지원을 강화하여 워크플로우 분석 정확도와 안정성을 크게 개선했다. Trail of Bits와 협력해 41,253개 실제 워크플로우를 테스트하며 파싱 버그, 중복 앵커 처리, 표현식 평가기 문제 등을 수정했고, GitHub Actions의 다양한 YAML 패턴을 완벽히 지원하도록 업데이트했다. 이는 supply-chain 공격 방지에 중요한 역할을 하며, CI 보안 강화에 실질적 기여를 한다.

https://blog.trailofbits.com/2026/05/22/we-hardened-zizmors-github-actions-static-analyzer/

#githubactions #security #staticanalysis #yaml #ci

We hardened zizmor's GitHub Actions static analyzer

We improved YAML anchor support in zizmor and tested it against 41,253 real-world GitHub Actions workflows from high-value open-source projects.

The Trail of Bits Blog

Applicatives allow performing static analysis, while monads do not. But what does it mean in practice? Why is it so? And what kind of static analysis is this referring to? And what happens if we use categories instead of monads?

These are some of the questions I’m trying to provide an answer to in my latest blog post:

https://marcosh.github.io/post/2026/05/21/homomorphic-static-analysis.html

#haskell #staticanalysis #categorytheory

Homomorphic static analysis

Homomorphic static analysis

Marcoshplace

Obsidian plugins are (mostly) dangerous

ZeroQuarry는 Obsidian의 인기 플러그인 Excalidraw에서 발견된 복합적이고 제품 맥락에 기반한 보안 취약점을 탐지했다. 단순 코드 스멜이 아닌, 사용자 워크플로우와 신뢰 모델을 고려한 실행 가능한 스크립트, SVG 아이콘의 악성 HTML 실행, 내부 명령어 실행, 부적절한 파일 삭제, 민감 URL 노출 등 다양한 취약점이 발견되었다. 이 사례는 개발자 도구의 확장성과 신뢰가 보안 위험으로 직결될 수 있음을 보여주며, 정적 분석 도구가 놓치기 쉬운 제품 특화 취약점 탐지의 중요성을 강조한다.

https://zeroquarry.com/research/excalidraw-vulnerabilities/

#security #obsidian #plugin #vulnerability #staticanalysis

Opening a malicious Markdown file could trigger serious security vulnerabilities

ZeroQuarry found and helped fix a large number of vulnerabilities in the Excalidraw plugin for Obsidian.

Rust's compile-time guarantees are deliberately incomplete - the compiler catches most issues, but not all. What's left behind is the question.

At Oxidize 2026, Rolland Dudemaine (TrustInSoft) shares findings from analysing production Rust code: what bugs survive, and when additional tooling is worth it.

🔗 https://oxidizeconf.com/sessions/whats_left_to_find_in_rust

#Oxidize2026 #RustLang #FormalVerification #StaticAnalysis #CodeQuality

Sound Mode: Can TypeScript Type Checking Be Stricter?

Sound Mode은 Rust로 작성된 TypeScript 검사기 tsz의 엄격한 타입 검사 실험이다. 기존 TypeScript가 놓치는 일부 타입 안전성 문제를 더 엄격하게 잡아내며, AI 코드 작성과의 시너지를 고려해 개발 중이다. 현재는 playground와 CLI 플래그로 제한적 데모만 제공하며, 향후 mutable 배열 공변성, 인덱스 접근 검사, 안전하지 않은 단언 등 추가 엄격 검사 기능을 계획 중이다. Sound Mode는 사용자 코드와 라이브러리 코드 간 경계를 구분해 점진적 도입을 목표로 하며, 실사용자 피드백을 적극 수집 중이다.

https://tsz.dev/sound-mode/

#typescript #staticanalysis #typechecking #rust #tsz

Sound Mode - tsz

A TypeScript compiler in Rust.

tsz

Static Analysis for GitHub Actions

zizmor는 GitHub Actions 워크플로우를 위한 정적 분석 도구로, 템플릿 인젝션, 자격 증명 누출, 과도한 권한 부여, 위장 커밋 등 일반적인 보안 취약점을 탐지한다. Rust 기반으로 개발되었으며, CI/CD 환경에서 보안 강화에 즉시 활용 가능하다. MIT 라이선스 하에 공개되어 있으며, 상세 문서와 사용법을 제공한다. 현재 4.7k 스타를 받은 인기 오픈소스 프로젝트로, GitHub Actions 보안 점검에 유용하다.

https://github.com/zizmorcore/zizmor

#githubactions #security #staticanalysis #ci/cd #opensource

GitHub - zizmorcore/zizmor: Static analysis for GitHub Actions

Static analysis for GitHub Actions. Contribute to zizmorcore/zizmor development by creating an account on GitHub.

GitHub

Excavate - Find the "hidden landmines" in your codebase

Excavate는 JavaScript/TypeScript 코드베이스 내 기술 부채가 쌓인 파일을 빠르게 찾아내는 도구로, git 히스토리, 코드 복잡도, 테스트 커버리지, 담당자 수 등 6가지 신호를 결합해 각 파일에 부채 점수를 매깁니다. 별도 설치 없이 npx 명령어로 즉시 실행 가능하며, HTML 리포트와 CI 게이트 기능을 제공해 팀 내 공유와 자동화된 품질 관리가 용이합니다. 기존 SonarQube, Code Climate 등과 달리 서버나 계정 없이 로컬에서 완전한 분석을 수행하며, AI 기반 코드 리뷰 도구와 함께 사용해 부채가 높은 파일을 효율적으로 개선할 수 있습니다.

https://www.npmjs.com/package/excavate

#technicaldebt #codequality #staticanalysis #javascript #typescript

excavate

Dig up what is buried in your codebase.. Latest version: 1.0.1, last published: 10 hours ago. Start using excavate in your project by running `npm i excavate`. There are no other projects in the npm registry using excavate.

npm

Scripty

Scripty는 매우 단순하고 제한적인 스크립팅 언어로, 문자열이나 호스트 문서 내에서 임베딩되어 사용될 수 있다. 변수 할당, 반복문, 조건문 없이 단일 표현식만을 지원하며, 주로 쿼리 언어 프레임워크로 설계되었다. Zig 언어로 구현된 스택 기반 VM을 통해 빠른 평가가 가능하며, 향후 정적 분석, 자동완성, 네이티브 코드 컴파일 기능이 추가될 예정이다. Scripty는 다양한 호스트 환경에 맞게 평가 컨텍스트를 정의할 수 있어 HTML 템플릿(SuperHTML)이나 마크다운(SuperMD) 등에서 유연하게 활용된다.

https://kristoff.it/blog/scripty/

#scriptinglanguage #zig #staticanalysis #templating #vm

Scripty

The perfect scripting sidekick! (or so I like to think)

Question related to my previous post: is it possible to do some kind of static analysis on categorical code?

Or, what constraints should be imposed (or removed) on a category so that its code supports static analysis?

#haskell #categorytheory #staticanalysis

BOOTOSHI (@KingBootoshi)

Knip은 죽은 코드, 사용되지 않는 파일, unused export 등을 찾아내는 도구로, 에이전트가 grep 기반으로 코드베이스를 탐색할 때 발생하는 노이즈를 줄여준다. 에이전트의 코드 이해와 정리를 돕는 개발 도구로서 유용성이 강조되었다.

https://x.com/KingBootoshi/status/2046070949972521413

#knip #agents #developertools #codebase #staticanalysis

BOOTOSHI 👑 (@KingBootoshi) on X

I LOVE KNIP WITH AGENTS knip is an app that finds dead code, dead files, unused exports etc bunch of noise that will affect your agents searching and understand the codebase via grep and possibly confuse them if you tell your agents to knip the codebase, it will find all dead

X (formerly Twitter)