タグ付けされた質問 「security」

アプリケーションのセキュリティとソフトウェアに対する攻撃に関するトピック。このタグを単独で使用しないでください。あいまいになる可能性があります。質問が特定のプログラミングの問題に関するものでない場合は、代わりにInformation Security SEで質問することを検討してください:https://security.stackexchange.com

4
Meteorにはどのようなセキュリティメカニズムがありますか?[閉まっている]
休業。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善してみませんか?この投稿を編集して、事実と引用で回答できるように質問を更新してください。 7年前休業。 この質問を改善する Meteorがクライアントが永続レイヤー(MongoDB)にシームレスにアクセスできるようにするminiMongoドライバーを提供していることは誰もが知っています。 クライアントが永続APIにアクセスできる場合、どのようにしてアプリケーションを保護できますか? Meteorが提供するセキュリティメカニズムはどのようなもので、どのようなコンテキストで使用する必要がありますか?

11
Webサイトの管理セクションを保護するためのベストプラクティスは何ですか?[閉まっている]
閉まっている。この質問はトピックから外れています。現在、回答を受け付けていません。 この質問を改善してみませんか? Stack Overflowのトピックとなるように質問を更新します。 8年前に閉鎖。 この質問を改善する 特に認証/アクセスの観点から、ウェブサイトの管理セクションを保護するためのベストプラクティスを人々がどのように考えているかを知りたいのですが。 もちろん、SSLを使用したり、すべてのアクセスをログに記録したりするなど、明らかなことはありますが、これらの基本的な手順の上のどこに人々がバーが設定されていると考えているのでしょうか。 例えば: 通常のユーザーに使用するのと同じ認証メカニズムに依存していますか?そうでない場合、何ですか? 同じ「アプリケーションドメイン」で管理セクションを実行していますか? 管理セクションを未発見にするためにどのような手順を踏んでいますか?(または「あいまいな」こと全体を拒否しますか) これまでのところ、回答者からの提案は次のとおりです。 ブルートフォース攻撃を防ぐために、各管理者パスワードチェックに人工的なサーバー側の一時停止を導入します[開発者向けアート] ユーザーと管理者が同じDBテーブルを使用して別々のログインページを使用する(管理エリアへのアクセスを許可するXSRFとセッション盗用を停止するため)[Thief Master] Webサーバーのネイティブ認証を管理領域に追加することも検討してください(例:.htaccess経由) [Thief Master] 多数の管理者ログイン試行の失敗後にユーザーのIPをブロックすることを検討してください[Thief Master] 管理者のログイン試行が失敗した後にキャプチャを追加する[Thief Master] ユーザーと管理者に(上記の手法を使用して)同等に強力なメカニズムを提供します(たとえば、管理者を特別に扱いません)[Lo'oris] 2番目のレベルの認証を検討してください(クライアント証明書、スマートカード、カードスペースなど)[JoeGeeky] 信頼できるIP /ドメインからのアクセスのみを許可し、可能であれば、基本的なHTTPパイプラインに(たとえば、HttpModulesを介して)チェックを追加します。[ジョーギーキー] [ASP.NET] IPrincipalとPrincipalをロックダウンします(それらを不変で列挙できないようにします)[JoeGeeky] フェデレート権限の昇格-たとえば、管理者の権限がアップグレードされたときに他の管理者にメールを送信します。 [ジョーギーキー] 管理者にきめ細かい権限を検討します。たとえば、役割ベースの権限ではなく、管理者ごとに個別のアクションの権限を定義します[JoeGeeky] 管理者の作成を制限-たとえば、管理者は他の管理者アカウントを変更または作成できません。これには、ロックダウンされた「superadmin」クライアントを使用します。[ジョーギーキー] クライアント側のSSL証明書、またはRSAタイプのキーフォブ(電子トークン)を検討する[Daniel Papasian] 認証にCookieを使用する場合は、たとえばadminセクションを別のドメインに配置するなどして、adminページと通常のページに別々のcookieを使用します。[ダニエルパパシアス] 実用的な場合は、管理サイトをプライベートなサブネット上に置いて、パブリックインターネットから切り離すことを検討してください。[ジョンハートソック] Webサイトの管理/通常の使用コンテキスト間を移動するときに認証/セッションチケットを再発行する[Richard JP Le Guen]

3
Firebaseデータの変更を制限する方法は?
Firebaseはデータベースのバックエンドを提供するため、開発者はクライアント側のコードに集中できます。 したがって、誰かが私のfirebase uriを取得した場合(たとえばhttps://firebaseinstance.firebaseio.com)、ローカルで開発します。 次に、Firebaseインスタンスから別のアプリを作成し、登録して認証して、Firebaseアプリのすべてのデータを読み取ることができますか?

5
新しいAPIキーを生成するための最良のアプローチは何ですか?
そのため、現在、Google API、Twitter API、FacebookAPIなどのさまざまなサービスがあります。 各サービスには、次のようなAPIキーがあります。 AIzaSyClzfrOzB818x55FASHvX4JuGQciR9lv7q すべてのキーの長さと含まれる文字は異なりますが、APIキーを生成するための最良のアプローチは何でしょうか? 特定の言語を求めているのではなく、キーを作成するための一般的なアプローチだけを求めています。それらは、ユーザーアプリの詳細の暗号化、ハッシュ、またはランダムな文字列のハッシュなどです。ハッシュアルゴリズムについて心配する必要があります。 (MSD、SHA1、bcrypt)など? 編集: 私は数人の友人(email / twitter)と話をしましたが、彼らはダッシュを取り除いたGUIDを使用することを勧めました。 これは私には少しハッキーに思えますが、もっとアイデアを得たいと思っています。
92 security  api-key 

3
ふぐで長いパスワード(> 72文字)をハッシュする方法
先週私はパスワードハッシュに関する記事をたくさん読みましたが、Blowfishは現時点で最高のハッシュアルゴリズム(の1つ)のようですが、それはこの質問のトピックではありません。 72文字の制限 Blowfishは、入力されたパスワードの最初の72文字のみを考慮します。 <?php $password = "Wow. This is a super secret and super, super long password. Let's add some special ch4r4ct3rs a#d everything is fine :)"; $hash = password_hash($password, PASSWORD_BCRYPT); var_dump($password); $input = substr($password, 0, 72); var_dump($input); var_dump(password_verify($input, $hash)); ?> 出力は次のとおりです。 string(119) "Wow. This is a super secret and …

11
SecurityExceptionをスローせずに実行時に権限を確認するにはどうすればよいですか?
SDからリソースを取得/設定し、sdから見つからない場合はそれをAssetから取得し、可能であればアセットをSDに書き戻す関数を設計します。 この関数は、SDがマウントされていてアクセス可能かどうかをメソッド呼び出しで確認します... boolean bSDisAvalaible = Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED); 私の設計した関数は、あるアプリ(プロジェクト)から別のアプリ(プロジェクト)に使用できます(android.permission.WRITE_EXTERNAL_STORAGEの有無にかかわらず) 次に、現在のアプリケーションにSecurityExceptionを使用せずにこの特定の権限があるかどうかを確認したいと思います。 実行時に現在定義されているアクセス許可を調べる「素敵な」方法はありますか?

6
REST API呼び出しを保護するにはどうすればよいですか?
私は、バックエンドでいくつかの人気のあるWebフレームワークを使用する(Rails、Sinatra、Flask、Express.jsなど)休息のWebアプリケーションを開発しています。理想的には、Backbone.jsを使用してクライアント側を開発したいです。JavaScriptクライアント側のみがこれらのAPI呼び出しと対話できるようにするにはどうすればよいですか?これらのAPI呼び出しが公開curlされて、ブラウザでリンクを入力することで、または単に呼び出されることを望んでいません。


5
SSLと中間者の誤解
私はこの問題に関連するたくさんのドキュメントを読みましたが、まだすべてをまとめることができないので、いくつか質問します。 まず、私が理解している認証手順について簡単に説明します。これについては誤解されているかもしれません。クライアントが接続を開始し、サーバーがそれに応答して公開鍵、メタデータ、およびデジタル署名の組み合わせで応答します。信頼できる機関。次に、クライアントは、サーバーを信頼するかどうかを決定し、ランダムなセッションキーを公開キーで暗号化して送信します。このセッションキーは、サーバーに格納されている秘密キーでのみ復号化できます。サーバーがこれを実行すると、HTTPSセッションが開始されます。 したがって、上記が正しい場合、問題はそのようなシナリオで中間者攻撃がどのように発生するかです。つまり、誰かがサーバー(例:www.server.com)の応答を公開キーで傍受し、自分がwww.server.comであると思わせる何らかの手段があっても、私のキーを解読することはできません。秘密鍵なし。 相互認証について言えば、それはすべてクライアントIDに関するサーバーの信頼に関するものですか?つまり、クライアントはすでに適切なサーバーと通信していることを確認できますが、サーバーはクライアントが誰であるかを知りたがっています。 そして最後の質問は、相互認証に代わるものです。上記の状況でクライアントとして機能する場合、SSLセッションの確立後にHTTPヘッダーでログイン/パスワードを送信するとどうなりますか?ご覧のとおり、接続は既にセキュリティで保護されており、サーバーはこの情報を使用して識別できるため、この情報を傍受することはできません。私が間違っている?相互認証と比較したこのようなアプローチの欠点は何ですか(実装の複雑さではなく、セキュリティの問題のみが重要です)?

25
ソフトウェアを違法な配布からどのように保護しますか?[閉まっている]
閉まっている。この質問はトピックから外れています。現在、回答を受け付けていません。 この質問を改善してみませんか? Stack Overflowのトピックとなるように質問を更新します。 8年前に閉鎖。 この質問を改善する クラッキング、ハッキングなどからソフトウェアをどのように保護するのか興味があります。 何らかのシリアル番号チェックを採用していますか?ハードウェアキー? サードパーティのソリューションを使用していますか? ライセンスの問題をどのように解決しますか?(例:フローティングライセンスの管理) 編集:私はオープンソースではなく、厳密に商用のソフトウェア配布について話している...

6
SSLとTLSの違い
ウィキペディアによると:http://en.wikipedia.org/wiki/Transport_Layer_Security TLSはSSLの代わりのようですが、ほとんどのWebサイトはまだSSLを使用していますか?
90 security  ssl 

3
JavaScriptを使用してHttpOnlyCookieを読み取る方法
JavaScriptで安全なCookieを読み取る方法はありますか? 私はそれを使用してそれを試みました、document.cookieそして私が安全なクッキーとHttpOnlyフラグについてのこの記事で見ることができる限り、私はこの方法で安全なクッキーにアクセスすることができません。 誰かが回避策を提案できますか?

9
パスワードハッシュのランダムでないソルト
更新:私は最近この質問から、以下の全体の議論で私(そして他の人もそうだったと確信しています)は少し混乱していることを学びました:私がレインボーテーブルと呼んでいるものは実際にはハッシュテーブルと呼ばれます。レインボーテーブルは、より複雑な生き物であり、実際にはヘルマンハッシュチェーンのバリアントです。解答は同じであると私は信じていますが(解読には至らないため)、一部の議論は少し歪んでいる可能性があります。 質問:「レインボーテーブルとは何ですか。どのように使用されますか?」 通常、Rainbow Tableの攻撃から保護するなど、ハッシュ関数(パスワードなど)と共に使用するために、暗号として強力なランダム値をソルトとして使用することを常にお勧めします。 しかし、実際にはソルトがランダムであることは暗号的に必要ですか?これに関して、一意の値(userIdなどのユーザーごとに一意)で十分でしょうか?実際には、単一のRainbow Tableを使用してシステムのすべて(またはほとんど)のパスワードをクラックする ことはできません... しかし、エントロピーの欠如は、ハッシュ関数の暗号強度を本当に弱めるのでしょうか? ソルトを使用する理由、それを保護する方法(保護する必要はない)、単一の定数ハッシュを使用する(しない)、または使用するハッシュ関数の種類については尋ねていません。 塩がエントロピーを必要とするかどうかだけです。 これまでの回答に感謝しますが、私が(少し)あまり慣れていない領域に焦点を当てたいと思います。主に暗号解読への影響-誰かが暗号数学PoVから何らかの入力を持っている場合、私は最も感謝します。 また、考慮されていなかった追加のベクトルがある場合、それも素晴らしい入力です(複数のシステムでの@Dave Sherohmanポイントを参照)。 それ以上に、理論、アイデア、またはベストプラクティスがある場合は、証明、攻撃シナリオ、または経験的証拠のいずれかでこれをバックアップしてください。または、許容できるトレードオフについての有効な考慮事項...私はこのテーマのベストプラクティス(大文字のBの大文字P)に精通しています。これが実際に提供する価値を証明したいと思います。 編集:ここでいくつかの本当に良い答えがありますが、@ Daveが言うように、それは一般的なユーザー名のレインボーテーブルに帰着します...そしてあまり一般的ではない名前も考えられます。ただし、ユーザー名がグローバルに一意である場合はどうなりますか?必ずしも私のシステムで一意である必要はありませんが、ユーザーごとに-たとえば、電子メールアドレス。 (@Daveが強調しているように、saltは秘密にされていないため)シングルユーザー用のRTを作成するインセンティブはなく、これはクラスタリングを妨げます。唯一の問題は、別のサイトで同じメールアドレスとパスワードを使用している可能性があることです。 それで、それは暗号解読に帰着します-エントロピーは必要ですか、それとも不要ですか?(私の現在の考えでは、暗号解読の観点からは必要ではありませんが、他の実際的な理由からです。)

9
トークンパラメータを含むhttpsURL:安全性はどれくらいですか?
当サイトでは、ユーザーの個人情報(フォームから提供)に基づいたシミュレーションをユーザーに提供しています。ログイン/パスワードアカウントの作成を強制することなく、後でシミュレーション結果に戻ることができるようにしたいと思います。 私たちは、彼らが結果を取り戻すことができるリンクを含む電子メールを彼らに送ることを考えました。ただし、個人データが危険にさらされているため、当然、このURLを保護する必要があります。 そのため、URLでトークン(文字と数字の40文字の組み合わせ、またはMD5ハッシュなど)を渡し、SSLを使用する予定です。 最後に、次のようなメールが届きます。 こんにちは、https://www.example.com/load_simulation?token = uZVTLBCWcw33RIhvnbxTKxTxM2rKJ7YJrwyUXhXnで 結果を取得して ください あなたはそれについてどう思いますか?それは十分に安全ですか?トークンの生成について何をアドバイスしますか?httpsリクエストでURLパラメータを渡すのはどうですか?
89 security  url  https  token 


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.