質問編集履歴

8

試してみたことを追加

2020/10/28 08:27

投稿

aardvark
aardvark

スコア17

test CHANGED
File without changes
test CHANGED
@@ -289,3 +289,15 @@
289
289
  attempt_brute_force.html_brute_forcer_thread_starter()
290
290
 
291
291
  ```
292
+
293
+
294
+
295
+ ### 試してみたこと
296
+
297
+ ```
298
+
299
+ print(brute_force_page)
300
+
301
+ ```
302
+
303
+ でパスワードを入れてリクエストしか結果を確認しようとしても、そのデータが出力されません。

7

情報の追加

2020/10/28 08:27

投稿

aardvark
aardvark

スコア17

test CHANGED
File without changes
test CHANGED
@@ -94,6 +94,10 @@
94
94
 
95
95
 
96
96
 
97
+ パスワードが間違っていたならば、返ってくるWebページにはちゃんと<form>要素は含まれ、それを検知してまだログインできていないと認識できるはずなのですが。
98
+
99
+
100
+
97
101
  ### 該当のソースコード
98
102
 
99
103
 

6

タイトルの修正

2020/10/28 08:23

投稿

aardvark
aardvark

スコア17

test CHANGED
@@ -1 +1 @@
1
- パスワード保護されたWordPressページに総当たり攻撃をかけるとしたら
1
+ パスワード保護されたWordPressページに総当たり攻撃をかけてみ実験を行っているのですが
test CHANGED
File without changes

5

何が問題なのかをちゃんと説明してみました

2020/10/28 08:21

投稿

aardvark
aardvark

スコア17

test CHANGED
File without changes
test CHANGED
@@ -1,3 +1,7 @@
1
+ ### 前提・実現したいこと
2
+
3
+
4
+
1
5
  実験として、パスワード保護されたWordPressページに総当たり攻撃をかけるPythonプログラムを書いています。
2
6
 
3
7
 
@@ -6,6 +10,10 @@
6
10
 
7
11
 
8
12
 
13
+ 第三者サーバーではなく、Localで適当にやってみて実験しております。
14
+
15
+
16
+
9
17
  手順としては、
10
18
 
11
19
  1) パスワードを入れる前のWordPressページを解析する
@@ -46,12 +54,52 @@
46
54
 
47
55
 
48
56
 
57
+ ### 発生している問題・エラーメッセージ
58
+
59
+
60
+
61
+ パスワードがxyzになっているWordPressページで実験してみるとして、デバッグ用にパスワードの候補をabcのみにして実行してみたところ、
62
+
63
+ ```
64
+
65
+ [*] Started HTML Form Brute-Forcer Script
66
+
67
+ [*] Attempting abc
68
+
69
+ [*] Attempting abc
70
+
49
- それで書いてみたのが以下のコードなのですが、どうやらどのパスワードでも"Brute-Force Attempt is Successful!"という出力になり、正しいパスワードが取得できません。
71
+ [*] Brute-Force Attempt is Successful!
72
+
50
-
73
+ [*] Password: abc
74
+
51
-
75
+ [*] Done
76
+
77
+ ```
78
+
79
+ と、明らかに違うのに正しいパスワードとして出力されます。
80
+
81
+
82
+
83
+ もしかしたら、
52
84
 
53
85
  ```python
54
86
 
87
+ brute_force_request = urllib.request.Request(post_url, headers=headers)
88
+
89
+ brute_force_response = urllib.request.urlopen(brute_force_request, data=post_data)
90
+
91
+ ```
92
+
93
+ で返ってくるWebページの結果をちゃんと解析できてないのかな、と思うのですが、どこを修正すればいいのか今一つ見当がつきません...。
94
+
95
+
96
+
97
+ ### 該当のソースコード
98
+
99
+
100
+
101
+ ```python
102
+
55
103
  from html.parser import HTMLParser
56
104
 
57
105
  import urllib.request

4

修正

2020/10/28 08:18

投稿

aardvark
aardvark

スコア17

test CHANGED
File without changes
test CHANGED
@@ -28,11 +28,11 @@
28
28
 
29
29
  <div class="eight columns centered entry-main">
30
30
 
31
- <form action="http://www.hogehoge.net/wp-login.php?action=postpass" class="post-password-form" method="post">
31
+ <form action="http://www.example.net/wp-login.php?action=postpass" class="post-password-form" method="post">
32
32
 
33
33
  <p>このコンテンツはパスワードで保護されています。閲覧するには以下にパスワードを入力してください。</p>
34
34
 
35
- <p><label for="pwbox-hoge">パスワード <input name="post_password" id="pwbox-hoge" type="password" size="20" /></label> <input type="submit" name="Submit" value="送信" /></p>
35
+ <p><label for="pwbox-1234">パスワード <input name="post_password" id="pwbox-1234" type="password" size="20" /></label> <input type="submit" name="Submit" value="送信" /></p>
36
36
 
37
37
  </p></form>
38
38
 
@@ -78,7 +78,7 @@
78
78
 
79
79
  headers = {}
80
80
 
81
- target_url = "http://www.example.net/archives/example" #パスワード保護がかかっているWordPressページを対象に検証を行う
81
+ target_url = "http://www.example.net/archives/1234" #パスワード保護がかかっているWordPressページを対象に検証を行う
82
82
 
83
83
  post_url = "http://www.example.net/wp-login.php?action=postpass" #このphpファイルを経由して処理が行われるらしい
84
84
 

3

修正

2020/10/28 05:33

投稿

aardvark
aardvark

スコア17

test CHANGED
File without changes
test CHANGED
@@ -226,7 +226,7 @@
226
226
 
227
227
  http.cookiejar.FileCookieJar("cookies").clear()
228
228
 
229
- combos=iterator.product("abcdefghijklmnopqrstuvwxyz1234567890", repeat=3)
229
+ combos=itertools.product("abcdefghijklmnopqrstuvwxyz1234567890", repeat=3)
230
230
 
231
231
  for passwd_q in combos:
232
232
 

2

追加

2020/10/28 05:05

投稿

aardvark
aardvark

スコア17

test CHANGED
File without changes
test CHANGED
@@ -46,7 +46,7 @@
46
46
 
47
47
 
48
48
 
49
- それで書いてみたのが以下のコードなのですが、どうやらどのパスワードでも"Brute-Force Attempt is Successful!"という出力になるよう
49
+ それで書いてみたのが以下のコードなのですが、どうやらどのパスワードでも"Brute-Force Attempt is Successful!"という出力になり、正しいパスワードが取得きません
50
50
 
51
51
 
52
52
 

1

誤字

2020/10/28 05:03

投稿

aardvark
aardvark

スコア17

test CHANGED
File without changes
test CHANGED
@@ -80,7 +80,7 @@
80
80
 
81
81
  target_url = "http://www.example.net/archives/example" #パスワード保護がかかっているWordPressページを対象に検証を行う
82
82
 
83
- post_url = "http://www.tavuniv-refer.net/wp-login.php?action=postpass" #このphpファイルを経由して処理が行われるらしい
83
+ post_url = "http://www.example.net/wp-login.php?action=postpass" #このphpファイルを経由して処理が行われるらしい
84
84
 
85
85
  password_field = "post_password" #パースしたHTML内にpost_passwordという項目があれば、まだページに入れていないと判断
86
86