SoftwareDesign 2024/7月号 輪読会メモ (2024/7/1)

# はじめに

こちらの勉強会イベントのメモです。

https://softwaredesign.connpass.com/event/321272/

# 第1特集
GitHub Actions実践講座
CI/CDの理想を実現するために

P.17

    第1章：GitHub Actionsの基本
    技術用語と定義ファイルの書き方
    …… 佐藤 礼於

P.18
2018年〜6年経過

    第2章：CI/CD実現ハンズオン
    静的解析からコンテナレジストリへのプッシュまで
    …… 高見 諒

P.24
goのwebアプリケーションの例、コラム(P.30 アクションを指定してワークフローをシンプルに)

    第3章：実運用で求められる機能
    ワークフローの制御，高速化，セキュリティなど
    …… 加瀬 健太，谷 昌典

P.33
needs機能(ジョブ間で実行順序を指定)、途中のジョブが失敗しても実行する(if: ${{always())}}、キャッシュによる高速化、トリガーの細かい指定、GITHUB_TOKENの権限管理、セキュリティ(インジェクション対策)

    第4章：大規模開発におけるGitHub Actionsの課題と解決策
    便利機能の使いどころ・注意点
    …… 三村 遼

P.45
(N/A)

    第5章：大規模開発におけるワークフロー設計
    保守性や運用面の要件に応えるためのテクニック
    …… 平木場 風太

P.52
確実な定期実行(外部からworkflow_dispatchで実行)

# 第2特集
脆弱性診断入門
脆弱性の発見手法と対策アプローチを身につけよう

P.61

    第1章：昨今のセキュリティ事情と対策の基礎知識
    リスクと向き合い，必要な対策を理解する
    …… 松本 隆則

P.62
(N/A)

    第2章：脆弱性診断に必要な知識とスキル
    脅威に備えて対抗する力を磨く
    …… 松本 隆則

P.66
Nikto 2.5.0

```bash
 % perl nikto.pl -h https://www.yahoo.co.jp
- Nikto v2.5.0
---------------------------------------------------------------------------
+ Target IP:          183.79.250.251
+ Target Hostname:    www.yahoo.co.jp
+ Target Port:        443
---------------------------------------------------------------------------
+ SSL Info:        Subject:  /C=JP/ST=Tokyo/L=Chiyoda-ku/O=LY Corporation/CN=edge01.yahoo.co.jp
                   Altnames: edge01.yahoo.co.jp, *.yahoo.co.jp, *.yahooapis.jp, *.ane.yahoo.co.jp, *.auctions.yahoo.co.jp, *.auctions.yahooapis.jp, *.box.yahooapis.jp, *.bspace.jp, *.bylines.news.yahoo.co.jp, *.c.yimg.jp, *.carnavi.yahooapis.jp, *.carview.co.jp, *.chiebukuro.yahoo.co.jp, *.clorder.yahoo.co.jp, *.cvw.jp, *.digitalguide.jp, *.east.edge.storage-yahoo.jp, *.east.edge.storage-yahoobox.jp, *.edge.storage-yahoo.jp, *.edit.yahooapis.jp, *.finance.yahoo.co.jp, *.geocities.jp, *.global.edge.storage-yahoo.jp, *.gyao.yahoo.co.jp, *.jobcatalog.yahoo.co.jp, *.listing.yahoo.co.jp, *.loco.yahoo.co.jp, *.lycorp.co.jp, *.mail.yahoo.co.jp, *.marketing.yahoo.co.jp, *.mkcloud-api.carview.co.jp, *.mkimg.carview.co.jp, *.ms.yahoo.co.jp, *.news.yahoo.co.jp, *.news.yahooapis.jp, *.order.yahoo.co.jp, *.points.yahoo.co.jp, *.psi.yahoo.co.jp, *.push.yahooapis.jp, *.search.yahooapis.jp, *.shopping.c.yimg.jp, *.shopping.srv.yimg.jp, *.shopping.yahoo.co.jp, *.shopping.yahooapis.jp, carview.co.jp, *.store.yahoo.co.jp, *.travel.yahoo.co.jp, *.wallet.yahoo.co.jp, *.wallet.yahooapis.jp, *.webhosting.yahoo.co.jp, *.west.edge.storage-yahoo.jp, *.west.edge.storage-yahoobox.jp, *.xml.listing.yahoo.co.jp, *.yahoo-help.jp, *.yahoo-labs.jp, *.yahoo-net.jp, *.yahoo.jp, *.yahoobox.jp, *.yimg.jp, *.yjtag.jp, *.yjtag.yahoo.co.jp, *.ys-insurance.co.jp, activity.travel.yahoo-net.jp, add.dir.yahoo.co.jp, api.y.clorder.yahoo.co.jp, arc.help.yahoo.co.jp, biztx.points.yahooapis.jp, *.snsimg.carview.co.jp, cgi2.r-agent.yahoo.co.jp, cksync.pdsp.yahoo.co.jp, cm.froma.yahoo.co.jp, compass.ymobile.yahoo.co.jp, control.yjdmp.jp, custom.search.yahoo.co.jp, e.developer.yahoo.co.jp, feedback.advertising.yahoo.co.jp, feedback.premiads.yahoo.co.jp, feedback.promotionalads.yahoo.co.jp, forms.business.yahoo.co.jp, frame.games.yahoo.co.jp, hrm.grmtrez.yahoo.co.jp, im.ov.yahoo.co.jp, info.hatalike.yahoo.co.jp, movie.chocotle.yahoo.co.jp, online.security.yahoo.co.jp, patrol.shp.yahoo.co.jp, poiedit.map.yahoo.co.jp, portal.yadui.business.yahoo.co.jp, ssl-tools.kainavi.search.yahoo.co.jp, ssl.api.olp.yahooapis.jp, ssl.map.srv.yimg.jp, www.bosaiguide.jp, www.lohaco.yahoo.co.jp, www.search311.jp, www.sp-hinan.jp, www.techbasevn.com, yahoo.co.jp, yahoo.jp, yj.pn, yjtag.jp
                   Ciphers:  AEAD-AES128-GCM-SHA256
                   Issuer:   /C=JP/O=Cybertrust Japan Co., Ltd./CN=Cybertrust Japan SureServer CA G4
+ Start Time:         2024-06-30 21:21:01 (GMT9)
---------------------------------------------------------------------------
+ Server: nginx
+ /:X-Frame-Options header is deprecated and has been replaced with the Content-Security-Policy HTTP header with the frame-ancestors directive instead. See: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Frame-Options
+ /: Uncommon header 'accept-ch' found, with contents: Sec-CH-UA-Full-Version-List, Sec-CH-UA-Model, Sec-CH-UA-Platform-Version, Sec-CH-UA-Arch.
+ /: The site uses TLS and the Strict-Transport-Security HTTP header is not defined. See: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Strict-Transport-Security
+ /: Cookie B created without the httponly flag. See: https://developer.mozilla.org/en-US/docs/Web/HTTP/Cookies
+ /: Cookie XB created without the httponly flag. See: https://developer.mozilla.org/en-US/docs/Web/HTTP/Cookies
+ /ajdyhcse.vts: Uncommon header 'traceresponse' found, with contents: 00-873dec32b65b630df90a54a5a9203cf7-d77f3cf14ffeab64-01.
+ /ajdyhcse.vts: Uncommon header 'x-dt-tracestate' found, with contents: 945f54dd-87dd099b@dt.
+ /ajdyhcse.types: Uncommon header 'x-vcap-request-id' found, with contents: 7edc7236-7268-455b-7c1b-d6362273d831.
+ No CGI Directories found (use '-C all' to force check all possible dirs)
+ /robots.txt: The X-Content-Type-Options header is not set. This could allow the user agent to render the content of the site in a different fashion to the MIME type. See: https://www.netsparker.com/web-vulnerability-scanner/vulnerabilities/missing-content-type-header/
+ Server is using a wildcard certificate: *.yahoo.co.jp. See: https://en.wikipedia.org/wiki/Wildcard_certificate
+ /favicon.ico: Uncommon header 'x-ntap-sg-trace-id' found, with contents: ea4887690632a75f.
+ /favicon.ico: Uncommon header 'ats-carp-promotion' found, with contents: 1.
+ /: The Content-Encoding header is set to "deflate" which may mean that the server is vulnerable to the BREACH attack. See: http://breachattack.com/
+ OPTIONS: Allowed HTTP Methods: GET, HEAD .
```

Burp Suite (プロキシ機能)
JNSA、OWASP

    第3章：Webサイトの脆弱性を突く攻撃の具体例
    被害を防ぐための根本原因を突き止めて対策する
    …… 水野 沙理衣

P.72
JVN登録状況(XSS、境界外書き込み、SQLインジェクション、..)、SQLインジェクションの例、XSSの例(反射型、持続型、DOMベース型)、XSS対策(エスケープ処理、ダブルクォート、URL生成、動的DOMの生成)

    第4章：CTFに挑戦
    脆弱性の探し方と対策を実戦形式で理解しよう
    …… 養田 篤也

P.84
CTFのテスト環境構築はmacOS(M1)でエラーが発生する(↓対策)

https://qiita.com/jizya/items/38f15271903de629d1ab

外部サービス(Webhook、DNS、メール)

https://webhook.site/

外部サービス(ワークフロー、コード実行可)

https://pipedream.com/

# 連載

    ITエンジニア必須の最新用語解説
    【187】Oracle Database 23ai……杉山 貴章

ED.1
AI機能？！(ベクトル検索、ONNXサポート、自然言語での問い合わせ->内部でLLMを使用してSQLに変換)、JSONとRDBのデータをマッピング、分散DBの合意プロトコル「Raft」のサポート

    万能IT技術研究所
    【26】赤外から紫外線まで！スマホで写す「見えない世界」――画像位置合わせ技術で分光画像の歪みを補正……万能IT技術研究所

P.1
リモコンの赤外線フィルタ、紫外線フィルタは高価、回折格子(光を波長毎に分解)、モンシロチョウのオスとメスの区別、大気の窓

    ドメイン解体新書
    【6】DNSとプライバシー……谷口 元紀

P.6
DNSクエリから見えてくるプライバシー、通信の秘密、DNSブロッキング(広告フィルタリング)、標準化が進んでいる技術(DoH、ESNI、ECH、ODoH、DNS Private Exchange)

    ハピネスチームビルディング
    【28】モチベーション3.0を刺激するプラクティスを考えよう……小島 優介

P.12
モチベーション3.0(1.0原始、2.0外的、3.0内発的)、目的・熟達・自律性

    エンジニアのためのやる気UPエクササイズ
    【23】30歳超えのエンジニアが筋トレをすべき理由……えくろプロテイン

P.14
サルコペニア(加齢に伴う筋肉量の減少)

    レガシーシステム攻略のプロセス
    【3】API Gatewayとサービスメッシュによるリクエスト制御……富永 良子，吉江 守弘，亀井 宏幸

P.98
AWS API Gateway -> AWS活用ジャーニーの記事

    Databricksで勝つデータ活用
    【4】DatabricksとLLM……阿部 直矢

P.106
RAGの評価

    あなたの知らないChromeの世界
    【6】ChromeのセキュリティとSpectre……小河 亮

P.114
SOP(Same Origin Policy, オリジンがセキュリティの境界として適切)　→第2特集 第4章 CORS
Spectre、Meltdown攻撃(ブラウザのメモリへのアクセス)　→Site Isolationによるサイト間プロセス分離

    【最終回】Google Cloud流クラウドネイティブなシステムデザインパターン
    【6】セキュアなシステム……北野 敦資，監修：阿部 正平

P.120
境界防御->ゼロトラスト->サービス境界

    ぼくらの「開発者体験」改善クエスト
    【7】プロダクト開発エンジニア全員で取り組むオブザーバビリティ……安藤 裕紀

P.128
全員プロダクト開発エンジニア、全員が使えるオブザーバビリティツール(New Relic)

    実践データベースリファクタリング
    【8】無自覚な実行……曽根 壮大

P.136
実行計画(深く考えないまま負荷がかかるクエリを実行) ->実行計画の確認(クエリの先頭にEXPLAINを付ける)
EXPLAIN ANALYZE ->実際にクエリを実行しているので注意
MySQL Workbench、PostgreSQL pgAdmin4で実行計画の可視化

    Cloudflare Workersへの招待
    【8】Service bindingsで複数Workerを連携してみよう……福岡 秀一郎

P.144
(N/A)

    実践LLMアプリケーション開発
    【10】LangGraphで開発するCorrective Retrieval Augmented Generation……西見 公宏

P.152
CRAG(Corrective RAG) -> 検索結果の質を評価し、適切な情報が得られるまで検索を繰り返す

    AWS活用ジャーニー
    【22】Amazon API Gateway……杉金 晋

P.160
Postmanが公開しているレポート(86% REST API)
29秒タイムアウト

    成功するPSIRTの極意
    【2】PSIRTの日々の業務 ～ログ解析／脆弱性診断について～……松本 太一，越智 郁

P.166
blue team、センサーログ解析、ask対応(DoS？、security groupの手動削除
red team、脆弱性診断の実施

    魅惑の自作シェルの世界
    【20】SIGINTをスレッドで受けてwhileコマンドを止める……上田 隆一

P.174
(N/A)

    あなたのスキルは社会に役立つ～エンジニアだからできる社会貢献～
    【151】テクノロジーの力でともに生きる社会へ……小泉 勝志郎

P.182
シニアプログラミングネットワーク

    SD NEWS & PRODUCTS

P.186

    Reader's Link

P.190
表紙(ハムスター)のコメントでも読者コメントが掲載されている、、