Flatt Security Blog

株式会社Flatt Securityの公式ブログです。プロダクト開発やプロダクトセキュリティに関する技術的な知見・トレンドを伝える記事を発信しています。

株式会社Flatt Securityの公式ブログです。
プロダクト開発やプロダクトセキュリティに関する技術的な知見・トレンドを伝える記事を発信しています。

2022-01-01から1年間の記事一覧

Firebase Authenticationのバリデーション等を新機能「blocking functions」を用いて拡張する

この記事は、Firebase Authenticationに2022年7月ごろに追加されたblocking functions という機能についての紹介です。 詳細は後述しますが、blocking functionsはFirebase Authenticationの登録、サインイン処理を拡張するための機能で、この記事では、bloc…

Firebaseの新機能「Cross-service Rules」でCloud Storageのアクセス制御をスマートに実装しよう

本稿では、2022年9月に Cloud Storage for Firebase に新たに導入された Cross-service Rules という機能について、前提知識をおさらいしつつ、実例を交えながらその概要や利用方法、メリットなどを紹介します。

AWS Lambdaで秘密情報をセキュアに扱う - アンチパターンとTerraformも用いた推奨例の解説

AWS Lambdaは関数URLやAPI Gatewayのバックエンド、AWSサービスのイベントをトリガーとしたスクリプト実行など様々な用途で使用されます。 そのため、ユースケースによっては秘密情報を扱いたい場合があります。 この記事では、AWS LambdaでAPIキーなどの秘…

EDoS Attack: クラウド利用料金でサービスを止められるって本当?

DoSやDDoSといったサイバー攻撃はみなさん聞いたことがあると思いますが、クラウド時代において、これらと並びサービスの継続に非常に関わってくる攻撃があるのはご存じでしょうか? 世の中ではEDoS(Economic Denial of Sustainability)攻撃と呼ばれるもので…

セキュリティ企業における開発とドッグフーディング - gRPC-web採用プロダクトの脆弱性診断を効率的に行えるようになるまで

こんにちは、Flatt Securityでインターンをしている@smallkirbyです。皆さんは、「ドッグフーディング」という言葉をご存知でしょうか。開発周りでは、書いたコードを開発者側で積極的に利用し、生成されたフィードバックをまた開発に投入していくフローのこ…

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つのソフトウェアエンジニアのポジションの募集を開始しました! recruit.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を目にしてきましたし、依然として検出率の多い脆弱性の一つだと感じ…