Skip to main content

Objective-Cのスキャンルール

Contrast Scanでは、Objective-Cに対して以下のルールをサポートしています。

深刻度

Contrastルール

エンジンルールID

説明

重大

Avoid SQL Injection

OPT.OBJECTIVEC.AvoidSqlInjection

AvoidSqlInjection:SQLコマンドで使用する特殊要素の不適切な無害化(SQLインジェクション)

重大

Code Injection

OPT.OBJECTIVEC.CodeInjection

CodeInjection:コード生成の不適切な制御(コードインジェクション)

重大

Cross Site Scripting

OPT.OBJECTIVEC.CrossSiteScripting

CrossSiteScripting:Webページ生成中の入力の不適切な無害化(クロスサイトスクリプティング)

重大

DoS Regular Expression

OPT.OBJECTIVEC.DoSRegularExpression

DoSRegularExpression:悪意のある正規表現によるDoS攻撃の防止

重大

Format String Vulnerability

OPT.OBJECTIVEC.FormatStringVulnerability

FormatStringVulnerability:無害化されていないユーザ入力をフォーマット文字列から除外

重大

JSON Injection

OPT.OBJECTIVEC.JSONInjection

JSONInjection:JSONエンティティにおける無害化されていないユーザ制御入力の使用の回避(JSONインジェクション)

重大

Open Redirect

OPT.OBJECTIVEC.OpenRedirect

OpenRedirect:信頼できないサイトへのURLリダイレクト(オープンリダイレクト)

重大

XML Entity Injection

OPT.OBJECTIVEC.XMLEntityInjection

XmlEntityInjection:XMLエンティティインジェクション

重大

XPath Injection

OPT.OBJECTIVEC.XPathInjection

XPathInjection:XPath式内のデータの不適切な無害化(XPathインジェクション)

重大

Command Injection Rule

OPT.OBJECTIVEC.SECURITY.CommandInjectionRule

CommandInjectionRule:OSコマンドで使用する特殊要素の不適切な無害化(OSコマンドインジェクション)

重大

Connection String Parameter Pollution

OPT.OBJECTIVEC.SECURITY.ConnectionStringParameterPollution

ConnectionStringParameterPollution::信頼できない入力で汚染された接続文字列

重大

Http Splitting Rule

OPT.OBJECTIVEC.SECURITY.HttpSplittingRule

HttpSplittingRule:HTTPヘッダにおけるCRLFシーケンスの不適切な無害化(HTTPレスポンス分割攻撃)

重大

Mail Command Injection

OPT.OBJECTIVEC.SECURITY.MailCommandInjection

MailCommandInjection:メールコマンドインジェクション

重大

No SQL Injection

OPT.OBJECTIVEC.SECURITY.NoSQLInjection

NoSQLInjection:データクエリロジックにおける特殊要素の不適切な無害化(NoSQLインジェクション)

重大

Avoid Confusing User Id Calls

OPT.OBJECTIVEC.AvoidConfusingUserIdCalls

AvoidConfusingUserIdCalls:setuid() / setreuid() / setgid() / setregid()によるプログラムの特権レベルの変更の回避

重大

Avoid Empty Catch Blocks

OPT.OBJECTIVEC.AvoidEmptyCatchBlocks

AvoidEmptyCatchBlocks:空の@catchブロックの回避

重大

Avoid Large Methods

OPT.OBJECTIVEC.AvoidLargeMethods

AvoidLargeMethods:行数の多すぎるメソッドの回避

重大

Avoid Loop With Empty Body

OPT.OBJECTIVEC.AvoidLoopWithEmptyBody

AvoidLoopWithEmptyBody:本体が空のループ(while、do/while、for)の回避

重大

Avoid Sudo

OPT.OBJECTIVEC.AvoidSudo

AvoidSudo:プログラムでのsudo使用の回避

重大

Avoid Throwing Exceptions

OPT.OBJECTIVEC.AvoidThrowingExceptions

AvoidThrowingExceptions:例外のスローの回避

重大

Nil In Literals

OPT.OBJECTIVEC.NilInLiterals

NilInLiterals:NSArrayやNSDictionaryリテラルでのnilの使用禁止

重大

No Update Loop Vars In For Body

OPT.OBJECTIVEC.NoUpdateLoopVarsInForBody

NoUpdateLoopVarsInForBody:「for」ループ本体における制御変数の更新の禁止

重大

Override Draw Rect U IView Subclasses

OPT.OBJECTIVEC.OverrideDrawRectUIViewSubclasses

OverrideDrawRectUIViewSubclasses:drawRect:をオーバーライドし、スーパークラスがUIViewのサブクラスの場合のsuperの呼び出し

重大

Override Is Equal And Hash

OPT.OBJECTIVEC.OverrideIsEqualAndHash

OverrideIsEqualAndHash:isEqual:メソッドのオーバーライド時のハッシュメソッドのオーバーライド

重大

Override U IView Controller Methods

OPT.OBJECTIVEC.OverrideUIViewControllerMethods

OverrideUIViewControllerMethods:UIViewControllerメソッドのオーバーライド時のsuperの呼び出し

重大

Override U IView Methods

OPT.OBJECTIVEC.OverrideUIViewMethods

OverrideUIViewMethods:UIView メソッドのオーバーライド時のsuperの呼び出し

重大

Path Manipulation Vulnerability

OPT.OBJECTIVEC.PathManipulationVulnerability

PathManipulationVulnerability:I/O操作で使用するパス名(ファイルまたはディレクトリ)の一部として、無害化されていないユーザ制御入力を使用しない

重大

Replace With Less Secure Func

OPT.OBJECTIVEC.ReplaceWithLessSecureFunc

ReplaceWithLessSecureFunc:関数のセキュアの低い関数への置き換え禁止

重大

Reuse Annotation Views

OPT.OBJECTIVEC.ReuseAnnotationViews

ReuseAnnotationViews:マップ内の注釈ビューの再利用

重大

Reuse Table View Cells

OPT.OBJECTIVEC.ReuseTableViewCells

ReuseTableViewCell:テーブルビューでのセルの再利用

重大

Missing Password Field Masking

OPT.OBJECTIVEC.SECURITY.MissingPasswordFieldMasking

MissingPasswordFieldMasking:マスクされていないパスワード入力フィールド

重大

Certificate Verify Failed Bypass

OPT.OBJECTIVEC.CertificateVerifyFailedBypass

CertificateVerifyFailedBypass:証明書の検証のバイパス禁止

重大

Hardcoded Crypto Key

OPT.OBJECTIVEC.SECURITY.HardcodedCryptoKey

HardcodedCryptoKey:ハードコードされた暗号鍵

重大

Weak Key Derivation Iteration

OPT.OBJECTIVEC.SECURITY.WeakKeyDerivationIteration

WeakKeyDerivationIteration:キー導出の反復回数不足

重大

Weak Key Derivation Password

OPT.OBJECTIVEC.SECURITY.WeakKeyDerivationPassword

WeakKeyDerivationPassword:キー導出における空のパスワード/nilのパスワードの使用

Do Not Use System

OPT.OBJECTIVEC.DoNotUseSystem

DoNotUseSystem:コマンドプロセッサが不要な場合は「system()」の使用禁止

Perform Selector With Untrusted Data

OPT.OBJECTIVEC.PerformSelectorWithUntrustedData

PerformSelectorWithUntrustedData:performSelectorの外部制御の回避

URL Schemes Handling

OPT.OBJECTIVEC.URLSchemesHandling

URLSchemesHandling:呼び出し元アプリケーションのIDの検証

Http Parameter Pollution Rule

OPT.OBJECTIVEC.SECURITY.HttpParameterPollutionRule

HttpParameterPollutionRule:HTTPパラメータ汚染(HPP)

Log Forging

OPT.OBJECTIVEC.SECURITY.LogForging

LogForging:ログの出力の不適切な無害化

Resource Injection

OPT.OBJECTIVEC.SECURITY.ResourceInjection

ResourceInjection:リソース識別子の不適切な制御(リソースインジェクション)

URL Scheme Hijacking

OPT.OBJECTIVEC.SECURITY.URLSchemeHijacking

URLSchemeHijacking:ユーザ入力によるURLスキームの乗っ取り

XML Injection

OPT.OBJECTIVEC.SECURITY.XMLInjection

XMLInjection: XMLインジェクション(別名、ブラインドXPathインジェクション)

Assign Init Result To Self

OPT.OBJECTIVEC.AssignInitResultToSelf

AssignInitResultToSelf:initメソッドにおける[super init]の結果のselfへの代入、nilかどうかのチェック

Avoid Conditional Operator

OPT.OBJECTIVEC.AvoidConditionalOperator

AvoidConditionalOperator:条件評価のための三項演算子「 ? : 」の回避

Avoid Empty Draw Rect

OPT.OBJECTIVEC.AvoidEmptyDrawRect

AvoidEmptyDrawRect:空のdrawRect: 実装の回避

Avoid Insecure C String Functions

OPT.OBJECTIVEC.AvoidInsecureCStringFunctions

AvoidInsecureCStringFunctions:境界をチェックしないCライブラリ関数の回避

Avoid Maximum Location Accuracy When Possible

OPT.OBJECTIVEC.AvoidMaximumLocationAccuracyWhenPossible

AvoidMaximumLocationAccuracyWhenPossible:デフォルトでの最適な位置情報精度の使用回避

Balance Custom Getters And Setters

OPT.OBJECTIVEC.BalanceCustomGettersAndSetters

BalanceCustomGettersAndSetters:カスタムのsetterがあるプロパティに対して常にカスタムのgetterを記述すること、その逆も同様

Boolean In Comparisons

OPT.OBJECTIVEC.BooleanInComparisons

BooleanInComparisons:比較でのnil/NOまたはYESの使用の回避

Cache N S Date Formatters

OPT.OBJECTIVEC.CacheNSDateFormatters

CacheNSDateFormatters:NSDateFormatterのキャッシュ(NSDateFormatter型のインスタンスを複数作成するのではなく、単一のインスタンスをキャッシュして再利用)

Claim Ownership Core Foundation Objects

OPT.OBJECTIVEC.ClaimOwnershipCoreFoundationObjects

ClaimOwnershipCoreFoundationObjects:Core Foundation のGet関数から受け取ったCore Foundationオブジェクトの所有権の明示的な取得

Class Cyclomatic Complexity

OPT.OBJECTIVEC.ClassCyclomaticComplexity

ClassCyclomaticComplexity:循環的複雑度の高いクラスの使用の回避

Clear Frame Buffers Before Drawing

OPT.OBJECTIVEC.ClearFrameBuffersBeforeDrawing

ClearFrameBuffersBeforeDrawing:描画前のglClear関数の呼び出し

Comment Top Level Declarations

OPT.OBJECTIVEC.CommentTopLevelDeclarations

CommentTopLevelDeclarations:インターフェイス、カテゴリ、およびプロトコルにおけるコメントの添付

Create Autorelease Pool In Thread

OPT.OBJECTIVEC.CreateAutoreleasePoolInThread

CreateAutoreleasePoolInThread:各スレッドにおけるautoreleaseプールの作成

Deallocation Of Objects Removed From Collections

OPT.OBJECTIVEC.DeallocationOfObjectsRemovedFromCollections

DeallocationOfObjectsRemovedFromCollections:使用する基本的なコレクションクラス(NSMutableArray、NSMutableDictionary)から削除されたオブジェクトの割り当て解除の回避

Dealloc Method

OPT.OBJECTIVEC.DeallocMethod

DeallocMethod:deallocの実装の最後でスーパークラスの実装を呼び出していないことを検出

Default Clause Switch Statements

OPT.OBJECTIVEC.DefaultClauseSwitchStatements

DefaultClauseSwitchStatements:全てのswitch文にdefault文が必要

Designated Initializer

OPT.OBJECTIVEC.DesignatedInitializer

DesignatedInitializer:全てのパブリッククラスに、少なくとも1つの指定イニシャライザが必要

Distance From Main Sequence

OPT.OBJECTIVEC.DistanceFromMainSequence

DistanceFromMainSequence:プロジェクトがメインシーケンスから大きく外れていないかの確認

Do Not Instantiate Temporal Objects Loops

OPT.OBJECTIVEC.DoNotInstantiateTemporalObjectsLoops

DoNotInstantiateTemporalObjectsLoops:ループ本体における一時オブジェクトのンスタンス化の回避

Fork Followed By Exec

OPT.OBJECTIVEC.ForkFollowedByExec

ForkFollowedByExec:forkの呼び出し後に、execまたは同様の関数の呼び出しが必要

Handle Memory Warnings

OPT.OBJECTIVEC.HandleMemoryWarnings

HandleMemoryWarnings:メモリ不足の警告への対応

Many Cases

OPT.OBJECTIVEC.ManyCases

ManyCases:スイッチ構造での過多な選択肢の回避

Method Cyclomatic Complexity

OPT.OBJECTIVEC.MethodCyclomaticComplexity

MethodCyclomaticComplexity:循環的複雑度の高いメソッドの使用の回避

Minimize Bluetooth Interaction

OPT.OBJECTIVEC.MinimizeBluetoothInteraction

MinimizeBluetoothInteraction:スキャンオプションとしてのCBCentralManagerScanOptionAllowDuplicatesKey定数の使用の回避

Nested If Statements

OPT.OBJECTIVEC.NestedIfStatements

NestedIfStatements:高レベルのif文のネストの回避

Notify Deallocation Weak References

OPT.OBJECTIVEC.NotifyDeallocationWeakReferences

NotifyDeallocationWeakReferences:弱参照オブジェクトの割り当て解除の通知

Low Cohesion Within Object

OPT.OBJECTIVEC.LowCohesionWithinObject

LowCohesionWithinObject:結束度の低いクラスの回避

Parenthesize Macro Args

OPT.OBJECTIVEC.ParenthesizeMacroArgs

ParenthesizeMacroArgs:マクロ置換リストは括弧で囲む事が必要

Property Data Member

OPT.OBJECTIVEC.PropertyDataMember

PropertyDataMember:データメンバーごとにプロパティを作成し、インスタンス変数に直接アクセスしないこと

Release Core Foundation Objects

OPT.OBJECTIVEC.ReleaseCoreFoundationObjects

ReleaseCoreFoundationObjects:所有するCore Foundationオブジェクトの所有権の放棄

Release Ivars Dealloc

OPT.OBJECTIVEC.ReleaseIvarsDealloc

ReleaseIvarsDealloc:deallocメソッドで保持/コピーされたプロパティのインスタンス変数(ivar)の解放

Release Owned Objects

OPT.OBJECTIVEC.ReleaseOwnedObjects

ReleaseOwnedObjects:MRRの所有オブジェクトの解放

Sizeof Pointer Instead Array

OPT.OBJECTIVEC.SizeofPointerInsteadArray

SizeofPointerInsteadArray:配列のサイズを取得する際のポインタに対するsizeof演算子の使用禁止

Specify Path For Shadows

OPT.OBJECTIVEC.SpecifyPathForShadows

SpecifyPathForShadows:影の描画時のレイヤーのshadowPathプロパティの指定

Subviews In Standard Controls

OPT.OBJECTIVEC.SubviewsInStandardControls

SubviewsInStandardControls:システムの標準コントロールに対するサブビューの追加禁止

Unstructured Branching Statements

OPT.OBJECTIVEC.UnstructuredBranchingStatements

UnstructuredBranchingStatements:構造化されていない分岐文の回避

Unused Local Var

OPT.OBJECTIVEC.UnusedLocalVar

UnusedLocalVar:未使用のローカル変数の回避

Unused Method Parameter

OPT.OBJECTIVEC.UnusedMethodParameter

UnusedMethodParameter:未使用のメソッドパラメータの回避

Use Automatic Reference Counting

OPT.OBJECTIVEC.UseAutomaticReferenceCounting

UseAutomaticReferenceCounting:ARC規則に従ったコード記述

Use Block Based Animation

OPT.OBJECTIVEC.UseBlockBasedAnimation

UseBlockBasedAnimation:ブロックによるアニメーションの使用

Use Setter For Property

OPT.OBJECTIVEC.UseSetterForProperty

UseSetterForProperty:プロパティ値を設定する場合のsetterメソッドの使用

User Controlled SQL Primary Key

OPT.OBJECTIVEC.SECURITY.UserControlledSQLPrimaryKey

UserControlledSQLPrimaryKey:ユーザ制御の主キーのクエリ使用禁止

Insecure Transport Layer

OPT.OBJECTIVEC.InsecureTransportLayer

InsecureTransportLayer:HTTPSの代わりのHTTPの使用禁止

Hardcoded Ip

OPT.OBJECTIVEC.SECURITY.HardcodedIp

HardcodedIp:ソースコードにおけるIPアドレスの書き込み禁止

Weak Cryptographic Hash

OPT.OBJECTIVEC.WeakCryptographicHash

WeakCryptographicHash:脆弱な暗号化ハッシュのデータの完全性の欠如

Weak Encryption

OPT.OBJECTIVEC.WeakEncryption

WeakEncryption:脆弱な暗号化アルゴリズム

Avoid C GContext Flush

OPT.OBJECTIVEC.AvoidCGContextFlush

AvoidCGContextFlush:CGContextFlushの呼び出しの回避

Avoid Exposing Instance Vars

OPT.OBJECTIVEC.AvoidExposingInstanceVars

AvoidExposingInstanceVars:インスタンス変数を適切に非表示にすることが必要

Avoid Function Like Macros

OPT.OBJECTIVEC.AvoidFunctionLikeMacros

AvoidFunctionLikeMacros:関数形式のようなマクロよりもインライン関数や静的関数を優先

Avoid Locks

OPT.OBJECTIVEC.AvoidLocks

AvoidLocks:ロックの使用の回避

Avoid Single Word Titles In Alerts

OPT.OBJECTIVEC.AvoidSingleWordTitlesInAlerts

AvoidSingleWordTitlesInAlerts:説明的なタイトルの少ない「Alert」要素の回避

Category In Framework Class Name Conventions

OPT.OBJECTIVEC.CategoryInFrameworkClassNameConventions

CategoryInFrameworkClassNameConventions:フレームワークラスにおけるカテゴリーメソッドの命名規則

Dead Code

OPT.OBJECTIVEC.DeadCode

DeadCode:到達不可能なコードの回避

Declare Subviews As Opaque

OPT.OBJECTIVEC.DeclareSubviewsAsOpaque

DeclareSubviewsAsOpaque:不透明(opaque)型としてのサブビューの宣言

Reference From Parent To Child Class

OPT.OBJECTIVEC.ReferenceFromParentToChildClass

ReferenceFromParentToChildClass:子クラスのいずれも参照していない親クラス

Password In Comment Rule

OPT.OBJECTIVEC.SECURITY.PasswordInCommentRule

PasswordInCommentRule:システムまたはシステムコード内に平文でのパスワード/パスワードの詳細の保存を検出(システムのセキュリティを脅かす可能性あり)

Plaintext Storage In A Cookie Rule

OPT.OBJECTIVEC.SECURITY.PlaintextStorageInACookieRule

PlaintextStorageInACookieRule:Cookieでの機密情報の平文保存

Unsafe Cookie

OPT.OBJECTIVEC.SECURITY.UnsafeCookie

UnsafeCookie:適切なセキュリティプロパティを持つサーバ側のCookieの生成

Serialization Injection

OPT.OBJECTIVEC.SECURITY.SerializationInjection

SerializationInjection:信頼できないデータのデシリアライゼーション

Avoid Comparing Float Numbers

OPT.OBJECTIVEC.AvoidComparingFloatNumbers

AvoidComparingFloatNumbers:浮動小数点の比較の回避

Avoid Magic Numbers

OPT.OBJECTIVEC.AvoidMagicNumbers

AvoidMagicNumbers:数値定数の使用の回避

Avoid N S Log

OPT.OBJECTIVEC.AvoidNSLog

AvoidNSLog:デバッグモード以外でのNSLogの使用回避

Avoid Querying State Open G L E S

OPT.OBJECTIVEC.AvoidQueryingStateOpenGLES

AvoidQueryingStateOpenGLES:並列処理を保持するためのglGet*()の呼び出しの回避

Avoid Super In Load View

OPT.OBJECTIVEC.AvoidSuperInLoadView

AvoidSuperInLoadView:loadViewのオーバーライド時のsuperの呼び出しの回避

Avoid Too Deep Class Hierarchies

OPT.OBJECTIVEC.AvoidTooDeepClassHierarchies

AvoidTooDeepClassHierarchies:深すぎる階層クラスの回避

Avoid Unsafe File Functions

OPT.OBJECTIVEC.AvoidUnsafeFileFunctions

AvoidUnsafeFileFunctions:安全なファイルアクセスのPOSIX関数の使用

Background Apps Open G L E S Commands

OPT.OBJECTIVEC.BackgroundAppsOpenGLESCommands

BackgroundAppsOpenGLESCommands:アプリがバックグラウンド時のOpenGL ESコマンド送信の回避

Be Aware Of Location Errors

OPT.OBJECTIVEC.BeAwareOfLocationErrors

BeAwareOfLocationErrors:位置エラーに関する注意

Break Non Empty Switch Clauses

OPT.OBJECTIVEC.BreakNonEmptySwitchClauses

BreakNonEmptySwitchClauses:空でないcase文は区切り文で終わることが必要

Check Parameter Number In Method 

OPT.OBJECTIVEC.CheckParameterNumberInMethod 

CheckParameterNumberInMethod:メソッド内のパラメータの過多

Class Factory Methods Name Convention 

OPT.OBJECTIVEC.ClassFactoryMethodsNameConvention 

ClassFactoryMethodsNameConvention:クラスファクトリーメソッドの命名規則

Copy Immutable Objects 

OPT.OBJECTIVEC.CopyImmutableObjects 

CopyImmutableObjects:変更可能なサブクラスを持つオブジェクトを受け取るプロパティには、常に(コピー)ストレージクラスを使用する

Density Of Comments

OPT.OBJECTIVEC.DensityOfComments

DensityOfComments:ソースコードの適切なコメント化

Font Size

OPT.OBJECTIVEC.FontSize

FontSize:11ポイントより小さいフォントの使用回避

High Coupling Between Objects

OPT.OBJECTIVEC.HighCouplingBetweenObjects

HighCouplingBetweenObjects:内部的に強く結合されたクラスの回避

Maximum Number Of Methods

OPT.OBJECTIVEC.MaximumNumberOfMethods

MaximumNumberOfMethods:インターフェイスやプロトコルに含まれるメソッドの数がしきい値を超えないこと

Misuse Embeding In Scroll View

OPT.OBJECTIVEC.MisuseEmbedingInScrollView

MisuseEmbedingInScrollView:UIWebViewまたはUITableViewでのUIScrollView埋め込みの回避

One Statement Per Line

OPT.OBJECTIVEC.OneStatementPerLine

OneStatementPerLine:1行に1つのステートメントのみを使用

Replace Enum By Ns Enum Or Ns Option

OPT.OBJECTIVEC.ReplaceEnumByNsEnumOrNsOption

ReplaceEnumByNsEnumOrNsOption:enum宣言の置き換え(enum宣言の代わりにNS_ENUMマクロまたはNS_OPTIONSマクロを使用する)

Too Many Buttons In Action Sheet

OPT.OBJECTIVEC.TooManyButtonsInActionSheet

TooManyButtonsInActionSheet:アクションシートにおける多数のボタン定義の回避

Too Many Dots In Page Control

OPT.OBJECTIVEC.TooManyDotsInPageControl

TooManyDotsInPageControl:ページコントロールのビュー数の制限(一度に開いているビューが多すぎないようにする)

Touch Controls Size

OPT.OBJECTIVEC.TouchControlsSize

TouchControlsSize:タッチコントロールのサイズは、少なくとも44 x 44ピクセルであることが必要

Use Instancetype Instead Of Id

OPT.OBJECTIVEC.UseInstancetypeInsteadOfId

UseInstancetypeinsteadOfId:alloc、init、およびクラスファクトリメソッドは、idの代わりにinstancetypeを返すことが必要

Use Modern File A P I

OPT.OBJECTIVEC.UseModernFileAPI

UseModernFileAPI:最新のファイルAPIの使用

Use Nonatomic Attribute

OPT.OBJECTIVEC.UseNonatomicAttribute

UseNonatomicAttribute:プロパティには常に「nonatomic」属性を使用する

Wrap Macro Statements In Do While

OPT.OBJECTIVEC.WrapMacroStatementsInDoWhile

WrapMacroStatementsInDoWhile:複数文のマクロをdo-whileループで囲む

Avoid S M S

OPT.OBJECTIVEC.SECURITY.AvoidSMS

AvoidSMS:SMS関連の操作の回避

Biometric Without Message

OPT.OBJECTIVEC.SECURITY.BiometricWithoutMessage

BiometricWithoutMessage:ユーザ認証を求める理由なしでの、指紋認証の要求

Execution After Redirect

OPT.OBJECTIVEC.SECURITY.ExecutionAfterRedirect

ExecutionAfterRedirect:リダイレクト処理後のコードの実行(EAR)

Missing Content Validation

OPT.OBJECTIVEC.SECURITY.MissingContentValidation

MissingContentValidation:コンテンツ検証の欠落

Potential Infinite Loop

OPT.OBJECTIVEC.SECURITY.PotentialInfiniteLoop

PotentialInfiniteLoop:到達不可能な終了条件を持つルール(無限ループ)

Server Trust Credential Check

OPT.OBJECTIVEC.SECURITY.ServerTrustCredentialCheck

ServerTrustCredentialCheck:サーバ証明書のトラストチェーンの評価

Unchecked Input In Loop Condition

OPT.OBJECTIVEC.SECURITY.UncheckedInputInLoopCondition

UncheckedInputInLoopCondition:ループ条件における未チェックの入力

Cookie Without SSL

OPT.OBJECTIVEC.CookieWithoutSSL

CookieWithoutSSL: セキュリティ属性のないCookie作成の回避

Hardcoded Username Password

OPT.OBJECTIVEC.SECURITY.HardcodedUsernamePassword

HardcodedUsernamePassword:ハードコードされた資格情報の使用

Http Response Caching Leak

OPT.OBJECTIVEC.SECURITY.HttpResponseCachingLeak

HttpResponseCachingLeak:機密性の高いHTTPレスポンスのキャッシュ

Information Exposure Through Error Message

OPT.OBJECTIVEC.SECURITY.InformationExposureThroughErrorMessage

InformationExposureThroughErrorMessage:エラーメッセージによる機密情報の露出の回避

Insecure Temporary File

OPT.OBJECTIVEC.SECURITY.InsecureTemporaryFile

InsecureTemporaryFile:安全ではない一時ファイルの作成と使用(アプリケーションとシステムのデータが攻撃に対して脆弱性になる可能性あり)

Keyboard Caching Leak

OPT.OBJECTIVEC.SECURITY.KeyboardCachingLeak

KeyboardCachingLeak:キーボードキャッシュによる機密データの漏洩

Password In Configuration File

OPT.OBJECTIVEC.SECURITY.PasswordInConfigurationFile

PasswordInConfigurationFile:設定ファイルでの認証情報の使用

Pasteboard Caching Leak

OPT.OBJECTIVEC.SECURITY.PasteboardCachingLeak

PasteboardCachingLeak:ペーストポードのキャッシュメカニズムによる機密データの漏洩

Privacy Violation

OPT.OBJECTIVEC.SECURITY.PrivacyViolation

PrivacyViolation:個人情報の漏洩(プライバシー侵害)

Screen Caching Leak

OPT.OBJECTIVEC.SECURITY.ScreenCachingLeak

ScreenCachingLeak:アプリがバックグランドに移動した時の画面キャッシュメカニズムによる機密データの漏洩

Sensitive Core Data

OPT.OBJECTIVEC.SECURITY.SensitiveCoreData

SensitiveCoreData:CoreDataに格納された機密情報(プライバシー侵害)

Sensitive Data Accessed From Itunes

OPT.OBJECTIVEC.SECURITY.SensitiveDataAccessedFromItunes

SensitiveDataAccessedFromItunes:Itunesからアクセスされる機密情報(プライバシー侵害)

Sensitive No SQL

OPT.OBJECTIVEC.SECURITY.SensitiveNoSQL

SensitiveNoSQL:NoSQLデータベースに格納された機密データ(プライバシーの侵害)

Sensitive SQL

OPT.OBJECTIVEC.SECURITY.SensitiveSQL

SensitiveSQL:SQLデータベースに格納された機密データ(プライバシーの侵害)

Sensitive User Defaults

OPT.OBJECTIVEC.SECURITY.SensitiveUserDefaults

SensitiveUserDefaults:NSUserDefaultsに格納された機密情報(プライバシー侵害)

Serializable Class Containing Sensitive Data

OPT.OBJECTIVEC.SECURITY.SerializableClassContainingSensitiveData

SerializableClassContainingSensitiveData:機密データを含むシリアライズ可能クラスの検出

Third Party Keyboard Allowed

OPT.OBJECTIVEC.SECURITY.ThirdPartyKeyboardAllowed

ThirdPartyKeyboardAllowed:サードパーティのキーボードへの機密データ公開の回避