Upgrade to Pro — share decks privately, control downloads, hide ads and more …

eslint-plugin-securityを導入して、 低労力で堅牢なコードを作る

eslint-plugin-securityを導入して、 低労力で堅牢なコードを作る

nakanoshima.dev #37 セキュリティLT大会 ~そもそもみんな何をしてる?~ での登壇資料です。
https://nakanoshima-dev.connpass.com/event/315871/

Kanon

May 30, 2024
Tweet

More Decks by Kanon

Other Decks in Technology

Transcript

  1. 自己紹介 2 Kanon 株式会社 虎の穴ラボ 個人事業 blessing software samurai_se ↓詳しくは↓

    • 最近「アイコンみたことある!」と声かけていただける率が増えてて嬉しい ◦ のみならず、「xxの会にいましたよね?」率も上昇中 ◦ ついにXを見て採用応募してくださった人も現れたらしい • 本業はKtor(Kotlin), Next.jsで副業がLaravel, Nest.js,Next.js Copyright © 2024 blessing software. All Rights Reserved.
  2. 3 Copyright © 2023 blessing software. All Rights Reserved. Illustrated

    by @amon_mikio 最初にみなさんにお願いしたいことがあります
  3. 4 Copyright © 2023 blessing software. All Rights Reserved. Illustrated

    by @amon_mikio Kobe.tsのメンバーになってください!!
  4. 5 Copyright © 2023 blessing software. All Rights Reserved. Illustrated

    by @amon_mikio 公開から3週間で メンバーが100人近くに
  5. 6 Copyright © 2023 blessing software. All Rights Reserved. Illustrated

    by @amon_mikio 📢 次回予定 🙏 増枠できないので、 興味ある方はお早目に!! 残り6枠です
  6. 7 Copyright © 2023 blessing software. All Rights Reserved. Illustrated

    by @amon_mikio 📢 他に宣伝 🙏   登壇枠は満員! 参加枠が残り2枠です!
  7. 8 Copyright © 2023 blessing software. All Rights Reserved. Illustrated

    by @amon_mikio オフィスを会場として提供可能な方、教えてください
  8. 9 Copyright © 2023 blessing software. All Rights Reserved. Illustrated

    by @amon_mikio ステッカー作りました!!欲しい人配ります!!
  9. 11 Copyright © 2023 blessing software. All Rights Reserved. Illustrated

    by @amon_mikio 今日する話は、明日からでも取り組めます
  10. 12 Copyright © 2023 blessing software. All Rights Reserved. Illustrated

    by @amon_mikio JS,TSを使ってるけどこれを入れてない人は 明日すぐに入れてみてください
  11. 13 Copyright © 2023 blessing software. All Rights Reserved. Illustrated

    by @amon_mikio ところで、コードに脆弱性が100%ない! って言い切れますか?🤔
  12. 脆弱性がない状況をマニュアルでレビューできる? • ある程度脆弱性に詳しい人がPRレビューしてれば出来る ◦ けど、その人がいなくなったら? • 複数人で開発している中で、全員が脆弱性に精通している? ◦ それは理想だけど、そうそうない •

    そもそも、レビューのときに脆弱性ばかりに集中したい? ◦ 自分はNo ◦ 勝手に検知してほしい ◦ あるいは、信用できる誰か (脆弱性診断など)にしてほしい 14 Copyright © 2023 blessing software. All Rights Reserved. Illustrated by @amon_mikio
  13. 脆弱性診断してるし完璧! …本当に? • それってリリースのたびにしてるの? ◦ であれば、その資金力が羨ましい • リリース前にしているとして ◦ 脆弱性が見つかったとき、リリースの直前に修正するの?

    ◦ だいたいそこで修正すると、デグったりリグレッションしてる • 脆弱性診断は有用だけど、必ずしも銀弾丸たり得ない 15 Copyright © 2023 blessing software. All Rights Reserved. Illustrated by @amon_mikio
  14. 16 Copyright © 2023 blessing software. All Rights Reserved. Illustrated

    by @amon_mikio 脆弱性診断は確かに重要だし、信頼性も高い けど、フィードバックループは悪い
  15. What is フィードバックループ 17 Copyright © 2023 blessing software. All

    Rights Reserved. Illustrated by @amon_mikio 簡単に言えば、 プログラマが問題点を 気づける機会のこと
  16. What is フィードバックループ 18 Copyright © 2023 blessing software. All

    Rights Reserved. Illustrated by @amon_mikio このタイミングで 気づくよりは
  17. What is フィードバックループ 19 Copyright © 2023 blessing software. All

    Rights Reserved. Illustrated by @amon_mikio このタイミングで 気付けた方がいいのは 明らか
  18. 20 Copyright © 2023 blessing software. All Rights Reserved. Illustrated

    by @amon_mikio このフィードバックループを短くする方法が…
  19. eslint-security-plugin 21 Copyright © 2023 blessing software. All Rights Reserved.

    Illustrated by @amon_mikio • 脆弱性のあるコーディング箇所はエラーまたは警告してくれる • 怒ってくれる例 ◦ 任意コード実行できる evalの使い方 ◦ DOS攻撃の原因になる正規表現 ◦ オブジェクトインジェクション脆弱性 ◦ ディレクトリトラバーサルが可能な fs呼び出し 詳細はこちらのQRコードより
  20. 28 Copyright © 2023 blessing software. All Rights Reserved. Illustrated

    by @amon_mikio 警告やエラーになったら直さないとだから 明日すぐにはいれられなくない…?
  21. 29 Copyright © 2023 blessing software. All Rights Reserved. Illustrated

    by @amon_mikio それが出るなら、一日でも早く直しましょう! つまり脆弱性がある可能性が高いってことです
  22. 30 Copyright © 2023 blessing software. All Rights Reserved. Illustrated

    by @amon_mikio ご清聴、あざざました
  23. 31 Copyright © 2023 blessing software. All Rights Reserved. Illustrated

    by @amon_mikio おわりに 三ノ宮で待ってます!! samurai_se