miteru 2.0.2 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.rubocop.yml +2 -0
- data/README.md +4 -4
- data/lib/miteru/config.rb +5 -1
- data/lib/miteru/feeds/ayashige.rb +0 -3
- data/lib/miteru/feeds/urlscan.rb +9 -1
- data/lib/miteru/feeds/urlscan_pro.rb +1 -1
- data/lib/miteru/notifiers/slack.rb +1 -1
- data/lib/miteru/orchestrator.rb +8 -8
- data/lib/miteru/version.rb +1 -1
- data/miteru.gemspec +4 -4
- metadata +11 -11
- data/screenshots/slack.png +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7428f741cd791e37e5f201c978f4ee6b5f6fe239d350b69d3377a6af4604305d
|
4
|
+
data.tar.gz: 0057c9ee7ebe6dd5ee039939b30ff897d3298605c3843c980f2b30081ad8bc2d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b4f69cf18c8db256f035466f669835810e53329f7af7df5fd3d58689002c2e7175abb9456b31e21c0b23369e31a1559040c82f92c662202661c50cc8cc702334
|
7
|
+
data.tar.gz: d7188fe6bc2372560031fb964254f5ea6df56672edd0f112a6ebe7b41d5ad7efa2a52e6c1deb666891573990f0cf75e8b4ea768f5240cd5d25127a544e06e26c
|
data/.rubocop.yml
ADDED
data/README.md
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
# Miteru
|
2
2
|
|
3
3
|
[](https://badge.fury.io/rb/miteru)
|
4
|
-
[](https://github.com/ninoseki/miteru/actions/workflows/ruby.yml)
|
5
5
|
[](https://www.codefactor.io/repository/github/ninoseki/miteru)
|
6
6
|
[](https://coveralls.io/github/ninoseki/miteru?branch=master)
|
7
7
|
|
@@ -14,12 +14,12 @@ I take no responsibility and/or liability for how you choose to use this tool.
|
|
14
14
|
|
15
15
|
## How It Works
|
16
16
|
|
17
|
-
-
|
18
|
-
- urlscan.io's automatic submissions. (`task.method:automatic`)
|
17
|
+
- Collect phishy URLs from the following feeds:
|
18
|
+
- urlscan.io's automatic submissions. (`task.method:automatic AND NOT task.source:urlscan-observe`)
|
19
19
|
- urlscan.io phish feed. (available for Pro users)
|
20
20
|
- [mitchellkrogza/Phishing.Database](https://github.com/mitchellkrogza/Phishing.Database)'s `phishing-links-ACTIVE-NOW.txt`.
|
21
21
|
- [ninoseki/ayashige](https://github.com/ninoseki/ayashige) feed.
|
22
|
-
-
|
22
|
+
- Check each phishy URL whether it enables directory listing and contains phishing kits (compressed files) or not.
|
23
23
|
- Note: Supported compressed files are: `*.zip`, `*.rar`, `*.7z`, `*.tar` and `*.gz`.
|
24
24
|
|
25
25
|
## Docs
|
data/lib/miteru/config.rb
CHANGED
@@ -27,7 +27,8 @@ module Miteru
|
|
27
27
|
threads: Parallel.processor_count,
|
28
28
|
urlscan_api_key: nil,
|
29
29
|
urlscan_submit_visibility: "public",
|
30
|
-
urlscan_date_condition: "
|
30
|
+
urlscan_date_condition: "date:>now-1h",
|
31
|
+
urlscan_base_condition: "task.method:automatic AND NOT task.source:urlscan-observe",
|
31
32
|
verbose: false
|
32
33
|
)
|
33
34
|
|
@@ -91,6 +92,9 @@ module Miteru
|
|
91
92
|
# @!attribute [r] urlscan_date_condition
|
92
93
|
# @return [String]
|
93
94
|
|
95
|
+
# @!attribute [r] urlscan_base_condition
|
96
|
+
# @return [String]
|
97
|
+
|
94
98
|
def database_url=(val)
|
95
99
|
super(URI(val.to_s))
|
96
100
|
end
|
data/lib/miteru/feeds/urlscan.rb
CHANGED
@@ -31,7 +31,7 @@ module Miteru
|
|
31
31
|
end
|
32
32
|
|
33
33
|
def q
|
34
|
-
"
|
34
|
+
"#{base_condition} AND #{date_condition}"
|
35
35
|
end
|
36
36
|
|
37
37
|
#
|
@@ -59,6 +59,14 @@ module Miteru
|
|
59
59
|
end
|
60
60
|
end
|
61
61
|
end
|
62
|
+
|
63
|
+
def base_condition
|
64
|
+
Miteru.config.urlscan_base_condition
|
65
|
+
end
|
66
|
+
|
67
|
+
def date_condition
|
68
|
+
Miteru.config.urlscan_date_condition
|
69
|
+
end
|
62
70
|
end
|
63
71
|
end
|
64
72
|
end
|
data/lib/miteru/orchestrator.rb
CHANGED
@@ -40,7 +40,14 @@ module Miteru
|
|
40
40
|
Miteru.logger.warn("Feed:#{feed.source} failed - #{result.failure}")
|
41
41
|
end
|
42
42
|
end
|
43
|
-
end.flatten
|
43
|
+
end.flatten.uniq(&:url)
|
44
|
+
end
|
45
|
+
|
46
|
+
#
|
47
|
+
# @return [Array<Miteru::Feeds::Base>]
|
48
|
+
#
|
49
|
+
def feeds
|
50
|
+
Miteru.feeds.map(&:new)
|
44
51
|
end
|
45
52
|
|
46
53
|
private
|
@@ -52,12 +59,5 @@ module Miteru
|
|
52
59
|
def verbose?
|
53
60
|
Miteru.config.verbose
|
54
61
|
end
|
55
|
-
|
56
|
-
#
|
57
|
-
# @return [Array<Miteru::Feeds::Base>]
|
58
|
-
#
|
59
|
-
def feeds
|
60
|
-
Miteru.feeds.map(&:new)
|
61
|
-
end
|
62
62
|
end
|
63
63
|
end
|
data/lib/miteru/version.rb
CHANGED
data/miteru.gemspec
CHANGED
@@ -32,7 +32,7 @@ Gem::Specification.new do |spec|
|
|
32
32
|
spec.add_development_dependency 'mysql2', '~> 0.5'
|
33
33
|
spec.add_development_dependency 'pg', '~> 1.5'
|
34
34
|
spec.add_development_dependency 'rake', '~> 13.1'
|
35
|
-
spec.add_development_dependency 'rspec', '~> 3.
|
35
|
+
spec.add_development_dependency 'rspec', '~> 3.13'
|
36
36
|
spec.add_development_dependency 'simplecov-lcov', '~> 0.8'
|
37
37
|
spec.add_development_dependency 'standard', '~> 1.33'
|
38
38
|
spec.add_development_dependency 'test-prof', '~> 1.3'
|
@@ -47,12 +47,12 @@ Gem::Specification.new do |spec|
|
|
47
47
|
spec.add_dependency 'down', '5.4.1'
|
48
48
|
spec.add_dependency 'dry-files', '1.1.0'
|
49
49
|
spec.add_dependency 'dry-monads', '1.6.0'
|
50
|
-
spec.add_dependency 'http', '5.
|
50
|
+
spec.add_dependency 'http', '5.2.0'
|
51
51
|
spec.add_dependency 'memo_wise', '1.8.0'
|
52
52
|
spec.add_dependency 'oga', '3.4'
|
53
53
|
spec.add_dependency 'parallel', '1.24.0'
|
54
54
|
spec.add_dependency 'puma', '6.4.2'
|
55
|
-
spec.add_dependency 'rack', '3.0.
|
55
|
+
spec.add_dependency 'rack', '3.0.9'
|
56
56
|
spec.add_dependency 'rack-session', '2.0.0'
|
57
57
|
spec.add_dependency 'rackup', '2.1.0'
|
58
58
|
spec.add_dependency 'semantic_logger', '4.15.0'
|
@@ -60,7 +60,7 @@ Gem::Specification.new do |spec|
|
|
60
60
|
spec.add_dependency 'sentry-sidekiq', '5.16.1'
|
61
61
|
spec.add_dependency 'sidekiq', '7.2.1'
|
62
62
|
spec.add_dependency 'slack-notifier', '2.4.0'
|
63
|
-
spec.add_dependency 'sqlite3', '1.7.
|
63
|
+
spec.add_dependency 'sqlite3', '1.7.2'
|
64
64
|
spec.add_dependency 'thor', '1.3.0'
|
65
65
|
spec.add_dependency 'thor-hollaback', '0.2.1'
|
66
66
|
spec.add_dependency 'uuidtools', '2.2.0'
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: miteru
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0
|
4
|
+
version: 2.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Manabu Niseki
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-
|
11
|
+
date: 2024-02-06 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -114,14 +114,14 @@ dependencies:
|
|
114
114
|
requirements:
|
115
115
|
- - "~>"
|
116
116
|
- !ruby/object:Gem::Version
|
117
|
-
version: '3.
|
117
|
+
version: '3.13'
|
118
118
|
type: :development
|
119
119
|
prerelease: false
|
120
120
|
version_requirements: !ruby/object:Gem::Requirement
|
121
121
|
requirements:
|
122
122
|
- - "~>"
|
123
123
|
- !ruby/object:Gem::Version
|
124
|
-
version: '3.
|
124
|
+
version: '3.13'
|
125
125
|
- !ruby/object:Gem::Dependency
|
126
126
|
name: simplecov-lcov
|
127
127
|
requirement: !ruby/object:Gem::Requirement
|
@@ -310,14 +310,14 @@ dependencies:
|
|
310
310
|
requirements:
|
311
311
|
- - '='
|
312
312
|
- !ruby/object:Gem::Version
|
313
|
-
version: 5.
|
313
|
+
version: 5.2.0
|
314
314
|
type: :runtime
|
315
315
|
prerelease: false
|
316
316
|
version_requirements: !ruby/object:Gem::Requirement
|
317
317
|
requirements:
|
318
318
|
- - '='
|
319
319
|
- !ruby/object:Gem::Version
|
320
|
-
version: 5.
|
320
|
+
version: 5.2.0
|
321
321
|
- !ruby/object:Gem::Dependency
|
322
322
|
name: memo_wise
|
323
323
|
requirement: !ruby/object:Gem::Requirement
|
@@ -380,14 +380,14 @@ dependencies:
|
|
380
380
|
requirements:
|
381
381
|
- - '='
|
382
382
|
- !ruby/object:Gem::Version
|
383
|
-
version: 3.0.
|
383
|
+
version: 3.0.9
|
384
384
|
type: :runtime
|
385
385
|
prerelease: false
|
386
386
|
version_requirements: !ruby/object:Gem::Requirement
|
387
387
|
requirements:
|
388
388
|
- - '='
|
389
389
|
- !ruby/object:Gem::Version
|
390
|
-
version: 3.0.
|
390
|
+
version: 3.0.9
|
391
391
|
- !ruby/object:Gem::Dependency
|
392
392
|
name: rack-session
|
393
393
|
requirement: !ruby/object:Gem::Requirement
|
@@ -492,14 +492,14 @@ dependencies:
|
|
492
492
|
requirements:
|
493
493
|
- - '='
|
494
494
|
- !ruby/object:Gem::Version
|
495
|
-
version: 1.7.
|
495
|
+
version: 1.7.2
|
496
496
|
type: :runtime
|
497
497
|
prerelease: false
|
498
498
|
version_requirements: !ruby/object:Gem::Requirement
|
499
499
|
requirements:
|
500
500
|
- - '='
|
501
501
|
- !ruby/object:Gem::Version
|
502
|
-
version: 1.7.
|
502
|
+
version: 1.7.2
|
503
503
|
- !ruby/object:Gem::Dependency
|
504
504
|
name: thor
|
505
505
|
requirement: !ruby/object:Gem::Requirement
|
@@ -554,6 +554,7 @@ files:
|
|
554
554
|
- ".github/workflows/ruby.yml"
|
555
555
|
- ".gitignore"
|
556
556
|
- ".rspec"
|
557
|
+
- ".rubocop.yml"
|
557
558
|
- Gemfile
|
558
559
|
- LICENSE
|
559
560
|
- README.md
|
@@ -600,7 +601,6 @@ files:
|
|
600
601
|
- lib/miteru/website.rb
|
601
602
|
- miteru.gemspec
|
602
603
|
- renovate.json
|
603
|
-
- screenshots/slack.png
|
604
604
|
homepage: https://github.com/ninoseki/miteru
|
605
605
|
licenses:
|
606
606
|
- MIT
|
data/screenshots/slack.png
DELETED
Binary file
|