SQL injection — the oldest bug that still tops the charts
SQL injection concatenates untrusted input into a query so the input becomes code, a decades-old class that parameterized queries fully solve yet still appears in new breaches.
Not yet scoped.
Why
The PoC demonstrates injection against a toy endpoint and the parameterized fix, then generalizes to the rule: never build a command by string-joining untrusted data.
How it works
Not yet built.
Where it lands in Jayverse
gitboard: audit every dashboard query for string-concatenated input. Any query built from user or service input must use parameterized queries, never string-joined data.
Number: apply the same parameterized-query rule to its data access layer. Even though Number is admin-only, add it as a standing test for research and reading lookups.
Auditor: generalize "never build a command by string-joining untrusted data" beyond SQL. Apply it to any off-chain service constructing shell commands, RPC calls or queries from external input.
Key expressions
Words and phrases from this page worth keeping, with the Korean meaning and the sentence they come from.
Expression
뜻 · 쓰이는 자리
top the charts
순위 최상위를 차지하다 · 오래된 취약점이 여전히 1위일 때. "a decades-old class... still tops the charts"
untrusted input
신뢰할 수 없는 입력값 · 검증되지 않은 외부 데이터를 가리킬 때. "concatenates untrusted input into a query"
string-join
문자열을 그대로 이어붙이다 · 위험한 쿼리 작성 방식을 지적할 때. "never build a command by string-joining untrusted data"
generalize to
~로 일반화하다 · 구체적 사례에서 일반 원칙을 끌어낼 때. "then generalizes to the rule"
toy endpoint
연습용(단순화된) 엔드포인트 · 실습을 위해 만든 가벼운 예제를 말할 때. "injection against a toy endpoint"