Skip to main content

CodeQL ๋ถ„์„์„ ์œ„ํ•œ Java ๋ฐ Kotlin ์ฟผ๋ฆฌ

default ๋˜๋Š” security-extended ์ฟผ๋ฆฌ ๋„๊ตฌ ๋ชจ์Œ์„ ์„ ํƒํ•  ๋•Œ CodeQL์—์„œ Java ๋˜๋Š” Kotlin์œผ๋กœ ์ž‘์„ฑ๋œ ์ฝ”๋“œ๋ฅผ ๋ถ„์„ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉํ•˜๋Š” ์ฟผ๋ฆฌ๋ฅผ ์‚ดํŽด๋ด…๋‹ˆ๋‹ค.

๋ˆ„๊ฐ€ ์ด ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‚˜์š”?

CodeQL์€(๋Š”) ๋‹ค์Œ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ ์œ ํ˜•์— ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • GitHub.com์˜ ํผ๋ธ”๋ฆญ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ, GitHub CodeQL ์‚ฌ์šฉ ์•ฝ๊ด€ ์ฐธ์กฐ
  • GitHub Code Security๋ฅผ ์‚ฌ์šฉํ•˜๋„๋ก ์„ค์ •๋œ GitHub Team์˜ ์กฐ์ง ์†Œ์œ  ๋ฆฌํฌ์ง€ํ† ๋ฆฌ

CodeQL์—๋Š” Java ๋ฐ Kotlin ์ฝ”๋“œ ๋ถ„์„์„ ์œ„ํ•œ ๋งŽ์€ ์ฟผ๋ฆฌ๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. default ์ฟผ๋ฆฌ ๋„๊ตฌ ๋ชจ์Œ์˜ ๋ชจ๋“  ์ฟผ๋ฆฌ๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค. security-extended ์ฟผ๋ฆฌ ๋„๊ตฌ ๋ชจ์Œ์„ ์‚ฌ์šฉํ•˜๋„๋ก ์„ ํƒํ•˜๋ฉด ์ถ”๊ฐ€ ์ฟผ๋ฆฌ๊ฐ€ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ CodeQL ์ฟผ๋ฆฌ ๋„๊ตฌ ๋ชจ์Œ์„(๋ฅผ) ์ฐธ์กฐํ•˜์„ธ์š”.

Java ๋ฐ Kotlin ๋ถ„์„์„ ์œ„ํ•œ ๊ธฐ๋ณธ ์ œ๊ณต ์ฟผ๋ฆฌ

์ด ํ‘œ์—๋Š” CodeQL ์ž‘์—…๊ณผ CodeQL CLI์˜ ์ตœ์‹  ๋ฆด๋ฆฌ์Šค์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์ฟผ๋ฆฌ๊ฐ€ ๋‚˜์—ด๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ CodeQL ์„ค๋ช…์„œ ์‚ฌ์ดํŠธ์—์„œ CodeQL ๋ณ€๊ฒฝ ๋กœ๊ทธ๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

์ฟผ๋ฆฌ ์ด๋ฆ„๊ด€๋ จ CWE๊ธฐ๋ณธ๊ฐ’ํ™•์žฅCopilot Autofix
๋ชจ๋“  ์ธ์ฆ์„œ๋ฅผ ์ˆ˜๋ฝํ•˜๋Š” TrustManager295
๋ชจ๋“  ์ธ์ฆ์„œ๋ฅผ ์ˆ˜๋ฝํ•˜๋Š” Android WebView295
Android ๋””๋ฒ„๊น… ๊ฐ€๋Šฅ ํŠน์„ฑ ์‚ฌ์šฉ489
Android ํ”„๋ž˜๊ทธ๋จผํŠธ ์‚ฝ์ž…470
PreferenceActivity์— Android ํ”„๋ž˜๊ทธ๋จผํŠธ ์‚ฝ์ž…470
Android ์˜๋„ ๋ฆฌ๋””๋ ‰์…˜926, 940
Android ์›น ๋ณด๊ธฐ ๋””๋ฒ„๊น… ์‚ฌ์šฉ489
๋ณด๊ด€ ํŒŒ์ผ์˜ ์••์ถ•์„ ํ‘ธ๋Š” ์ค‘ ์ž„์˜ ํŒŒ์ผ ์•ก์„ธ์Šค("Zip Slip")022
์ฟ ํ‚ค์— ์ค‘์š”ํ•œ ์ •๋ณด์˜ ์ผ๋ฐ˜ ํ…์ŠคํŠธ ์ €์žฅ315
๊ต์ฐจ ์‚ฌ์ดํŠธ ์Šคํฌ๋ฆฝํŒ…079
์•„ํ‹ฐํŒฉํŠธ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ๋กœ JCenter/Bintray ์‚ฌ์šฉ1104
์‚ฌ์šฉ์ž ์ œ์–ด ๋ฐ์ดํ„ฐ์˜ ์—ญ์ง๋ ฌํ™”502
JHipster ์ƒ์„ฑ๊ธฐ ์ทจ์•ฝ์„ฑ CVE-2019-16303 ๊ฒ€์ƒ‰338
Netty HTTP ํ—ค๋” ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ ์‚ฌ์šฉ ์•ˆ ํ•จ093, 113
Spring CSRF ๋ณดํ˜ธ ์‚ฌ์šฉ ์•ˆ ํ•จ352
๋…ธ์ถœ๋œ Spring Boot ์•ก์ถ”์—์ดํ„ฐ200
์‹ ์–ธ์–ด ์‚ฝ์ž…(JEXL)094
์‹ ์–ธ์–ด ์‚ฝ์ž…(MVEL)094
์‹ ์–ธ์–ด ์‚ฝ์ž…(Spring)094
Maven ์•„ํ‹ฐํŒฉํŠธ ์—…๋กœ๋“œ/๋‹ค์šด๋กœ๋“œ์—์„œ HTTPS ๋˜๋Š” SFTP URL ์‚ฌ์šฉ ์‹คํŒจ300, 319, 494, 829
๋ณด์•ˆ ์ฟ ํ‚ค ์‚ฌ์šฉ ์‹คํŒจ614
Groovy ์–ธ์–ด ์‚ฝ์ž…094
HTTP ์‘๋‹ต ๋ถ„ํ• 113
๋ณตํ•ฉ ํ• ๋‹น์˜ ์•”์‹œ์  ์ถ•์†Œ ๋ณ€ํ™˜190, 192, 197, 681
์•”์‹œ์ ์œผ๋กœ ๋‚ด๋ณด๋‚ธ Android ๊ตฌ์„ฑ ์š”์†Œ926
๋ธŒ๋กœ๋“œ์บ์ŠคํŠธ ์ˆ˜์‹ ๊ธฐ์˜ ์˜๋„์— ๋Œ€ํ•œ ๋ถ€์ ์ ˆํ•œ ๊ฒ€์ฆ9:25
๋น„ํšจ์œจ์ ์ธ ์ •๊ทœ์‹1333, 730, 400
์Šคํƒ ์ถ”์ ์„ ํ†ตํ•œ ์ •๋ณด ๋…ธ์ถœ209, 497
์˜ค๋ฅ˜ ๋ฉ”์‹œ์ง€๋ฅผ ํ†ตํ•œ ์ •๋ณด ๋…ธ์ถœ209
๋ณด์•ˆ์— ์ทจ์•ฝํ•œ Bean ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ094
๋ณด์•ˆ์— ์ทจ์•ฝํ•œ LDAP ์ธ์ฆ522, 319
์•ˆ์ „ํ•˜์ง€ ์•Š์€ ๋กœ์ปฌ ์ธ์ฆ287
๋ณด์•ˆ์— ์ทจ์•ฝํ•œ ์ž„์˜์„ฑ330, 338
์˜๋„ URI ๊ถŒํ•œ ์กฐ์ž‘266, 926
์‚ฌ์šฉ์ž ์ œ์–ด ์ด๋ฆ„์œผ๋กœ JNDI ์กฐํšŒ074
์‚ฌ์šฉ์ž ์ œ์–ด ์›๋ณธ์—์„œ ๋นŒ๋“œ๋œ LDAP ์ฟผ๋ฆฌ090
JWT ์„œ๋ช… ๊ฒ€์‚ฌ ๋ˆ„๋ฝ347
์‚ฌ์šฉ์ž ์ œ์–ด ์ž…๋ ฅ์ด ์žˆ๋Š” OGNL ์‹ ์–ธ์–ด ๋ฌธ917
์ง€๋‚˜์น˜๊ฒŒ ํ—ˆ์šฉ์ ์ธ ์ •๊ทœ์‹ ๋ฒ”์œ„020
์›๊ฒฉ์˜ ๋ถ€๋ถ„ ๊ฒฝ๋กœ ํ†ต๊ณผ ์ทจ์•ฝ์„ฑ023
์ œ์–ด๋˜์ง€ ์•Š์€ ๋ฐ์ดํ„ฐ์— ์‚ฌ์šฉ๋˜๋Š” ๋‹คํ•ญ์‹ ์ •๊ทœ์‹1333, 730, 400
์‚ฌ์šฉ์ž ์ œ์–ด ์›๋ณธ์—์„œ ๋นŒ๋“œ๋œ ์ฟผ๋ฆฌ089, 564
์“ฐ๊ธฐ ๊ฐ€๋Šฅํ•œ ์›”๋“œ ํŒŒ์ผ์—์„œ ์ฝ๊ธฐ732
์ •๊ทœ์‹ ์‚ฝ์ž…730, 400
์‚ฌ์šฉ์ž ์ œ์–ด ๋ฐ์ดํ„ฐ์—์„œ XML ์™ธ๋ถ€ ์—”ํ„ฐํ‹ฐ ํ™•์ธ611, 776, 827
์„œ๋ฒ„ ์ชฝ ์š”์ฒญ ์œ„์กฐ918
์„œ๋ฒ„ ์ชฝ ํ…œํ”Œ๋ฆฟ ์‚ฝ์ž…1336, 094
์ œ์–ด๋˜์ง€ ์•Š์€ ๋ช…๋ น์ค„078, 088
์ฝ˜ํ…์ธ  ํ™•์ธ์— ์ œ์–ด๋˜์ง€ ์•Š์€ ๋ฐ์ดํ„ฐ ์‚ฌ์šฉ๋จ441, 610
๊ฒฝ๋กœ ์‹์— ์ œ์–ด๋˜์ง€ ์•Š์€ ๋ฐ์ดํ„ฐ ์‚ฌ์šฉ๋จ022, 023, 036, 073
์•ˆ์ „ํ•˜์ง€ ์•Š์€ ํ˜ธ์ŠคํŠธ ์ด๋ฆ„ ๊ฒ€์ฆ297
์›๊ฒฉ ์›๋ณธ์—์„œ ์ „๋‹ฌ๋˜๋Š” URL552
์›๊ฒฉ ์›๋ณธ์—์„œ URL ๋ฆฌ๋””๋ ‰์…˜601
์†์ƒ๋˜์—ˆ๊ฑฐ๋‚˜ ์œ„ํ—˜ํ•œ ์•”ํ˜ธํ™” ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์‚ฌ์šฉ327, 328
ํ‚ค ํฌ๊ธฐ๊ฐ€ ๋ถ€์กฑํ•œ ์•”ํ˜ธํ™” ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์‚ฌ์šฉ326
๋ณด์•ˆ ๋‚œ์ˆ˜ ์ƒ์„ฑ๊ธฐ์—์„œ ์˜ˆ์ธก ๊ฐ€๋Šฅํ•œ ์‹œ๋“œ ์‚ฌ์šฉ335, 337
์™ธ๋ถ€์—์„œ ์ œ์–ด๋˜๋Š” ํ˜•์‹ ๋ฌธ์ž์—ด ์‚ฌ์šฉ134
์•”์‹œ์  PendingIntents ์‚ฌ์šฉ927
OAEP ์—†์ด RSA ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์‚ฌ์šฉ780
์ˆซ์ž ์บ์ŠคํŠธ์˜ ์‚ฌ์šฉ์ž ์ œ์–ด ๋ฐ์ดํ„ฐ197, 681
๊ถŒํ•œ ๊ฒ€์‚ฌ์— ์‚ฌ์šฉ์ž ์ œ์–ด ๋ฐ์ดํ„ฐ ์‚ฌ์šฉ๋จ807, 290
์•”ํ˜ธํ™”์— ์ •์  ์ดˆ๊ธฐํ™” ๋ฒกํ„ฐ ์‚ฌ์šฉ329, 1204
XPath ์‚ฝ์ž…643
์‚ฌ์šฉ์ž ์ œ์–ด ์Šคํƒ€์ผ์‹œํŠธ๋ฅผ ์‚ฌ์šฉํ•œ XSLT ๋ณ€ํ™˜074
JavaScript ๋…ธ์ถœ์„ ํ†ตํ•ด Java ๊ฐœ์ฒด ๋ฉ”์„œ๋“œ ์•ก์„ธ์Šค079
Android APK ์„ค์น˜094
Android์—์„œ ์ธ์ฆ์„œ ๊ณ ์ • ๋ˆ„๋ฝ295
Android ์ค‘์š”ํ•œ ํ‚ค๋ณด๋“œ ์บ์‹œ524
Android WebSettings ํŒŒ์ผ ์•ก์„ธ์Šค200
Android ์›น ๋ณด๊ธฐ JavaScript ์„ค์ •079
Android ์›น ๋ณด๊ธฐ ์„ค์ •์—์„œ ์ฝ˜ํ…์ธ  ๋งํฌ ์•ก์„ธ์Šค ํ—ˆ์šฉ200
์‘์šฉ ํ”„๋กœ๊ทธ๋žจ ๋ฐฑ์—… ํ—ˆ์šฉ312
๋ฌธ์ž์—ด ์—ฐ๊ฒฐ๋กœ ๋ช…๋ น์ค„ ๋นŒ๋“œ078, 088
์‚ฝ์ž…๋œ ํ™˜๊ฒฝ ๋ณ€์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ช…๋ น ๋นŒ๋“œ078, 088, 454
Android ํŒŒ์ผ ์‹œ์Šคํ…œ์— ์ค‘์š”ํ•œ ์ •๋ณด์˜ ์ผ๋ฐ˜ ํ…์ŠคํŠธ ์ €์žฅ312
'Properties' ํด๋ž˜์Šค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ค‘์š”ํ•œ ์ •๋ณด์˜ ์ผ๋ฐ˜ ํ…์ŠคํŠธ ์ €์žฅ313
Android์—์„œ SharedPreferences๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ค‘์š”ํ•œ ์ •๋ณด์˜ ์ผ๋ฐ˜ ํ…์ŠคํŠธ ์ €์žฅ312
Android์—์„œ ๋กœ์ปฌ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ค‘์š”ํ•œ ์ •๋ณด์˜ ์ผ๋ฐ˜ ํ…์ŠคํŠธ ์ €์žฅ312
๋ฃจํ”„ ์กฐ๊ฑด์—์„œ ์ข์€ ํ˜•์‹๊ณผ ๋„“์€ ํ˜•์‹ ๋น„๊ต190, 197
์ƒ๋Œ€ ๊ฒฝ๋กœ๋กœ ๋ช…๋ น ์‹คํ–‰078, 088
์•Œ๋ฆผ์— ์ค‘์š”ํ•œ ์ •๋ณด ๋…ธ์ถœ200
UI ํ…์ŠคํŠธ ๋ณด๊ธฐ์— ์ค‘์š”ํ•œ ์ •๋ณด ๋…ธ์ถœ200
CSRF์—์„œ ๋ณดํ˜ธ๋˜์ง€ ์•Š๋Š” HTTP ์š”์ฒญ ํ˜•์‹352
์‚ฌ์šฉ์ž๊ฐ€ ์ œ๊ณตํ•œ ๋ฐฐ์—ด ์ธ๋ฑ์Šค์˜ ์ž˜๋ชป๋œ ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ129
๋ฐฐ์—ด ์ƒ์„ฑ์— ์‚ฌ์šฉ๋˜๋Š” ์‚ฌ์šฉ์ž ์ œ๊ณต ํฌ๊ธฐ์˜ ์ž˜๋ชป๋œ ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ129
๋ณด์•ˆ์— ์ทจ์•ฝํ•œ ๊ธฐ๋ณธ ์ธ์ฆ522, 319
๋ณด์•ˆ์— ์ทจ์•ฝํ•œ JavaMail SSL ๊ตฌ์„ฑ297
๋กœ์ปฌ ์ธ์ฆ์— ๋Œ€ํ•˜์—ฌ ์•ˆ์ „ํ•˜์ง€ ์•Š๊ฒŒ ์ƒ์„ฑ๋œ ํ‚ค287
๋กœ๊ทธ ํŒŒ์ผ์— ์ค‘์š”ํ•œ ์ •๋ณด ์‚ฝ์ž…532
ResultReceiver๋ฅผ ํ†ตํ•ด ์ค‘์š”ํ•œ ์ •๋ณด ์œ ์ถœ927
์•”์‹œ์  ์˜๋„๋ฅผ ํ†ตํ•ด ์ค‘์š”ํ•œ ์ •๋ณด ์œ ์ถœ927
์ž„์‹œ ๋””๋ ‰ํ„ฐ๋ฆฌ์˜ ๋กœ์ปฌ ์ •๋ณด ๊ณต๊ฐœ200, 732
๋กœ๊ทธ ์‚ฝ์ž…117
์—ฐ๊ฒฐํ•  ์ˆ˜ ์—†๋Š” ์ข…๋ฃŒ ์กฐ๊ฑด์ด ์žˆ๋Š” ๋ฃจํ”„835
์ฝ˜ํ…์ธ  ๊ณต๊ธ‰์ž์˜ ์ฝ๊ธฐ ๋˜๋Š” ์“ฐ๊ธฐ ๊ถŒํ•œ ๋ˆ„๋ฝ926
๋ถ€๋ถ„ ๊ฒฝ๋กœ ํ†ต๊ณผ ์ทจ์•ฝ์„ฑ023
์‹ ๋ขฐํ•  ์ˆ˜ ์—†๋Š” ๋ฌธ์ž์—ด๊ณผ ์—ฐ๊ฒฐํ•˜์—ฌ ๋นŒ๋“œ๋œ ์ฟผ๋ฆฌ089, 564
์†Œ์ผ“ ์ธ์ฆ์˜ ๊ฒฝํ•ฉ ์ƒํƒœ421
๊ฒ€์‚ฌ ์‹œ๊ฐ„ ์‚ฌ์šฉ ์‹œ๊ฐ„ ๊ฒฝํ•ฉ ์ƒํƒœ367
์‹ ๋ขฐ ๊ฒฝ๊ณ„ ์œ„๋ฐ˜501
์‚ฐ์ˆ  ์‹์˜ ์ œ์–ด๋˜์ง€ ์•Š์€ ๋ฐ์ดํ„ฐ190, 191
ํ•ด์ œ๋˜์ง€ ์•Š์€ ์ž ๊ธˆ764, 833
์•ˆ์ „ํ•˜์ง€ ์•Š์€ ์ธ์ฆ์„œ ์‹ ๋ขฐ273
Android ์›น ๋ณด๊ธฐ์—์„œ ์•ˆ์ „ํ•˜์ง€ ์•Š์€ ๋ฆฌ์†Œ์Šค ํŽ˜์น˜749, 079
์ž ์žฌ์ ์œผ๋กœ ์†์ƒ๋˜์—ˆ๊ฑฐ๋‚˜ ์œ„ํ—˜ํ•œ ์•”ํ˜ธํ™” ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์‚ฌ์šฉ327, 328
์ž ์žฌ์ ์œผ๋กœ ์œ„ํ—˜ํ•œ ํ•จ์ˆ˜ ์‚ฌ์šฉ676
์ค‘์š”ํ•œ ๋ฉ”์„œ๋“œ์˜ ์‚ฌ์šฉ์ž ์ œ์–ด ์šฐํšŒ807, 290
์‚ฐ์ˆ  ์‹์˜ ์‚ฌ์šฉ์ž ์ œ์–ด ๋ฐ์ดํ„ฐ190, 191