HTMLのスキャンルール
Contrast Scanでは、HTMLに対して以下のルールをサポートしています。
深刻度 | Contrastルール | エンジンルールID | 説明 |
---|---|---|---|
重大 | Sandbox Allow Scripts And Same Origin | OPT.HTML.SandboxAllowScriptsAndSameOrigin | SandboxAllowScriptsAndSameOrigin:「allow-scripts」と「allow-same-origin」の両方を指定するとsandbox属性が無効 |
重大 | Avoid Long Scripts In Pages | OPT.HTML.FORMATO.AvoidLongScriptsInPages | AvoidLongScriptsInPages:長いJSスクリプトの回避 |
重大 | All HTML pages must be in the /docs folder | OPT.HTML.OPTIMYTH_HTML.DOCS | DOCS:すべてのHTMLページは「/docs」フォルダにあることが必要 |
重大 | Defer In Script Tag | OPT.HTML.OPTIMYTH_HTML.DeferInScriptTag | DeferInScriptTag:スクリプトタグでのDEFER属性の使用 |
重大 | Link To Js | OPT.HTML.OPTIMYTH_HTML.LinkToJs | LinkToJs:多すぎる外部JavaScriptファイルへの参照 |
重大 | Script Tag Position | OPT.HTML.OPTIMYTH_HTML.ScriptTagPosition | ScriptTagPosition:「body」タグ内の「script」タグ |
重大 | Separate Content And Presentation | OPT.HTML.OPTIMYTH_HTML.SeparateContentAndPresentation | SeparateContentAndPresentation:JavaScriptのイベントハンドラのHTMLタグ内での使用禁止 |
重大 | Pages should not exceed 100Kb | OPT.HTML.OPTIMYTH_HTML.TAM | TAM: CAPTIONVALIGNb |
重大 | Missing Password Field Masking | OPT.HTML.MissingPasswordFieldMasking | MissingPasswordFieldMasking:マスクされていないパスワード入力フィールド |
重大 | Password In Http Get | OPT.HTML.PasswordInHttpGet | PasswordInHttpGet:FORMのGETメソッドにパスワードが存在 |
高 | Path Relative Stylesheet Import | OPT.HTML.PathRelativeStylesheetImport | PathRelativeStylesheetImport:相対パスでのスタイルシートのインポート |
高 | Target Blank Vulnerability | OPT.HTML.TargetBlankVulnerability | TargetBlankVulnerability:外部サイトへのリンクの適切ではない無害化 |
情報 | Form Validation Off | OPT.HTML.FormValidationOff | FormValidationOff:フォーム検証(バリデーション)が無効 |
情報 | SIZE attribute required in BASEFONT element | OPT.HTML.FORMATO.BFS | BFS:BASEFONT要素にはSIZE属性が必要 |
情報 | ACTION attribute required | OPT.HTML.FORMULARIOS.ACTN | ACTN:ACTION属性が必要 |
情報 | ALT attribute required | OPT.HTML.FORMULARIOS.ALT2 | ALT2:ALT属性が必要 |
情報 | Wrong TYPE attribute value | OPT.HTML.FORMULARIOS.BTPE | BTPE:間違ったTYPE属性の値 |
情報 | NAME attribute required | OPT.HTML.FORMULARIOS.NAME | NAME:NAME属性が必要 |
情報 | TEXTAREA COLS attribute is required | OPT.HTML.FORMULARIOS.TACO | TACO: TEXTAREA要素にCOLS属性が欠落 |
情報 | TEXTAREA ROWS attribute is required | OPT.HTML.FORMULARIOS.TARO | TARO:ROWS属性のないTEXTAREA要素 |
情報 | VALUE attribute required | OPT.HTML.FORMULARIOS.VALU | VALU:VALUE属性の指定がない |
情報 | HEIGHT and WIDTH attributes required | OPT.HTML.GENERALES.HEWI | HEWI:HEIGHTとWIDTH属性が必要 |
情報 | BLINK element found | OPT.HTML.GENERALES.NOBLINK | NOBLINK:BLINK要素の検出 |
情報 | MARQUEE element found | OPT.HTML.GENERALES.NOMARQUEE | NOMARQUEE:MARQUEE要素の検出 |
情報 | SRC attribute not found | OPT.HTML.GENERALES.SRCC | SRCC:SRC属性が必要 |
情報 | Incorrect TYPE attribute in OL element | OPT.HTML.LISTAS.TYPEOL | TYPEOL:OL要素のTYPE属性が不正 |
情報 | Incorrect TYPE attribute in UL element | OPT.HTML.LISTAS.TYPEUL | TYPEUL:UL要素のTYPE属性が不正 |
情報 | FRAMEBORDER incorrect | OPT.HTML.MARCOS.FRAMEBORDER | FRAMEBORDER:間違ったFRAMEBORDER |
情報 | FRAMESET ROWS or COLS attribute missing | OPT.HTML.MARCOS.FRCR | FRCR:FRAMESET属性が必要 |
情報 | SCROLLING attribute incorrect | OPT.HTML.MARCOS.SCROLLING | SCROLLING:SCROLLING属性の値が不正 |
情報 | No header comment found | OPT.HTML.OPTIMYTH_HTML.CBCR | CBCR:各ページにヘッダコメントを付ける |
情報 | Incorrect VALIGN attribute | OPT.HTML.TABLAS.CAPTIONVALIGN | CAPTIONVALIGN:VALIGN属性が不正 |
情報 | Incorrect CLEAR attribute | OPT.HTML.TEXTO.BRCLEAR | BRCLEAR:CLEAR属性が不正 |
情報 | ALT attribute required | OPT.HTML.VARIOUS.ALT1 | ALT1:ALT属性が必要 |
情報 | ALT attribute required | OPT.HTML.VARIOUS.ALT3 | ALT3:ALT属性が必要 |
情報 | Area Shape | OPT.HTML.VARIOUS.AreaShape | AreaShape:SHAPE属性が不正 |
情報 | AREA cordinates not defined | OPT.HTML.VARIOUS.CAREA | CAREA:AREA要素の座標が未定義 |
情報 | P A R A M VALUE attribute required E T Y P E | OPT.HTML.VARIOUS.PARAMVALUETYPE | paramvaluetype:VALUETYPE属性が間違っているか、指定されていない |
情報 | Incomplete A element | OPT.HTML.VINCULOS.AINCOMPLETO | AINCOMPLETO:不完全なA(アンカー)要素 |
情報 | LINK without title attribute | OPT.HTML.VINCULOS.TLINK | TLINK:TITLE属性のないリンク |
低 | Form Without Captcha | OPT.HTML.FormWithoutCaptcha | FormWithoutCaptcha:CAPTCHAなしのフォーム |
低 | Add Label For Input Field | OPT.HTML.AddLabelForInputField | AddLabelForInputField:すべてのINPUT要素にLABEL要素の追加 |
低 | File Upload Enabled | OPT.HTML.FileUploadEnabled | FileUploadEnabled:ファイルアップロードが有効 |
低 | Nested Divs | OPT.HTML.NestedDivs | NestedDivs:ネストされたDIV要素が多すぎる |
低 | Use descriptive comments | OPT.HTML.OPTIMYTH_HTML.CMNT | CMNT:ページ内にコメントでの説明を付ける |
低 | No Javascript | OPT.HTML.OPTIMYTH_HTML.NoJavascript | NoJavascript:HTMLファイル内のJavascriptコード |
中 | Specify Integrity Attribute | OPT.HTML.SpecifyIntegrityAttribute | SpecifyIntegrityAttribute:SCRIPT要素とLINK要素にはINTEGRITY属性の設定が必要 |
中 | Avoid Inline Styles | OPT.HTML.AvoidInlineStyles | AvoidInlineStyles: インラインスタイルの宣言の回避 |
中 | Avoid Size Attribute On Input Fields | OPT.HTML.AvoidSizeAttributeOnInputFields | AvoidSizeAttributeOnInputFields:入力フィールドのSIZE属性の回避 |
中 | Embed Youtube Videos Using Iframe | OPT.HTML.EmbedYoutubeVideosUsingIframe | EmbedYoutubeVideosUsingIframe:iFrameにYoutube動画の埋め込み |
中 | Obsolete Attributes | OPT.HTML.ObsoleteAttributes | ObsoleteAttributes:HTML5で廃止された属性の回避 |
中 | Obsolete Elements | OPT.HTML.ObsoleteElements | ObsoleteElements:HTML5で廃止された要素の回避 |
中 | Use external CSS files | OPT.HTML.OPTIMYTH_HTML.EUCSS | EUCSS:HTMLページにおけるCSSスタイルシートの使用制限 |
中 | Noscript Tag | OPT.HTML.OPTIMYTH_HTML.NoscriptTag | NoscriptTag:「noscript」タグの使用 |
中 | Provide Fallbacks For Multimedia Elements | OPT.HTML.ProvideFallbacksForMultimediaElements | ProvideFallbacksForMultimediaElements:マルチメディア要素が使用できない場合の代替を考慮 |
中 | Scripts At The Bottom | OPT.HTML.ScriptsAtTheBottom | ScriptsAtTheBottom:スクリプトをHTML本体の一番下に置く |
中 | Specify Character Encoding | OPT.HTML.SpecifyCharacterEncoding | SpecifyCharacterEncoding:使用する文字エンコーディングの指定 |
中 | Specify Lang Attribute | OPT.HTML.SpecifyLangAttribute | SpecifyLangAttribute:ルートの「<html>」にLANG属性の指定 |
中 | Stylesheets At The Top | OPT.HTML.StylesheetsAtTheTop | StylesheetsAtTheTop:HTML本体内でのスタイルのインポートの回避 |
中 | Use Doc Type | OPT.HTML.UseDocType | UseDocType:常にDOCTYPE宣言を含める |
中 | Use Link For C S S Resources | OPT.HTML.UseLinkForCSSResources | UseLinkForCSSResources:CSSリソースに対する「@import」の使用の回避 |
中 | Use S E O Relevant Meta Tags | OPT.HTML.UseSEORelevantMetaTags | UseSEORelevantMetaTags:検索エンジンに関連するHTMLメタタグの使用 |
中 | Should Use Content Security Policy | OPT.HTML.CORDOVA.ShouldUseContentSecurityPolicy | ShouldUseContentSecurityPolicy:すべてのページにCSP(コンテンツセキュリティポリシー)の追加 |
中 | Autocomplete On For Sensitive Fields | OPT.HTML.AutocompleteOnForSensitiveFields | AutocompleteOnForSensitiveFields:機密性の高いフォームフィールドに対してオートコンプリートが有効 |