Flatt Security Blog

株式会社Flatt Securityの公式ブログです。情報漏洩等につながる脆弱性がないか調査する「セキュリティ診断」とWeb開発者向けセキュアコーディングのeラーニング「KENRO」を提供しています。」

株式会社Flatt Securityの公式ブログです。
技術的な知見や社内の雰囲気を伝える記事を発信しています。

Flatt Security Developers' Quiz #4 解説

はじめに 下記のTweetで出題させていただいた、Flatt Security Developers' Quiz #4にご参加いただきありがとうございました! ⚡️ Flatt Security Developers' Quiz #4 開催! ⚡️<p>タグの内容をalertで表示できますか?皆さんの回答お待ちしております!4-1デ</p>…

無料プロキシツール「mitmproxy」を使ってみよう - セットアップ方法とセキュリティエンジニアおすすめの設定

こんにちは、Flatt Securityのstypr(@stereotype32)です。今回はセキュリティ診断などで使われるローカルプロキシツールについて紹介します。セキュリティエンジニアの多くは、WebやモバイルアプリケーションのHTTP/HTTPSトラフィックを確認するするためにBu…

【PoC編】XSSへの耐性においてブラウザのメモリ空間方式はLocal Storage方式より安全か?

この記事は、Auth0のアクセストークンの保存方法について解説した前回の記事の補足となる記事です。前回の記事の要旨をざっくりまとめると以下のようなものでした。1... Auth0はデフォルトではアクセストークンをブラウザのメモリ空間上にのみ保存するin-mem…

Auth0のアクセストークンをLocal Storageに保存するのは安全?メリット・デメリットをin-memory方式と比較して検討する

この記事では、Auth0のSPA SDKでアクセストークンのキャッシュを有効化する際の考慮ポイントについて紹介し、それを切り口にアクセストークンの保存場所に関してin-memory方式とlocalStorage方式の2つについて解説します。

新機構Play Integrityを使用したFirebase App Checkの検証を通して見る、スマホアプリの不正検知とBypassの「イタチごっこ」

Androidのゲーム、銀行系アプリケーションを開発する上で、チート等の不正を可能にするRoot化や改ざんといった行為からアプリケーションを保護するのは必須と言えます。 そこで本稿では、どのようにアプリケーションを保護すれば良いのかを攻撃者側からの観…

Amazon S3の脆弱な利用によるセキュリティリスクと対策

本稿では、Amazon S3 の脆弱な使い方によるセキュリティリスクと対策を解説し、実際の設定不備などに関する事例についても紹介します。

Flatt Security Developers' Quiz #2 解説

下記のTweetで出題させていただいた、Flatt Security Developers' Quiz #2にご参加いただきありがとうございました!景品の獲得条件を満たした方には追ってメールでご連絡を差し上げますので、ご確認いただけますと幸いです。なお、景品獲得条件を満たさなか…

Policy as Codeで、あらゆるセキュリティ監査が”コード化”される世界をつくる、ソフトウェアエンジニアの募集を始めました。

はじめに こんにちは、Policy as Code の取り組みを実現するセキュリティプラットフォーム、Shisho Cloudのプロダクトマネージャーの小島です。先日、Shisho Cloudの3つのソフトウェアエンジニアのポジションの募集を開始しました! flatt.tech 今回の募集開…

仕様起因の脆弱性を防ぐ!開発者向けセキュリティチェックシート(Markdown)を公開しました

これまで弊社ブログでは様々な「仕様とセキュリティ観点の解説記事」を発表してきました。今回はいままでの記事を改めて紹介しつつ、読者の皆様が開発中のサービスでセルフチェックを行えるよう「仕様とセキュリティ観点チェックリスト」を作成しました。ご…

Webサービスにおけるマイページの仕様とセキュリティ観点

本稿では、ログイン機能をもつWebアプリケーションにおける実装上の注意を、マイページ機能から派生する機能のセキュリティ観点から記載していきます。特に、XSS(Cross-Site Scripting)やSQLインジェクションのような典型的な脆弱性と比較して語られること…

HackerOneのイベント (H1-512) に参加するためにテキサスに行った話

今回、HackerOneとGitHubが開催するライブハッキングイベント「H1-512」に招待されたため、6月14日から6月18日の間テキサス州オースティンに行っていました。 本稿では、H-512に参加するために国内/国外含めて記憶がある中では初めての飛行機を使った旅行を…

Flatt Security Developers' Quiz #1 解説

はじめに 下記のTweetで出題させていただいた、Flatt Security Developers' Quizにご参加いただきありがとうございました! ⚡️ Flatt Security Developers' Quiz開催! ⚡️PHPコードに潜む脆弱性を見つけられますか?先着10名の方に公式Tシャツとステッカーを…

NETGEAR社製ルーターにおける認証不要の任意コード実行の技術的解説(PSV-2022-0044)

本記事では、NETGEAR社のWAC124(AC2000)ルーターにおいて、様々な脆弱性を発見し、いくつかの脆弱性を連鎖させて、前提条件なしに未認証ユーザーの立場からコマンドを実行する方法について説明します。 私は1週間ほどかけてこれらのバグをすべて見つけ出し、…

GitHub Organizationの安全な運用とモニタリングに関するスライド(全44ページ)を無償公開しました

GitHub Organizationを安全に運用していくためのベストプラクティス、そしてそのベストプラクティスがきちんと開発組織の中で運用されているかをモニタリングする方法についてまとめたスライドを公開しました。 この記事では、そのスライドを公開のお知らせ…

Webサービスの認可制御の不備によって起こる仕様の脆弱性と対策

本稿では、Webアプリケーション上で実装される「認可制御」で気をつけなければいけない「仕様の中で起きうる脆弱性」とその対策について解説していきます。 どういったアプリケーションであれ認可制御は何らかの形で行われているでしょう。今回は認可制御に…

Firebase Authentication 7つの落とし穴 - 脆弱性を生むIDaaSの不適切な利用

認証機構を自作せずに導入できる Firebase Authentication は様々なアプリケーションにて利用されていますが、その特性を十分に理解せずに導入すると、実は不具合や脆弱性が生じることがあります。そこで本稿では Firebase Authentication を利用するうえで…

Web開発者はもっと「安全なウェブサイトの作り方」を読むべき

本稿では、独立行政法人 情報処理推進機構(以下、IPA)が公開している資料「安全なウェブサイトの作り方」を紹介します。 「安全なウェブサイトの作り方」は、無料で公開されているにも関わらず、Webセキュリティを学ぶ上で非常に有用な資料です。これからWeb…

SPA開発とセキュリティ - DOM based XSSを引き起こすインジェクションのVue, React, Angularにおける解説と対策

Vue.js logo: ©︎ Evan You (CC BY-NC-SA 4.0 with extra conditions(It’s OK to use logo in technical articles for educational purposes)) / React logo: ©︎ Meta Platforms, Inc. (CC BY 4.0) / Angular logo: ©︎ Google (CC BY 4.0) はじめに こんにち…

そのクーポン機能は不正利用を防げる実装ですか? - Webサービスにおけるクーポン機能の仕様とセキュリティ観点

こんにちは。株式会社Flatt Securityセキュリティエンジニアの村上です。セキュリティ・キャンプ卒業後、新卒入社組としてFlatt Securityでセキュリティエンジニアをしています。 本稿では、BtoCのWebサービスにおいてマーケティング施策として頻繁に発行さ…

Bluetooth通信実装のセキュリティ観点を4ステップ + 1で理解する

Bluetoothは、米国Bluetooth SIG,Inc.の商標です。 イントロ BLE通信 概観 GATTプロファイル ペアリング 脆弱性 1: Characteristicの権限指定ミスによる平文通信 観点: GATT Characteristicと属性 対策: characteristicへの暗号化必須属性の付与 脆弱性 2. L…

業務効率化・品質向上をエンジニアリングする - Flatt Security のセキュリティ診断プラットフォーム「ORCAs」

本稿では、Flatt Security において独自に開発しているセキュリティ診断プラットフォームである ORCAs(オルカス) に焦点を当て、その概要や開発の経緯、開発チームが技術的に興味深いと感じている点について紹介します。 本稿を通して、Flatt Security がど…

サーバーレスのセキュリティリスク - AWS Lambdaにおける脆弱性攻撃と対策

本稿では、AWS Lambda で起こりうる脆弱性攻撃やリスク、セキュリティ対策を解説し、サーバーレスにおけるセキュリティリスクについて紹介します。

セキュリティエンジニアが本気でオススメする開発者向けコンテンツ 20選

弊社はお客様からさまざまな開発におけるセキュリティのアドバイスを求められることも多いのですが、その中で「開発に役に立つセキュリティ」という切り口では、なかなかまとまっているリファレンス集がないという課題に気付かされました。 そこで、社内でア…

iOSのファイル共有機能5パターンの検証とセキュリティ対策まとめ

そこで本稿では、iOSアプリケーション上で利用できる各種ファイル共有機能を5つのパターンに分けて検証しつつ、これらを利用する上で注意すべき点についても解説していこうと思います。

開発者が知っておきたい「XSSの発生原理以外」の話

XSSはセキュリティエンジニアならもちろん、開発を行っているエンジニアの多くの方が知っている脆弱性です。ですが、私はWebアプリケーションの脆弱性診断を行ってきた経験の中で多くのXSSを目にしてきましたし、依然として検出率の多い脆弱性の一つだと感じ…

Sigstore によるコンテナイメージの Keyless Signing

This image includes the work that is distributed in the Apache License Version 2.0 こんにちは。株式会社Flatt SecurityでインターンをしているMarina (@marin_a___) です。本稿はソフトウェアサプライチェーン領域で注目を集める Sigstore プロジェク…

「推測不可能性」だけで安心?セキュアなURL生成について考える

多くのWebサービスにおいて、ブログ記事やドキュメントの公開・下書き共有のためにURLを発行する機能が存在していると思います。このようなURLに関して、第三者に知られたくない場合「推測不可能なURL」を発行するといったセキュリティ観点は広く知られてい…

Lambdaの落とし穴 - 脆弱なライブラリによる危険性とセキュリティ対策

はじめに こんにちは、株式会社Flatt Security セキュリティエンジニアの森岡(@scgajge12)です。 本稿では、AWS Lambda で使用するサードパーティーライブラリに脆弱性がある場合の危険性やそのセキュリティ対策について紹介します。 はじめに AWS Lambda に…

Webサービスにおけるファイルアップロード機能の仕様パターンとセキュリティ観点

はじめに こんにちは。株式会社Flatt Securityセキュリティエンジニアの村上です。セキュリティ・キャンプ卒業後、新卒入社組としてFlatt Securityでセキュリティエンジニアをしています。 本稿では、Webアプリケーション上で実装される「ファイルアップロー…

Node.jsのMySQLパッケージにおけるエスケープ処理だけでは防げない「隠れた」SQLインジェクション

※本記事は筆者styprが英語で執筆した記事を株式会社Flatt Security社内で日本語に翻訳したものになります。 TL;DR Node.jsのエコシステムで最も人気のあるMySQLパッケージの一つである mysqljs/mysql (https://github.com/mysqljs/mysql)において、クエリの…