安全なコーディングにおいて主導的な立場を維持する。
ネットワーク脅威の状況は絶えず変化しており、優位性を維持することがこれまで以上に重要になっています。一連の動画、ブログ、そして手軽なセキュリティコーディングガイドを通じて、最新情報を提供し、次のステップに備えるお手伝いをいたします。


最新のセキュリティコーディングガイドライン。
{
"dependencies": {
"foo": "1.0.0 - 2.9999.9999",
"bar": ">=1.0.2 <2.1.2"
}
}
既知の脆弱性を持つコンポーネントの使用
{
"dependencies": {
"foo": "1.0.0 - 2.9999.9999",
"bar": ">=1.0.2 <2.1.2"
}
}
ほとんどのアプリケーションは、大量のサードパーティ製コンポーネントを利用している。これらのコンポーネントは、ロギング、テンプレート化、データベースアクセスなど、あらゆるものを提供する。そのため、ソフトウェアの開発は非常に簡単で、多くの時間を節約することができます。しかし、これらのコンポーネントは人が作ったものでもあり、必然的に脆弱性を含むものもあるということです。詳しくはガイドラインをお読みください。
import mysql.connector
db = mysql.connector.connect
#悪い習慣。これは避けること!
(host="localhost", user="newuser", passwd="pass", db="sample")
cur = db.cursor()
name = raw_input('Enter Name: ')
cur.execute("SELECT * FROM sample_data WHERE Name = '%s';" % name) for row in cur.fetchall(): print(row)
db.close()
SQLインジェクション
import mysql.connector
db = mysql.connector.connect
#悪い習慣。これは避けること!
(host="localhost", user="newuser", passwd="pass", db="sample")
cur = db.cursor()
name = raw_input('Enter Name: ')
cur.execute("SELECT * FROM sample_data WHERE Name = '%s';" % name) for row in cur.fetchall(): print(row)
db.close()
SQLインジェクション(SQLi)は、SQL文にコードを注入してアプリケーションを攻撃し、重要な情報を収集します。ウェブセキュリティの脆弱性の一つです。データベースを操作し、そこから重要な情報を引き出すハッキングの最も一般的な手法です。

多くのフレームワークは、本番環境であろうとテスト/開発環境であろうと、アプリケーションのモニタリングを可能にするエンドポイントのセットも持っています。これらは次のものを含みます:
Metrics (Prometheus)
Logs
Environment information
Path/Url Mappings
セキュリティの設定ミス
多くのフレームワークは、本番環境であろうとテスト/開発環境であろうと、アプリケーションのモニタリングを可能にするエンドポイントのセットも持っています。これらは次のものを含みます:
Metrics (Prometheus)
Logs
Environment information
Path/Url Mappings
セキュリティの誤設定とは、悪いコードではなく、アプリケーションのコンフィギュレーション設定に起因する一般的な脆弱性を網羅する、やや包括的な用語です。これは広範なテーマであり、あなたの技術スタックのような要因に大きく依存します。多くの場合、これらの問題への対処は、設定ファイルやコードの1行を変更するような単純に見えるものですが、これらの脆弱性の影響や結果は深刻なものになる可能性があります。この脆弱性とその緩和方法についての詳細は、ガイドラインをお読みください。
ts
let url = request.params.url;
let response = http.get(url);
let render = response.render();
return render.export();
サーバーサイドリクエストフォージェリ
ts
let url = request.params.url;
let response = http.get(url);
let render = response.render();
return render.export();
サーバサイドリクエストフォージェリの脆弱性は、ユーザがアプリケーションに攻撃者が決めたドメインへの HTTP リクエストを行わせることができる場合に発生します。アプリケーションがプライベート/内部ネットワークにアクセスできる場合、攻撃者はアプリケーションに内部サーバへの リクエストを行わせることもできます。本ガイドラインでは、この脆弱性が実際にどのようなものであるかをよりよく理解するために、いくつかの例 を挙げて詳しく見ていきます。
現実世界における安全なコーディングの課題。
当社の公開トレーニング演習ライブラリをご覧ください。これらのサンプルSCWタスクでは、現実世界のアプリケーションシミュレーションにおける攻撃的なセキュリティコーディングの実践を含む、指導付きのハンズオン体験を提供します。