tigre-client 0.5.1 → 0.5.2
Sign up to get free protection for your applications and to get access to all the features.
- data/Gemfile.lock +1 -1
- data/lib/tigre-client/analysis.rb +42 -10
- data/lib/tigre-client/common/common_getters.rb +41 -2
- data/lib/tigre-client/url.rb +1 -3
- data/lib/tigre-client/version.rb +1 -1
- metadata +1 -1
data/Gemfile.lock
CHANGED
@@ -63,33 +63,65 @@ module Tigre
|
|
63
63
|
# required
|
64
64
|
# mutex_name_list => String (comma seperated) => I.E 'foo,bar,baz'
|
65
65
|
# mutex_name_list => Array => ['foo', 'bar', 'baz']
|
66
|
-
|
66
|
+
# optional params
|
67
|
+
# options => Hash
|
68
|
+
# :page => Integer, :default => 0
|
69
|
+
# :per => Integer, :default => 50
|
70
|
+
# :after => Ruby DateTime object OR Integer (epoch time)
|
71
|
+
# :before => Ruby DateTime object OR Integer (epoch time)
|
72
|
+
def self.get_urls_with_mutex(mutex_name_list, options={})
|
67
73
|
raise 'Missing mutex_name_list' if mutex_name_list == ''
|
68
|
-
|
74
|
+
common_params(options)
|
75
|
+
Tigre.get_connection("/analyses/urls/mutex_name?mutex_name_list=#{package_array_list(mutex_name_list)}&#{before_after_page_per}")
|
69
76
|
end
|
70
77
|
|
71
78
|
# required
|
72
79
|
# mutex_name_list => String (comma seperated) => I.E 'foo,bar,baz'
|
73
80
|
# mutex_name_list => Array => ['foo', 'bar', 'baz']
|
74
|
-
|
81
|
+
# optional params
|
82
|
+
# options => Hash
|
83
|
+
# :page => Integer, :default => 0
|
84
|
+
# :per => Integer, :default => 50
|
85
|
+
# :after => Ruby DateTime object OR Integer (epoch time)
|
86
|
+
# :before => Ruby DateTime object OR Integer (epoch time)
|
87
|
+
def self.get_samples_with_mutex(mutex_name_list, options={})
|
75
88
|
raise 'Missing mutex_name_list' if mutex_name_list == ''
|
76
|
-
|
89
|
+
common_params(options)
|
90
|
+
Tigre.get_connection("/analyses/samples/mutex_name?mutex_name_list=#{package_array_list(mutex_name_list)}&#{before_after_page_per}")
|
77
91
|
end
|
78
92
|
|
79
93
|
# required
|
80
94
|
# dbts_name_list => Hash => I.E {'key1' => 1, 'key2 => 0}
|
81
|
-
|
95
|
+
# optional params
|
96
|
+
# options => Hash
|
97
|
+
# :page => Integer, :default => 0
|
98
|
+
# :per => Integer, :default => 50
|
99
|
+
# :after => Ruby DateTime object OR Integer (epoch time)
|
100
|
+
# :before => Ruby DateTime object OR Integer (epoch time)
|
101
|
+
def self.get_urls_with_dbts(dbts_name_list, options={})
|
82
102
|
raise 'Missing dbts_name_list' if dbts_name_list == ''
|
83
|
-
|
84
|
-
|
103
|
+
common_params(options)
|
104
|
+
search = {:dbts_name_list => dbts_name_list,
|
105
|
+
:before => @before, :after => @after,
|
106
|
+
:page => @page, :per => @per}
|
107
|
+
Tigre.post_connection("/analyses/urls/dbts_name", search)
|
85
108
|
end
|
86
109
|
|
87
110
|
# required
|
88
111
|
# dbts_name_list => Hash => I.E {'key1' => 1, 'key2 => 0}
|
89
|
-
|
112
|
+
# optional params
|
113
|
+
# options => Hash
|
114
|
+
# :page => Integer, :default => 0
|
115
|
+
# :per => Integer, :default => 50
|
116
|
+
# :after => Ruby DateTime object OR Integer (epoch time)
|
117
|
+
# :before => Ruby DateTime object OR Integer (epoch time)
|
118
|
+
def self.get_samples_with_dbts(dbts_name_list, options={})
|
90
119
|
raise 'Missing dbts_name_list' if dbts_name_list == ''
|
91
|
-
|
92
|
-
|
120
|
+
common_params(options)
|
121
|
+
search = {:dbts_name_list => dbts_name_list,
|
122
|
+
:before => @before, :after => @after,
|
123
|
+
:page => @page, :per => @per}
|
124
|
+
Tigre.post_connection("/analyses/samples/dbts_name", search)
|
93
125
|
end
|
94
126
|
|
95
127
|
end
|
@@ -3,8 +3,8 @@ module Tigre
|
|
3
3
|
|
4
4
|
# optional params
|
5
5
|
# options => Hash
|
6
|
-
# :page
|
7
|
-
# :per
|
6
|
+
# :page => Integer, :default => 0
|
7
|
+
# :per => Integer, :default => 50
|
8
8
|
# :after => Ruby DateTime object OR Integer (epoch time)
|
9
9
|
# :before => Ruby DateTime object OR Integer (epoch time)
|
10
10
|
def index(options={})
|
@@ -21,5 +21,44 @@ module Tigre
|
|
21
21
|
Tigre.get_connection("/#{get_klass}/count?#{before_after}")
|
22
22
|
end
|
23
23
|
|
24
|
+
# optional params
|
25
|
+
# options => Hash
|
26
|
+
# :after => Ruby DateTime object OR Integer (epoch time)
|
27
|
+
# :before => Ruby DateTime object OR Integer (epoch time)
|
28
|
+
# :page => Integer, :default => 0
|
29
|
+
# :per => Integer, :default => 50
|
30
|
+
def exploit_feed(options={})
|
31
|
+
common_params(options)
|
32
|
+
Tigre.get_connection("/#{get_klass}/latest_analyses?tags=exploit&#{before_after_page_per}")
|
33
|
+
end
|
34
|
+
|
35
|
+
# required params
|
36
|
+
# hash => Hash
|
37
|
+
# :digest => String, The digest type
|
38
|
+
# :value => String, The digest value
|
39
|
+
def latest_analysis(hash)
|
40
|
+
raise 'Missing parameter :digest or :value' unless hash[:digest] && hash[:value]
|
41
|
+
Tigre.get_connection("/#{get_klass}/#{hash[:digest]}/value/#{hash[:value]}/latest_analysis")
|
42
|
+
end
|
43
|
+
|
44
|
+
# optional params
|
45
|
+
# search_hash => Hash
|
46
|
+
# :tags => String => I.E 'foo'
|
47
|
+
# :tags => String (comma seperated) => I.E 'foo,bar,baz'
|
48
|
+
# :tags => Array => ['foo', 'bar', 'baz']
|
49
|
+
# :file_types => String => I.E 'pdf'
|
50
|
+
# :file_types => String (comma seperated) => I.E 'pdf,exe'
|
51
|
+
# :file_types => Array => ['pdf', 'exe', 'com']
|
52
|
+
# options => Hash
|
53
|
+
# :after => Ruby DateTime object OR Integer (epoch time)
|
54
|
+
# :before => Ruby DateTime object OR Integer (epoch time)
|
55
|
+
# :page => Integer, :default => 0
|
56
|
+
# :per => Integer, :default => 50
|
57
|
+
def latest_analyses(search_hash={},options={})
|
58
|
+
tags = package_array_list(search_hash[:tags]) if search_hash[:tags]
|
59
|
+
file_types = package_array_list(search_hash[:file_types]) if search_hash[:file_types]
|
60
|
+
Tigre.get_connection("/#{get_klass}/latest_analyses?tags=#{tags}&file_types=#{file_types}&#{before_after_page_per}")
|
61
|
+
end
|
62
|
+
|
24
63
|
end
|
25
64
|
end
|
data/lib/tigre-client/url.rb
CHANGED
@@ -128,9 +128,7 @@ module Tigre
|
|
128
128
|
# :page => Integer, :default => 0
|
129
129
|
# :per => Integer, :default => 50
|
130
130
|
def self.domains(domain, options={})
|
131
|
-
if domain == ''
|
132
|
-
raise ArguementError, "Missing domain parameter"
|
133
|
-
end
|
131
|
+
raise ArguementError, "Missing domain parameter" if domain == ''
|
134
132
|
|
135
133
|
common_params(options)
|
136
134
|
Tigre.get_connection("/urls/domains?domain=#{domain}&#{before_after_page_per}")
|
data/lib/tigre-client/version.rb
CHANGED