JP5421950B2 - Page change judgment device - Google Patents

Page change judgment device Download PDF

Info

Publication number
JP5421950B2
JP5421950B2 JP2011074077A JP2011074077A JP5421950B2 JP 5421950 B2 JP5421950 B2 JP 5421950B2 JP 2011074077 A JP2011074077 A JP 2011074077A JP 2011074077 A JP2011074077 A JP 2011074077A JP 5421950 B2 JP5421950 B2 JP 5421950B2
Authority
JP
Japan
Prior art keywords
hierarchical structure
login
target page
tags
determination
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2011074077A
Other languages
Japanese (ja)
Other versions
JP2012208743A (en
Inventor
真太郎 上田
友浩 谷口
崇宏 徳江
正志 田畑
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Kyocera Communication Systems Co Ltd
Original Assignee
Kyocera Communication Systems Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Kyocera Communication Systems Co Ltd filed Critical Kyocera Communication Systems Co Ltd
Priority to JP2011074077A priority Critical patent/JP5421950B2/en
Publication of JP2012208743A publication Critical patent/JP2012208743A/en
Application granted granted Critical
Publication of JP5421950B2 publication Critical patent/JP5421950B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

この発明は、対象となるページの注目すべき変化を容易に検出することができる装置に関するものである。   The present invention relates to an apparatus that can easily detect a noticeable change in a target page.

ウエブサイトへの攻撃に対する脆弱性を検査するためのプログラムが開発されている(たとえば、特許文献1)。しかし、攻撃の一つであるCSRF(クロスサイト・リクエスト・フォージェリ)に対する脆弱性を判定するためのプログラムは実用化されていない。   A program for inspecting vulnerability to attacks on a website has been developed (for example, Patent Document 1). However, a program for determining vulnerability to CSRF (cross-site request forgery), which is one of attacks, has not been put into practical use.

ウエブサイトに対する攻撃の一つにCSRF(クロスサイト・リクエスト・フォージェリ)がある。図1に、CSRFの概要を説明する。   One of the attacks against websites is CSRF (Cross Site Request Forgery). FIG. 1 explains the outline of CSRF.

CSRFを行う悪意のある攻撃者は、攻撃者端末装置Cからサーバ装置SのSNSにアクセスし、Bさんの掲示板Bのリンクに仕掛けを行う。ユーザがユーザ端末装置A1から、自らの掲示板を含むSNSにログインする。次に、ユーザが、Bさんの掲示板Bにアクセスして閲覧する。続いて、攻撃者が仕掛けを行った掲示板B中のリンクを、ユーザがクリックすると仕掛けプログラムが動作する。仕掛けプログラムは、ユーザ端末装置A1がログインしていることを利用して、ユーザ端末装置A1からのリクエストであるかのようにして、悪意のあるリクエストをSNSに送信する。たとえば、ユーザの掲示板Aの設定を変更(非公開を公開に変更など)する。   A malicious attacker who performs CSRF accesses the SNS of the server device S from the attacker terminal device C, and sets a link on the bulletin board B of Mr. B. The user logs in to the SNS including his / her bulletin board from the user terminal device A1. Next, the user accesses and browses B's bulletin board B. Subsequently, when the user clicks a link in the bulletin board B on which the attacker has set a device, the device program is activated. Using the fact that the user terminal device A1 is logged in, the device program transmits a malicious request to the SNS as if it was a request from the user terminal device A1. For example, the setting of the user's bulletin board A is changed (such as changing private to public).

上記のように、CSRFによる攻撃に対する脆弱性のあるウエブサイトは、ユーザが意図していない設定変更などがなされてしまうおそれがある。   As described above, websites that are vulnerable to attacks by CSRF may be subject to configuration changes that are not intended by the user.

このようなウエブ脆弱性をチェックするためのソフトウエアが開発されている。ウエブサイトに対してCSRFによる攻撃を仕掛け、当該ウエブサイトがCSFRによる攻撃に耐えることができるかどうかを判断するものである。   Software for checking such web vulnerabilities has been developed. A CSRF attack is performed on the website, and it is determined whether or not the website can withstand the CSFR attack.

CSRFに対する脆弱性をチェックするためには、チェックのためのユーザ端末装置がサーバ装置に対してログイン状態になっていなければならない。つまり、ログイン状態か否かを正確に判定することが前提となる。   In order to check the vulnerability to CSRF, the user terminal device for checking must be logged in to the server device. That is, it is assumed that it is accurately determined whether or not the user is in the login state.

従来、次のような処理によって、ログインの有無を自動的に判定するようにしている。まず、ログイン前の対象ページ(ログインをするためのページ)と、ログイン後の対象ページを取得する。ログイン後の対象ページのうち、ログイン前の対象ページと一致している部分のデータと、異なる部分のデータのバイト数を算出し、これを記録しておく。実際に、ログインの有無を判定する場合には、ログインを行い対象ページを取得する。取得した対象ページから、予め記録している一致部分を削除し、残った部分のデータのバイト数を算出する。このバイト数が、予め記録されているバイト数と同じであれば、ログインできていると判断する。   Conventionally, the presence or absence of login is automatically determined by the following processing. First, a target page before login (a page for logging in) and a target page after login are acquired. Of the target page after login, the number of bytes of data corresponding to the target page before login and the data of a different part are calculated and recorded. Actually, when the presence / absence of login is determined, login is performed and the target page is acquired. The previously recorded matching portion is deleted from the acquired target page, and the number of bytes of data of the remaining portion is calculated. If the number of bytes is the same as the number of bytes recorded in advance, it is determined that login has been completed.

特開2005−250945JP-A-2005-250945

しかしながら、上記のような従来技術では、ログインした画面中に、時刻表示やアクセスするごと(所定時間ごと)に異なる内容となる広告表示等が含まれている場合には、ログイン状態となっていてもバイト数が同じにならない場合が多く、ログインの有無を正確に判断できないという問題があった。   However, in the conventional technology as described above, if the logged-in screen includes a time display or an advertisement display or the like that is different every time access is performed (every predetermined time), the login state is set. However, there are many cases where the number of bytes is not the same, and there is a problem that it is impossible to accurately determine whether or not there is a login.

また、上記のようなログインの有無判定だけでなく、ページの改竄判定などにおいても、検出すべき変化のみに注目して迅速な判断を実行したいという要請がある。   In addition to the above-described login presence / absence determination, there is a request to execute a quick determination by paying attention only to a change to be detected in a page tampering determination or the like.

この発明は上記のような問題点を解決して、検出すべき変化に注目して迅速な判断をすることのできるログイン判定装置やページ変化判定装置を提供することを目的とする。   SUMMARY OF THE INVENTION An object of the present invention is to provide a login determination device and a page change determination device that can solve the above problems and make a quick determination by paying attention to a change to be detected.

(1)この発明に係るログイン判定装置は、ログイン後またはログイン前であることが判明している対象ページを構成するタグの階層構造を参照階層構造として記録した参照階層構造記録部と、判定対象である対象ページを取得する対象ページ取得手段と、取得した対象ページを構成するタグの階層構造を解析して解析階層構造を得る階層構造解析手段と、前記解析階層構造と、参照階層構造記録部に記録されている参照階層構造を比較して、階層構造の異なる部分を抽出する抽出手段と、前記解析階層構造の異なる部分に対応する部分に、所定のキーワードが含まれるか否かによって、前記取得した対象ページがログイン後のものであるかログイン前のものであるかを判断するログイン判断手段とを備えている。 (1) A login determination apparatus according to the present invention includes a reference hierarchical structure recording unit that records, as a reference hierarchical structure, a hierarchical structure of tags constituting a target page that is known to be after login or before login, and a determination target Target page acquisition means for acquiring the target page, hierarchical structure analysis means for obtaining the analysis hierarchical structure by analyzing the hierarchical structure of the tags constituting the acquired target page, the analysis hierarchical structure, and the reference hierarchical structure recording unit The reference hierarchical structure recorded in the above, the extraction means for extracting different parts of the hierarchical structure, and whether or not a predetermined keyword is included in the part corresponding to the different part of the analysis hierarchical structure, Login determination means for determining whether the acquired target page is after login or before login.

したがって、正確にしかも迅速にログインの有無を判定することができる。   Therefore, the presence / absence of login can be determined accurately and quickly.

(2)この発明に係るログイン判定プログラムは、ログイン後またはログイン前であることが判明している対象ページを構成するタグの階層構造を参照階層構造として記録した参照階層構造記録部にアクセス可能なコンピュータを用いたログイン判定プログラムであって、前記ログイン判定プログラムは、コンピュータを、判定対象である対象ページを取得する対象ページ取得手段と、取得した対象ページを構成するタグの階層構造を解析して解析階層構造を得る階層構造解析手段と、前記解析階層構造と、参照階層構造記録部に記録されている参照階層構造を比較して、階層構造の異なる部分を抽出する抽出手段と、前記解析階層構造の異なる部分に対応する部分に、所定のキーワードが含まれるか否かによって、前記取得した対象ページがログイン後のものであるかログイン前のものであるかを判断するログイン判断手段として機能させるためのログイン判定プログラムである。 (2) The login determination program according to the present invention is accessible to a reference hierarchical structure recording unit that records a hierarchical structure of tags constituting a target page that is known to be after login or before login as a reference hierarchical structure. A login determination program using a computer, wherein the login determination program analyzes a hierarchical structure of target page acquisition means for acquiring a target page as a determination target and a tag constituting the acquired target page. A hierarchical structure analyzing means for obtaining an analytical hierarchical structure; an extracting means for comparing the analytical hierarchical structure with a reference hierarchical structure recorded in a reference hierarchical structure recording unit to extract a different part of the hierarchical structure; and the analytical hierarchy Depending on whether a predetermined keyword is included in a part corresponding to a part having a different structure, the acquired target page is It is a login determination program for functioning as a login determining means for determining the or those wherein either logged out later ones in.

したがって、正確にしかも迅速にログインの有無を判定することができる。   Therefore, the presence / absence of login can be determined accurately and quickly.

(3)この発明に係るログイン判定プログラムは、前記対象ページはHTML言語にて記載されており、前記階層構造解析手段は、取得した対象ページのHTMLタグのネスティング状態に応じて、階層構造の解析を行うことを特徴としている。 (3) In the login determination program according to the present invention, the target page is described in the HTML language, and the hierarchical structure analyzing means analyzes the hierarchical structure according to the nesting state of the HTML tag of the acquired target page. It is characterized by performing.

したがって、HTMLタグに基づいて階層構造の解析を行うことができる。   Therefore, the hierarchical structure can be analyzed based on the HTML tag.

(4)この発明に係るログイン判定プログラムは、前記階層構造解析手段は、HTMLタグの各階層に含まれる各種類のタグの数を階層構造として解析し、前記抽出手段は、前記構造記録部に記録された対象ページを構成するタグの各階層に含まれる各種類のタグの数と、前記階層構造解析手段によって解析された対象ページを構成するタグの各階層に含まれる各種類のタグの数とを比較し、対応するタグの数が異なる部分を階層構造の異なる部分として抽出することを特徴としている。 (4) In the login determination program according to the present invention, the hierarchical structure analyzing means analyzes the number of tags of each type included in each level of the HTML tag as a hierarchical structure, and the extracting means is stored in the structure recording unit. The number of tags of each type included in each level of tags constituting the recorded target page and the number of tags of each type included in each level of tags constituting the target page analyzed by the hierarchical structure analyzing means And a portion having a different number of corresponding tags is extracted as a portion having a different hierarchical structure.

したがって、階層構造に変化のあった部分のみを対象として内容判断を行うことができるので、判定が迅速であり正確である。   Therefore, content determination can be performed only for a portion where the hierarchical structure has changed, so that determination is quick and accurate.

(5)この発明に係るページ変化検出装置は、第1の対象ページを構成するタグの階層構造と、第2の対象ページを構成するタグの階層構造を比較して、階層構造の異なる部分を抽出する抽出手段と、第1の対象ページまたは第2の対象ページを構成するタグの前記階層構造の異なる部分に対応する部分に基づいて、第1の対象ページと第2の対象ページの変化内容を決定する変化内容決定手段とを備えている。 (5) The page change detection apparatus according to the present invention compares the hierarchical structure of the tags constituting the first target page with the hierarchical structure of the tags constituting the second target page, and compares portions having different hierarchical structures. Based on a part corresponding to a different part of the hierarchical structure of the extraction means to be extracted and the tag constituting the first target page or the second target page, the change contents of the first target page and the second target page Change content determining means for determining.

したがって、階層構造に変化のあった部分のみを対象として比較を行うことができるので、判定が迅速であり正確である。   Therefore, since the comparison can be performed only for the portion where the hierarchical structure has changed, the determination is quick and accurate.

「対象ページ取得手段」は、実施形態においては、ステップS4がこれに対応する。   In the embodiment, “target page acquisition unit” corresponds to step S4.

「階層構造解析手段」は、実施形態においては、ステップS5がこれに対応する。   In the embodiment, “hierarchical structure analyzing means” corresponds to step S5.

「抽出手段」は、実施形態においては、ステップS6がこれに対応する。   In the embodiment, “extraction means” corresponds to step S6.

「ログイン判断手段」は、実施形態においては、ステップS7、S8およびS9がこれに対応する。   In the embodiment, the “login determination unit” corresponds to steps S7, S8, and S9.

「ページ」とは、タグによる階層構造を持つ言語の一表示単位などの、スクロールを含め、ひとまとまりとして表示される一表示単位を含む概念である。   “Page” is a concept including one display unit that is displayed as a unit, including scrolling, such as one display unit of a language having a hierarchical structure by tags.

「プログラム」とは、CPUにより直接実行可能なプログラムだけでなく、ソース形式のプログラム、圧縮処理がされたプログラム、暗号化されたプログラム等を含む概念である。   The “program” is a concept that includes not only a program that can be directly executed by the CPU, but also a source format program, a compressed program, an encrypted program, and the like.

クロスサイト・リクエスト・フォージェリの概要を説明するための図である。It is a figure for demonstrating the outline | summary of cross-site request forgery. この発明の一実施形態によるログイン判定装置の機能ブロック図である。It is a functional block diagram of the login determination apparatus by one Embodiment of this invention. ログイン判定装置としての診断サーバ装置14と、ユーザ端末装置12、診断対象サーバ装置16との関係を示す図である。It is a figure which shows the relationship between the diagnostic server apparatus 14 as a login determination apparatus, the user terminal device 12, and the diagnostic object server apparatus 16. FIG. 診断サーバ装置14のハードウエア構成である。It is a hardware configuration of the diagnostic server device 14. ログインのための画面を示す図である。It is a figure which shows the screen for login. 図5の画面のHTMLデータである。It is HTML data of the screen of FIG. 図6のHTMLデータの階層構造である。It is the hierarchical structure of the HTML data of FIG. ログイン判定プログラムのフローチャートである。It is a flowchart of a login determination program. ログイン後の画面を示す図である。It is a figure which shows the screen after login. 図9の画面のHTMLデータである。It is HTML data of the screen of FIG. 図10のHTMLデータの階層構造である。It is the hierarchical structure of the HTML data of FIG. 差異フラグテーブルを示す図である。It is a figure which shows a difference flag table.

1.機能ブロック図
図2に、この発明の一実施形態によるログイン判定装置の機能ブロック図を示す。参照階層構造記録部4には、ログイン前であることが判明しているログインのためのページの参照階層構造が、予め記録されている。判定を行う際には、対象ページ取得手段2は、IDやパスワードなどを送信してログインの要求を行って対象ページを取得する。階層構造解析手段6は、取得した対象ページの階層構造を解析する。抽出手段8は、記録されている参照階層構造と、対象ページの階層構造とを比較し、異なる部分を特定する。階層構造の異なる部分に対応する対象ページの内容を抽出する。ログイン判断手段10は、対象ページから抽出した内容中に、所定のキーワード(たとえば、ログイン前の画面に表示されている「ログイン」などのキーワード)が含まれているかどうかに基づいて、ログイン状況を判断する。以上のようにして、対象ページに対するログインの有無を判定することができる。
1. Functional Block Diagram FIG. 2 shows a functional block diagram of a login determination device according to one embodiment of the present invention. The reference hierarchical structure recording unit 4 records in advance a reference hierarchical structure of a page for login that is known to be before login. When making the determination, the target page acquisition unit 2 transmits an ID, a password, and the like to make a login request and acquires the target page. The hierarchical structure analyzing means 6 analyzes the hierarchical structure of the acquired target page. The extracting unit 8 compares the recorded reference hierarchical structure with the hierarchical structure of the target page, and specifies a different part. The contents of the target page corresponding to different parts of the hierarchical structure are extracted. The login determination means 10 determines the login status based on whether or not a predetermined keyword (for example, a keyword such as “login” displayed on the screen before login) is included in the content extracted from the target page. to decide. As described above, it is possible to determine whether or not there is a login for the target page.

2.ハードウエア構成
図3に、この発明の一実施形態によるログイン判定装置としての診断サーバ装置14の接続状況を示す。診断サーバ装置14は、ユーザ端末装置12からの指令を受けて、診断対象サーバ装置16にアクセスしその脆弱性診断を行う。診断対象サーバ装置16は、脆弱性診断の結果をユーザ端末装置12に送信する。
2. Hardware Configuration FIG. 3 shows the connection status of the diagnostic server device 14 as a login determination device according to an embodiment of the present invention. The diagnosis server device 14 receives a command from the user terminal device 12 and accesses the diagnosis target server device 16 to perform vulnerability diagnosis thereof. The diagnosis target server device 16 transmits the vulnerability diagnosis result to the user terminal device 12.

図4に、診断サーバ装置14のハードウエア構成を示す。CPU20には、メモリ22、ハードディスク24、CD−ROMドライブ26、通信回路28が接続されている。通信回路28は、インターネットなどを介して、診断対象サーバ装置16やユーザ端末装置12と通信を行うための回路である。   FIG. 4 shows a hardware configuration of the diagnostic server device 14. A memory 22, a hard disk 24, a CD-ROM drive 26, and a communication circuit 28 are connected to the CPU 20. The communication circuit 28 is a circuit for communicating with the diagnosis target server device 16 and the user terminal device 12 via the Internet or the like.

ハードディスク24には、WINDOWS(商標)などのオペレーティングシステム32、ログイン判定プログラム34、参照HTML階層構造36、キーワード38が記録されている。OS32、ログイン判定プログラム34は、CD−ROM30に記録されていたものを、CD−ROMドライブ26を介してハードディスク24にインストールしたものである。なお、ログイン判定プログラム34は、OS32と協働してその機能を発揮する。   On the hard disk 24, an operating system 32 such as WINDOWS (trademark), a login determination program 34, a reference HTML hierarchical structure 36, and a keyword 38 are recorded. The OS 32 and the login determination program 34 are installed on the hard disk 24 via the CD-ROM drive 26 as recorded on the CD-ROM 30. The login determination program 34 performs its function in cooperation with the OS 32.

参照HTML階層構造36は、ログイン判定を行うページのログイン前のHTML階層構造を解析して予め記録したものである。たとえば、図5に示すようなログインのためのページ(ログイン前のページ)のHTMLデータが図6に示すものであったとする。このページの参照HTML階層構造は、図7に示すようなものとなる。   The reference HTML hierarchical structure 36 is obtained by analyzing and recording in advance an HTML hierarchical structure before login of a page for performing login determination. For example, assume that the HTML data of the login page (the page before login) as shown in FIG. 5 is as shown in FIG. The reference HTML hierarchical structure of this page is as shown in FIG.

つまり、図6において、<html>タグとこれに対応する</html>タグによって囲まれる部分(2行目から43行目まで)が、最も上位の階層(階層0)である。この階層のレベルには、<html>タグ</html>タグが1つ存在するので、図7の階層0のタグ種類<html>には、1が記録されている。   That is, in FIG. 6, the portion surrounded by the <html> tag and the corresponding </ html> tag (from the second line to the 43rd line) is the highest hierarchy (hierarchy 0). Since there is one <html> tag </ html> tag at the level of this hierarchy, 1 is recorded in the tag type <html> of hierarchy 0 in FIG.

<html>タグ</html>タグによって囲まれた部分(2行目から43行目まで)の中には、<head></head>および<body></body>が次の階層として含まれている。したがって、図7の階層1のタグ種類<head><body>には、それぞれ1が記録されている。   <head> </ head> and <body> </ body> are included as the next layer in the part surrounded by <html> tag </ html> tags (from the second line to the 43rd line) It is. Therefore, 1 is recorded in each tag type <head> <body> of the hierarchy 1 in FIG.

<head></head>および<body></body>によって囲まれた部分(3行目から5行目まで、6行目から42行目まで)の中には、<title></title>、<center></center>、<br>、<table></table>が次の階層として含まれている。なお、<br>は他のタグと異なり、対応する</br>が存在しないので、この実施形態では、<br>の直後に</br>があるものとして階層を判断するようにしている。たとえば、図6において、10行目の<br>は、第2階層である<center>や<table>と同じ第2階層であると判断することができる。なお、<br>以外にも<input>など対応する</input>が存在しないタグについても同様の処理を行う。   In the part surrounded by <head> </ head> and <body> </ body> (3rd to 5th line, 6th to 42nd line), <title> </ title >, <Center> </ center>, <br>, <table> </ table> are included as the next layer. Note that <br> is different from other tags, and there is no corresponding </br>. In this embodiment, the hierarchy is determined as if there is </br> immediately after <br>. . For example, in FIG. 6, it can be determined that <br> in the 10th row is the same second hierarchy as <center> and <table> which are the second hierarchy. The same processing is performed for tags that do not have a corresponding </ input> such as <input> other than <br>.

以上のようにして、図7の階層2のタグ種類<center>、<br>、<table>には、それぞれ1が記録される。   As described above, 1 is recorded in each of the tag types <center>, <br>, and <table> in the hierarchy 2 in FIG.

なお、当該階層に2以上同じタグが存在する場合には、その数字が図7に記録されていることになる。たとえば、図7において、階層4のタグ種類<td>には2が記録されているので、この階層には<td>が2つ存在することがわかる。   When two or more same tags exist in the hierarchy, the numbers are recorded in FIG. For example, in FIG. 7, since 2 is recorded in the tag type <td> of the hierarchy 4, it can be seen that there are two <td> in this hierarchy.

前述のように、ハードディスク24には、キーワード38も記録されている。この実施形態は、キーワード38としてログイン後の画面に現れる特有の用語(たとえば「ようこそ」「ログアウト」)を記録するようにしている。   As described above, the keyword 38 is also recorded on the hard disk 24. In this embodiment, a unique term (for example, “Welcome” or “Logout”) that appears on the screen after login is recorded as the keyword 38.

3.ログイン判定処理
図8に、ログイン判定プログラム34のフローチャートを示す。まず、CPU20は、ユーザ端末装置12からの指令を受信する(ステップS1)。ユーザ端末装置12からの指令には、診断対象サイトのURLやログインのためのユーザID、パスワードなどが含まれている。なお、ユーザ端末装置12からの指令を複数記録しておき、まとめて処理を行うようにしてもよい。
3. Login Determination Processing FIG. 8 shows a flowchart of the login determination program 34. First, the CPU 20 receives a command from the user terminal device 12 (step S1). The command from the user terminal device 12 includes a URL of a diagnosis target site, a user ID for login, a password, and the like. Note that a plurality of commands from the user terminal device 12 may be recorded, and processing may be performed collectively.

次に、CPU20は、通信回路28を制御し、指令に含まれるURLに基づいて診断対象サイト(診断対象サーバ装置16)にアクセスする(ステップS2)。これにより、診断対象サイトから図5に示すようなログイン画面が送信される。これに対応して、CPU20は、ユーザIDおよびパスワードを診断対象サイトに送信する(ステップS3)。   Next, the CPU 20 controls the communication circuit 28 and accesses the diagnosis target site (diagnosis target server device 16) based on the URL included in the command (step S2). Thereby, a login screen as shown in FIG. 5 is transmitted from the diagnosis target site. In response to this, the CPU 20 transmits the user ID and password to the diagnosis target site (step S3).

CPU20は、診断サイトからのレスポンス(HTMLデータ)を受信し、ハードディスク24に記録する(ステップS4)。ログインが上手くできていれば、図9に示すようなログイン後の画面を表示するためのHTMLデータが返信されてくるはずである。図9の画面に対応するHTMLデータを図10に示す。   The CPU 20 receives the response (HTML data) from the diagnostic site and records it on the hard disk 24 (step S4). If the login is successful, HTML data for displaying the screen after login as shown in FIG. 9 should be returned. FIG. 10 shows HTML data corresponding to the screen of FIG.

CPU20は、ハードディスク24に記録したHTMLデータの階層構造を解析する(ステップS5)。解析して得られたHTML階層構造は、図11に示すとおりである。   The CPU 20 analyzes the hierarchical structure of the HTML data recorded on the hard disk 24 (step S5). The HTML hierarchical structure obtained by the analysis is as shown in FIG.

続いて、CPU20は、ハードディスク24に記録されている参照HTML階層構造(図7)と、レスポンスを解析して得られたHTML階層構造(図11)とを比較し、その差異部分を抽出する(ステップS6)。図12に、差異部分抽出のために生成された差異フラグテーブルを示す。CPU20は、図7の参照HTML階層構造36と、図11のHTML階層構造とを比較し、同一の部分を「0」、異なる部分を「1」として、差異フラグテーブルを生成する。   Subsequently, the CPU 20 compares the reference HTML hierarchical structure (FIG. 7) recorded on the hard disk 24 with the HTML hierarchical structure (FIG. 11) obtained by analyzing the response, and extracts the difference ( Step S6). FIG. 12 shows a difference flag table generated for extracting the difference portion. The CPU 20 compares the reference HTML hierarchical structure 36 of FIG. 7 with the HTML hierarchical structure of FIG. 11, and sets the same part as “0” and the different part as “1” to generate a difference flag table.

図7の参照HTML階層構造36と、図11のHTML階層構造は、階層5の<form>と階層6の<br><input>における値が異なっており、あとは同一である。したがって、図12に示すような差異フラグテーブルが生成されることになる。   The reference HTML hierarchical structure 36 in FIG. 7 and the HTML hierarchical structure in FIG. 11 have the same values in the <form> of the hierarchy 5 and the <br> <input> of the hierarchy 6, and the rest. Therefore, a difference flag table as shown in FIG. 12 is generated.

次に、CPU20は、レスポンスの差異部分に対応する部分を特定する。ここでは、階層5の<form>と階層6の<br><input>が差異部分であるから、図10のレスポンス中のこれに対応する部分の内容を取り出す。階層5の<form>に対応するのは14行目から16行目であり、階層6の<input>に対応するのは15行目である。また、階層6の<br>には対応する</br>がないため、その内容部分はないものとして扱う。したがって、以下に示すように14行目から16行目が取り出されることになる。
<form action="logout.php" method="post">
<input type="submit" value="ログアウト">
</form>
Next, the CPU 20 specifies a part corresponding to the difference part of the response. Here, since <form> of hierarchy 5 and <br><input> of hierarchy 6 are different parts, the contents of the corresponding part in the response of FIG. 10 are extracted. The 14th to 16th lines correspond to the <form> of the hierarchy 5, and the 15th line corresponds to the <input> of the hierarchy 6. Also, since there is no corresponding </br> in layer 6, it is treated as having no content portion. Accordingly, the 14th to 16th lines are extracted as shown below.
<form action = "logout.php" method = "post">
<input type = "submit" value = "logout">
</ form>

CPU20は、取り出した内容中に、ハードディスク24に記録されているキーワード38に合致するものがあるかどうかを判断する(ステップS7)。この実施形態では、キーワード38として、「ようこそ」「ログアウト」を記録している。ここでは、取り出した内容中に「ログアウト」が含まれている。したがって、CPU20は「ログイン有」と判断する(ステップS8)。   The CPU 20 determines whether any of the extracted contents matches the keyword 38 recorded on the hard disk 24 (step S7). In this embodiment, “Welcome” and “Logout” are recorded as the keywords 38. Here, “logout” is included in the extracted contents. Therefore, the CPU 20 determines that “login is present” (step S8).

また、正しくログインできていないレスポンスの場合には、図10のようなデータとはならず、「正しいユーザID、パスワードを入力してください」などのメッセージが追加された画面となる。この場合には、取り出した内容中にキーワード38が含まれない。CPU20は、キーワード38が含まれなければ、ログイン無と判断する(ステップS9)。   Further, in the case of a response that is not correctly logged in, the screen does not have the data as shown in FIG. 10, but a screen to which a message such as “Please enter the correct user ID and password” is added. In this case, the keyword 38 is not included in the extracted content. If the keyword 38 is not included, the CPU 20 determines that there is no login (step S9).

上記のようにして、ログインの有無を判定することができる。なお、この実施形態では、HTML階層構造を比較して差異部分を抽出するようにしている。アクセスごとに、あるいは所定時間ごとに変化する広告部分や時計表示部分などは、表示内容は変化するもののHTML構造は、そのままである場合がほとんどである。したがって、この実施形態によれば、このような変化は無視し、目的とする変化が起こる可能性のある部分を取り出して判定を行うことができ、処理が迅速である。   As described above, the presence / absence of login can be determined. In this embodiment, a difference portion is extracted by comparing HTML hierarchical structures. In most cases, the advertisement structure or the clock display part that changes at every access or every predetermined time changes the display content, but the HTML structure remains unchanged. Therefore, according to this embodiment, such a change can be ignored, and a determination can be made by extracting a portion where the target change may occur, and the processing is quick.

このようにログインの有無を判定した後、CSRFに対する脆弱性判定を行う。   Thus, after determining the presence or absence of login, vulnerability determination with respect to CSRF is performed.

4.その他の実施形態
(1)上記実施形態では、CSRFに対する脆弱性判定の前提としてのログイン判定について説明した。しかし、ログイン有無の判定一般に適用することができる。
4). Other embodiments
(1) In the above embodiment, the login determination as a premise of vulnerability determination for CSRF has been described. However, the present invention can be applied to the general determination of whether or not there is a login.

(2)上記実施形態では、参照HTML階層構造36としてログイン前のHTMLデータの階層構造を記録している。しかし、参照HTML階層構造36としてログイン後のHTMLデータの階層構造を記録しておくようにしてもよい。この場合、レスポンスのHTMLデータの階層構造と参照HTML階層構造36を比較して異なる部分を抽出し、これに対応するレスポンスのHTMLデータの部分に、ログイン用の画面に特有のキーワード(たとえば、「ログイン」「新規登録」など)があれば、正しくログインがなされていないと判断する。 (2) In the above embodiment, the hierarchical structure of HTML data before login is recorded as the reference HTML hierarchical structure 36. However, the hierarchical structure of HTML data after login may be recorded as the reference HTML hierarchical structure 36. In this case, the hierarchical structure of the response HTML data and the reference HTML hierarchical structure 36 are compared to extract a different portion, and a keyword specific to the login screen (for example, “ If there is “login”, “new registration”, etc., it is determined that the login has not been made correctly.

(3)上記実施形態では、ログインの有無を判定するようにしている。しかし、比較すべき2つのページについて、アクセスごとにあるいは所定時間ごとに変化する広告部分や時計表示部分などの変化は無視し、注目すべき変化部分を検出するために用いることもできる。 (3) In the above embodiment, the presence / absence of login is determined. However, for two pages to be compared, changes such as an advertisement part and a clock display part that change at every access or every predetermined time can be ignored and used to detect a noticeable change part.

また、差異フラグテーブルに基づいて、両ページの類似度(差異度)を判断することもできる。差異フラグテーブルにおける「1」を全て見いだし、各「1」から右向きに最終階層のマスまでの矩形を描く。これら矩形の面積の和が大きいほど、両ページの類似度は低いと判断する。これは、階層が高い部分が異なるほど差異が大きいと考えられるからである。   Also, the similarity (difference) between both pages can be determined based on the difference flag table. All the “1” s in the difference flag table are found, and a rectangle from each “1” to the square of the final hierarchy is drawn to the right. The larger the sum of the rectangular areas, the lower the similarity between the two pages. This is because the difference is considered to be larger as the higher part of the hierarchy is different.

たとえば、図12に示す差異フラグテーブルでは、階層5のタグ種類<form>の「1」から最終階層までの矩形の面積(2マス)と、階層6のタグ種類<br><input>の「1」から最終階層までの矩形の面積(それぞれ、1マス)を合計した面積(4マス)となる。   For example, in the difference flag table shown in FIG. 12, the rectangular area (2 squares) from the tag type <form> “1” of the layer 5 to the last layer and the tag type <br> <input> of the layer 6 The total area (4 squares) is the sum of the rectangular areas (1 square each) from “1” to the last layer.

(4)上記実施形態では、HTMLデータを例として説明したが、他の階層構造を有する言語(たとえばXML)にも適用することができる。 (4) In the above embodiment, HTML data has been described as an example, but the present invention can also be applied to languages having other hierarchical structures (for example, XML).

(5)上記実施形態では、ログイン判定プログラムが診断サーバ装置14に記録されている場合について説明した。しかし、ユーザ端末装置12にログイン判定プログラムを記録し、ユーザ端末装置12から直接診断対象サーバ装置16にアクセスして判定を行うようにしてもよい。 (5) In the above embodiment, the case where the login determination program is recorded in the diagnosis server device 14 has been described. However, a login determination program may be recorded in the user terminal device 12 and the determination may be made by accessing the diagnosis target server device 16 directly from the user terminal device 12.

(6)上記実施形態では、2つのページの比較を行う例を示した。しかし、ユーザの訪問したページのアクセスログの記録に用いることもできる。ユーザの訪問したページのHTMLデータの全てを記録するのは煩雑である。そこで、階層構造と注目すべきタグに関する内容のみを記録するようにすればよい。 (6) In the above embodiment, an example in which two pages are compared is shown. However, it can also be used to record access logs of pages visited by the user. It is troublesome to record all the HTML data of the page visited by the user. Therefore, only the contents related to the hierarchical structure and the tag to be noted need be recorded.

Claims (5)

ログイン後またはログイン前であることが判明している対象ページを構成するタグの階層構造を参照階層構造として記録した参照階層構造記録部と、
判定対象である対象ページを取得する対象ページ取得手段と、
取得した対象ページを構成するタグの階層構造を解析して解析階層構造を得る階層構造解析手段と、
前記解析階層構造と、参照階層構造記録部に記録されている参照階層構造を比較して、階層構造の異なる部分を抽出する抽出手段と、
前記抽出手段によって抽出された前記解析階層構造の異なる部分に対応する部分に、所定のキーワードが含まれるか否かによって、前記取得した対象ページがログイン後のものであるかログイン前のものであるかを判断するログイン判断手段と、
を備えたログイン判定装置。
A reference hierarchical structure recording unit that records a hierarchical structure of tags constituting a target page that is known to be after login or before login as a reference hierarchical structure;
A target page acquisition means for acquiring a target page as a determination target;
A hierarchical structure analyzing means for analyzing the hierarchical structure of tags constituting the acquired target page and obtaining an analytical hierarchical structure;
Extracting means for comparing the analysis hierarchical structure with a reference hierarchical structure recorded in a reference hierarchical structure recording unit, and extracting a different part of the hierarchical structure;
Depending on whether or not a predetermined keyword is included in a part corresponding to a different part of the analysis hierarchical structure extracted by the extraction unit , the acquired target page is after login or before login. Login determination means for determining whether or not
A login determination device.
ログイン後またはログイン前であることが判明している対象ページを構成するタグの階層構造を参照階層構造として記録した参照階層構造記録部にアクセス可能なコンピュータを用いたログイン判定プログラムであって、前記ログイン判定プログラムは、コンピュータを
判定対象である対象ページを取得する対象ページ取得手段と、
取得した対象ページを構成するタグの階層構造を解析して解析階層構造を得る階層構造解析手段と、
前記解析階層構造と、参照階層構造記録部に記録されている参照階層構造を比較して、階層構造の異なる部分を抽出する抽出手段と、
前記抽出手段によって抽出された前記解析階層構造の異なる部分に対応する部分に、所定のキーワードが含まれるか否かによって、前記取得した対象ページがログイン後のものであるかログイン前のものであるかを判断するログイン判断手段と、
して機能させるためのログイン判定プログラム。
A login determination program using a computer capable of accessing a reference hierarchical structure recording unit in which a hierarchical structure of tags constituting a target page that is known to be after login or before login is recorded as a reference hierarchical structure, The login determination program includes target page acquisition means for acquiring a target page that is a target of determination by the computer,
A hierarchical structure analyzing means for analyzing the hierarchical structure of tags constituting the acquired target page and obtaining an analytical hierarchical structure;
Extracting means for comparing the analysis hierarchical structure with a reference hierarchical structure recorded in a reference hierarchical structure recording unit, and extracting a different part of the hierarchical structure;
Depending on whether or not a predetermined keyword is included in a part corresponding to a different part of the analysis hierarchical structure extracted by the extraction unit , the acquired target page is after login or before login. Login determination means for determining whether or not
Log-in determination program to make it function.
請求項2のログイン判定プログラムにおいて、
前記対象ページはHTML言語にて記載されており、
前記階層構造解析手段は、取得した対象ページのHTMLタグのネスティング状態に応じて、階層構造の解析を行うことを特徴とするログイン判定プログラム。
In the login determination program according to claim 2,
The target page is described in HTML language,
The hierarchical structure analyzing means analyzes a hierarchical structure according to the nesting state of the HTML tag of the acquired target page.
請求項2または3のログイン判定プログラムにおいて、
前記階層構造解析手段は、HTMLタグの各階層に含まれる各種類のタグの数を階層構造として解析し、
前記抽出手段は、前記構造記録部に記録された対象ページを構成するタグの各階層に含まれる各種類のタグの数と、前記階層構造解析手段によって解析された対象ページを構成するタグの各階層に含まれる各種類のタグの数とを比較し、対応するタグの数が異なる部分を階層構造の異なる部分として抽出することを特徴とするログイン判定プログラム。
In the login determination program according to claim 2 or 3,
The hierarchical structure analyzing means analyzes the number of tags of each type included in each level of the HTML tag as a hierarchical structure,
The extraction means includes the number of tags of each type included in each hierarchy of tags constituting the target page recorded in the structure recording unit, and each tag constituting the target page analyzed by the hierarchical structure analysis means. A login determination program characterized by comparing the number of tags of each type included in a hierarchy and extracting a portion having a different number of corresponding tags as a portion having a different hierarchical structure.
第1の対象ページを構成するタグの階層構造と、第2の対象ページを構成するタグの階層構造を比較して、階層構造の異なる部分を抽出する抽出手段と、
前記抽出手段によって抽出された、第1の対象ページまたは第2の対象ページを構成するタグの前記階層構造の異なる部分に対応する部分の内容に基づいて、第1の対象ページと第2の対象ページの変化内容を決定する変化内容決定手段と、
を備えたページ変化検出装置。
An extraction means for comparing the hierarchical structure of the tags constituting the first target page with the hierarchical structure of the tags constituting the second target page, and extracting a portion having a different hierarchical structure;
Based on the contents of portions corresponding to different portions of the hierarchical structure of the tags constituting the first target page or the second target page extracted by the extracting means , the first target page and the second target page Change content determining means for determining the change content of the page;
A page change detection device.
JP2011074077A 2011-03-30 2011-03-30 Page change judgment device Active JP5421950B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011074077A JP5421950B2 (en) 2011-03-30 2011-03-30 Page change judgment device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011074077A JP5421950B2 (en) 2011-03-30 2011-03-30 Page change judgment device

Publications (2)

Publication Number Publication Date
JP2012208743A JP2012208743A (en) 2012-10-25
JP5421950B2 true JP5421950B2 (en) 2014-02-19

Family

ID=47188406

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011074077A Active JP5421950B2 (en) 2011-03-30 2011-03-30 Page change judgment device

Country Status (1)

Country Link
JP (1) JP5421950B2 (en)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003529397A (en) * 1999-08-13 2003-10-07 エイシーティーブイ・インコーポレーテッド Interactive game play system and method scheduled based on actual events
JP2005063432A (en) * 2003-08-08 2005-03-10 Fujitsu Ltd Multimedia object retrieval apparatus and multimedia object retrieval method
JP4908131B2 (en) * 2006-09-28 2012-04-04 富士通株式会社 Display processing program, apparatus, and method of non-immediate processing existence possibility
JP4881718B2 (en) * 2006-12-27 2012-02-22 Kddi株式会社 Web page alteration detection device, program, and recording medium
JP2009230663A (en) * 2008-03-25 2009-10-08 Kddi Corp Apparatus for detecting abnormal condition in web page, program, and recording medium

Also Published As

Publication number Publication date
JP2012208743A (en) 2012-10-25

Similar Documents

Publication Publication Date Title
AU2019240583B2 (en) Detection and repair of broken single sign-on integration
US10243679B2 (en) Vulnerability detection
CA2946695C (en) Fraud detection network system and fraud detection method
CN103279710B (en) Method and system for detecting malicious codes of Internet information system
US9807085B2 (en) Systems and methods for automated detection of login sequence for web form-based authentication
US10645117B2 (en) Systems and methods to detect and notify victims of phishing activities
US20180131779A1 (en) Recording And Triggering Web And Native Mobile Application Events With Mapped Data Fields
CN103262089B (en) Vulnerability Diagnosis device
US20170093828A1 (en) System and method for detecting whether automatic login to a website has succeeded
US10019420B2 (en) System and method for adding functionality to web-based applications having no extensibility features
CN107508809B (en) Method and device for identifying website type
CN106682489A (en) Password security detection method, password security reminding method and corresponding devices
WO2015188604A1 (en) Phishing webpage detection method and device
JP6291441B2 (en) Web system, web client device, and falsification inspection device
US9396170B2 (en) Hyperlink data presentation
CN107103241A (en) A kind of method of testing for automatically generating storage-type XSS attack vector
JP5421950B2 (en) Page change judgment device
JP2016031560A (en) Apparatus for displaying file to which hyperlink can be set, method, and program
CA2906649C (en) System and method for adding functionality to web-based applications having no extensibility features
JP5274401B2 (en) Management apparatus, management method, and program
KR20180105335A (en) SYSTEM AND METHOD FOR DETECTING COUNTERFEIT and FALSIFICATION USING LINK DATA
TW201401095A (en) Weakness scanning system for network, scanning method and computer-readable storage media thereof

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20130305

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130322

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130422

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130621

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20131105

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131122

R150 Certificate of patent or registration of utility model

Ref document number: 5421950

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250