RubyIOC 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (48) hide show
  1. data/.gitignore +20 -0
  2. data/Gemfile +3 -0
  3. data/LICENSE +7 -0
  4. data/README.md +7 -0
  5. data/Rakefile +8 -0
  6. data/RubyIOC.gemspec +24 -0
  7. data/lib/RubyIOC.rb +39 -0
  8. data/lib/RubyIOC/ioc.rb +58 -0
  9. data/lib/RubyIOC/iocitem.rb +59 -0
  10. data/lib/RubyIOC/iocitem/arp_entry_item.rb +33 -0
  11. data/lib/RubyIOC/iocitem/cookie_history_item.rb +33 -0
  12. data/lib/RubyIOC/iocitem/disk_item.rb +33 -0
  13. data/lib/RubyIOC/iocitem/dns_entry_item.rb +66 -0
  14. data/lib/RubyIOC/iocitem/driver_item.rb +33 -0
  15. data/lib/RubyIOC/iocitem/event_log_item.rb +33 -0
  16. data/lib/RubyIOC/iocitem/file_download_history_item.rb +33 -0
  17. data/lib/RubyIOC/iocitem/file_item.rb +33 -0
  18. data/lib/RubyIOC/iocitem/form_history_item.rb +33 -0
  19. data/lib/RubyIOC/iocitem/hash_item.rb +33 -0
  20. data/lib/RubyIOC/iocitem/hook_item.rb +33 -0
  21. data/lib/RubyIOC/iocitem/module_item.rb +33 -0
  22. data/lib/RubyIOC/iocitem/persistence_item.rb +33 -0
  23. data/lib/RubyIOC/iocitem/port_item.rb +33 -0
  24. data/lib/RubyIOC/iocitem/prefetch_item.rb +33 -0
  25. data/lib/RubyIOC/iocitem/process_item.rb +33 -0
  26. data/lib/RubyIOC/iocitem/registry_hive_item.rb +33 -0
  27. data/lib/RubyIOC/iocitem/registry_item.rb +33 -0
  28. data/lib/RubyIOC/iocitem/route_entry_item.rb +33 -0
  29. data/lib/RubyIOC/iocitem/service_item.rb +33 -0
  30. data/lib/RubyIOC/iocitem/string_match_item.rb +33 -0
  31. data/lib/RubyIOC/iocitem/system_info_item.rb +33 -0
  32. data/lib/RubyIOC/iocitem/system_restore_item.rb +33 -0
  33. data/lib/RubyIOC/iocitem/task_item.rb +33 -0
  34. data/lib/RubyIOC/iocitem/timeline_item.rb +33 -0
  35. data/lib/RubyIOC/iocitem/url_history_item.rb +33 -0
  36. data/lib/RubyIOC/iocitem/user_item.rb +81 -0
  37. data/lib/RubyIOC/iocitem/volume_item.rb +33 -0
  38. data/lib/RubyIOC/iocterm.rb +22 -0
  39. data/lib/RubyIOC/platform.rb +55 -0
  40. data/lib/RubyIOC/scanner.rb +110 -0
  41. data/lib/RubyIOC/version.rb +15 -0
  42. data/test/find_windows.ioc +75 -0
  43. data/test/test_dns_entry_item.ioc +14 -0
  44. data/test/test_iocitem_factory.rb +17 -0
  45. data/test/test_scan.rb +16 -0
  46. data/test/test_user_item.ioc +28 -0
  47. data/test/zeus.ioc +69 -0
  48. metadata +103 -0
@@ -0,0 +1,110 @@
1
+ # Copyright (c) 2013 Matt Jezorek
2
+ #
3
+ # Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"),
4
+ # to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense,
5
+ # and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
6
+ #
7
+ # The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
8
+ #
9
+ # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
10
+ # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
11
+ # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
12
+ # IN THE SOFTWARE.
13
+ require "rubygems"
14
+ require "active_support"
15
+ require "yaml"
16
+ require "pp"
17
+ module RubyIOC
18
+ class Scanner
19
+ def initialize(iocXML)
20
+ @ioc = RubyIOC::IOC.from_xml(iocXML)
21
+ end
22
+
23
+ def scan
24
+ results = []
25
+ indicators = []
26
+ @ioc.indicators.each { |i|
27
+ results << process_indicators(i, results)
28
+ }
29
+ puts results.to_yaml
30
+ end
31
+
32
+ def get_all_results(items, results)
33
+ items.each { | a |
34
+ a.each_pair { |k,v|
35
+ results << v['result']
36
+ }
37
+ }
38
+ return results
39
+ end
40
+
41
+ def get_result(operator, results)
42
+ result = false
43
+ # setup what indicators we want
44
+ indicators = results['indicators']
45
+ if indicators.empty?
46
+ indicators = get_all_results(results['items'], [])
47
+ end
48
+ case operator
49
+ when "OR"
50
+ result = false
51
+ indicators.each { |ind |
52
+ if ind == true
53
+ result = true
54
+ end
55
+ }
56
+ when "AND"
57
+ result = true
58
+ indicators.each { |ind|
59
+ if ind == false
60
+ result = false
61
+ end
62
+ }
63
+ else
64
+ puts "You have me an invalid operator"
65
+ end
66
+ return result
67
+ end
68
+
69
+ def process_indicators(i, results)
70
+ res = {}
71
+ search_item = []
72
+ res[i.id] = {}
73
+ res[i.id]['items'] = []
74
+ res[i.id]['operator'] = i.operator
75
+ res[i.id]['indicators'] = []
76
+ if i.operator === "AND"
77
+ i.indicator_item.each { | inditem |
78
+ tmp = {}
79
+ tmp[:document] = inditem.document
80
+ tmp[:search] = inditem.search
81
+ tmp[:condition] = inditem.condition
82
+ tmp[:content_type] = inditem.content_type
83
+ tmp[:content] = inditem.content
84
+ tmp[:context_type] = inditem.context_type
85
+ search_item << tmp
86
+ }
87
+ res[i.id]['indicators'] << RubyIOC::IOCItem::IOCItemFactory.item_for(search_item[0][:document]).scan(search_item)
88
+ puts res[i.id]['indicators'].inspect
89
+ else
90
+ i.indicator_item.each { | inditem |
91
+ tmp = {}
92
+ tmp[:document] = inditem.document
93
+ tmp[:search] = inditem.search
94
+ tmp[:condition] = inditem.condition
95
+ tmp[:content_type] = inditem.content_type
96
+ tmp[:content] = inditem.content
97
+ tmp[:context_type] = inditem.context_type
98
+ search_item << tmp
99
+ res[i.id]['indicators'] << RubyIOC::IOCItem::IOCItemFactory.item_for(inditem.document).scan(search_item)
100
+ }
101
+ end
102
+ i.indicators.each { |ii |
103
+ process_indicators(ii, res[i.id]['items'])
104
+ }
105
+ res[i.id]['result'] = get_result(i.operator, res[i.id])
106
+ results << res
107
+ end
108
+
109
+ end
110
+ end
@@ -0,0 +1,15 @@
1
+ # Copyright (c) 2013 Matt Jezorek
2
+ #
3
+ # Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"),
4
+ # to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense,
5
+ # and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
6
+ #
7
+ # The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
8
+ #
9
+ # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
10
+ # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
11
+ # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
12
+ # IN THE SOFTWARE.
13
+ module RubyIOC
14
+ VERSION = "0.0.1"
15
+ end
@@ -0,0 +1,75 @@
1
+ <?xml version="1.0" encoding="us-ascii"?>
2
+ <ioc xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" id="c32ab7b5-49c8-40cc-8a12-ef5c3ba91311" last-modified="2011-10-28T19:28:20" xmlns="http://schemas.mandiant.com/2010/ioc">
3
+ <short_description>FIND WINDOWS</short_description>
4
+ <description>This is a sample IOC that will hit on a number different artifacts present on a Windows computer. This IOC is used to test or illustrate the use of an IOC.</description>
5
+ <keywords />
6
+ <authored_by>Mandiant</authored_by>
7
+ <authored_date>0001-01-01T00:00:00</authored_date>
8
+ <links />
9
+ <definition>
10
+ <Indicator operator="OR" id="2e693207-ae90-4f9b-8a31-67f31f1d263c">
11
+ <IndicatorItem id="5ebfad1c-6f1a-472b-ae58-6fdfede0f4e7" condition="contains">
12
+ <Context document="FileItem" search="FileItem/FullPath" type="mir" />
13
+ <Content type="string">\kernel32.dll</Content>
14
+ </IndicatorItem>
15
+ <IndicatorItem id="5b79c908-9d4d-4536-8699-9538af1576e8" condition="is">
16
+ <Context document="FileItem" search="FileItem/FileName" type="mir" />
17
+ <Content type="string">win.ini</Content>
18
+ </IndicatorItem>
19
+ <IndicatorItem id="d1e188e1-fae6-488d-ba2f-a900abb21f14" condition="contains">
20
+ <Context document="FileItem" search="FileItem/FileExtension" type="mir" />
21
+ <Content type="string">evt</Content>
22
+ </IndicatorItem>
23
+ <IndicatorItem id="78af913e-a007-4f8a-864f-b543dd7a6d09" condition="is">
24
+ <Context document="ProcessItem" search="ProcessItem/name" type="mir" />
25
+ <Content type="string">explorer.exe</Content>
26
+ </IndicatorItem>
27
+ <IndicatorItem id="9aaa6f73-5bd5-4dbe-b36f-73ee2e74655d" condition="is">
28
+ <Context document="EventLogItem" search="EventLogItem/EID" type="mir" />
29
+ <Content type="int">6009</Content>
30
+ </IndicatorItem>
31
+ <IndicatorItem id="16db1a80-af40-45fc-9db6-484bf372213b" condition="is">
32
+ <Context document="UserItem" search="UserItem/Username" type="mir" />
33
+ <Content type="string">Administrator</Content>
34
+ </IndicatorItem>
35
+ <IndicatorItem id="9a87eb7e-2b26-40a1-a8f6-7afa7d546aeb" condition="is">
36
+ <Context document="ServiceItem" search="ServiceItem/name" type="mir" />
37
+ <Content type="string">TrkWks</Content>
38
+ </IndicatorItem>
39
+ <IndicatorItem id="0f605238-d7e1-4c5b-970c-071e50b82c22" condition="contains">
40
+ <Context document="RegistryItem" search="RegistryItem/Path" type="mir" />
41
+ <Content type="string">\DosDevices\C:</Content>
42
+ </IndicatorItem>
43
+ <IndicatorItem id="e0b70fd0-38ac-4da2-a0eb-a9a9bb90e78f" condition="is">
44
+ <Context document="PortItem" search="PortItem/localPort" type="mir" />
45
+ <Content type="string">445</Content>
46
+ </IndicatorItem>
47
+ <IndicatorItem id="faed6244-b531-46e1-9be9-baf19fc977b7" condition="is">
48
+ <Context document="VolumeItem" search="VolumeItem/DriveLetter" type="mir" />
49
+ <Content type="string">C</Content>
50
+ </IndicatorItem>
51
+ <IndicatorItem id="2e463fa6-fe0e-403c-9fa9-894bd42f8a82" condition="is">
52
+ <Context document="DiskItem" search="DiskItem/DiskName" type="mir" />
53
+ <Content type="string">\\.\PhysicalDrive0</Content>
54
+ </IndicatorItem>
55
+ <IndicatorItem id="a7fdaf04-51dc-4c7e-a1e1-d4baf40e863d" condition="is">
56
+ <Context document="HookItem" search="HookItem/HookedModule" type="mir" />
57
+ <Content type="string">disk.sys</Content>
58
+ </IndicatorItem>
59
+ <IndicatorItem id="f23f9121-9618-43c0-860b-d0f7122e23de" condition="is">
60
+ <Context document="DriverItem" search="DriverItem/DriverName" type="mir" />
61
+ <Content type="string">disk.sys</Content>
62
+ </IndicatorItem>
63
+ <Indicator operator="AND" id="990fbe29-6af6-45cb-b07e-6d13c5a30617">
64
+ <IndicatorItem id="de7c6347-34d8-4a16-b559-38d9f4e6aabb" condition="is">
65
+ <Context document="FileItem" search="FileItem/FileName" type="mir" />
66
+ <Content type="string">sens.dll</Content>
67
+ </IndicatorItem>
68
+ <IndicatorItem id="96b8856c-f865-4805-93ed-aa8780b87617" condition="is">
69
+ <Context document="FileItem" search="FileItem/PEInfo/DigitalSignature/SignatureExists" type="mir" />
70
+ <Content type="string">true</Content>
71
+ </IndicatorItem>
72
+ </Indicator>
73
+ </Indicator>
74
+ </definition>
75
+ </ioc>
@@ -0,0 +1,14 @@
1
+ <?xml version="1.0" encoding="us-ascii"?>
2
+ <ioc xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" id="efce87c7-f78f-4e32-8f3f-b470d1ec693f" last-modified="2013-01-07T01:29:04" xmlns="http://schemas.mandiant.com/2010/ioc">
3
+ <short_description>*New Unsaved Indicator*</short_description>
4
+ <authored_date>2013-01-07T01:25:50</authored_date>
5
+ <links />
6
+ <definition>
7
+ <Indicator operator="OR" id="336a594b-3302-4ac8-9512-4f329d660515">
8
+ <IndicatorItem id="1d1ca6f3-6bf9-4c8a-812e-3e9879f5ad29" condition="contains">
9
+ <Context document="DnsEntryItem" search="DnsEntryItem/Host" type="mir" />
10
+ <Content type="string">www.google.com</Content>
11
+ </IndicatorItem>
12
+ </Indicator>
13
+ </definition>
14
+ </ioc>
@@ -0,0 +1,17 @@
1
+ require "test/unit"
2
+ require "RubyIOC"
3
+
4
+ class TestIocItemFactory < Test::Unit::TestCase
5
+ def test_factories_exist
6
+ assert_not_nil RubyIOC::IOCItem::IOCItemFactory.factories
7
+ assert_not_equal RubyIOC::IOCItem::IOCItemFactory.factories.size, 0
8
+ end
9
+
10
+ #def test_factories_can_be_retrieved
11
+ # RubyIOC::IOCItem::IOCItemFactory.factories.each { |f|
12
+ # type = f.new.get_type
13
+ # assert_not_nil RubyIOC::IOCItem::IOCItemFactory.item_for(type)
14
+ # assert_equal RubyIOC::IOCItem::IOCItemFactory.item_for(type).get_type, type
15
+ # }
16
+ #end
17
+ end
data/test/test_scan.rb ADDED
@@ -0,0 +1,16 @@
1
+ require "test/unit"
2
+ require "RubyIOC"
3
+
4
+ class TestScan < Test::Unit::TestCase
5
+ def test_scan
6
+ # find_windows_ioc = File.expand_path(File.dirname(__FILE__)) + "/find_windows.ioc"
7
+ # test_user_item = File.expand_path(File.dirname(__FILE__)) + "/test_user_item.ioc"
8
+ #RubyIOC::Scanner.new(File.read(test_user_item)).scan
9
+ # puts RubyIOC::Scanner.new(File.read(test_user_item)).scan
10
+ end
11
+
12
+ def test_dns_scan
13
+ dns_test_ioc = File.expand_path(File.dirname(__FILE__)) + "/test_dns_entry_item.ioc"
14
+ RubyIOC::Scanner.new(File.read(dns_test_ioc)).scan
15
+ end
16
+ end
@@ -0,0 +1,28 @@
1
+ <?xml version="1.0" encoding="us-ascii"?>
2
+ <ioc xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" id="efce87c7-f78f-4e32-8f3f-b470d1ec693f" last-modified="2013-01-07T01:29:04" xmlns="http://schemas.mandiant.com/2010/ioc">
3
+ <short_description>*New Unsaved Indicator*</short_description>
4
+ <authored_date>2013-01-07T01:25:50</authored_date>
5
+ <links />
6
+ <definition>
7
+ <Indicator operator="OR" id="336a594b-3302-4ac8-9512-4f329d660515">
8
+ <Indicator operator="AND" id="336a594b-3302-4ac8-9512-4f329d660515">
9
+ <IndicatorItem id="1d1ca6f3-6bf9-4c8a-812e-3e9879f5ad29" condition="contains">
10
+ <Context document="UserItem" search="UserItem/username" type="mir" />
11
+ <Content type="string">Guest</Content>
12
+ </IndicatorItem>
13
+ <IndicatorItem id="1d1ca6f3-6bf9-4c8a-812e-3e9879f5ad29" condition="contains">
14
+ <Context document="UserItem" search="UserItem/fullname" type="mir" />
15
+ <Content type="string"></Content>
16
+ </IndicatorItem>
17
+ <IndicatorItem id="ff27c0d0-08db-4223-afa1-cc6269fb2b25" condition="contains">
18
+ <Context document="UserItem" search="UserItem/disabled" type="mir" />
19
+ <Content type="string">true</Content>
20
+ </IndicatorItem>
21
+ </Indicator>
22
+ <IndicatorItem id="1d1ca6f3-6bf9-4c8a-812e-3e9879f5ad29" condition="contains">
23
+ <Context document="UserItem" search="UserItem/username" type="mir" />
24
+ <Content type="string">Guest</Content>
25
+ </IndicatorItem>
26
+ </Indicator>
27
+ </definition>
28
+ </ioc>
data/test/zeus.ioc ADDED
@@ -0,0 +1,69 @@
1
+ <?xml version="1.0" encoding="us-ascii"?>
2
+ <ioc xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" id="6d2a1b03-b216-4cd8-9a9e-8827af6ebf93" last-modified="2011-10-28T19:28:20" xmlns="http://schemas.mandiant.com/2010/ioc">
3
+ <short_description>Zeus</short_description>
4
+ <description>Finds Zeus variants, twexts, sdra64, ntos</description>
5
+ <keywords />
6
+ <authored_by>Mandiant</authored_by>
7
+ <authored_date>0001-01-01T00:00:00</authored_date>
8
+ <links />
9
+ <definition>
10
+ <Indicator operator="OR" id="9c8df971-32a8-4ede-8a3a-c5cb2c1439c6">
11
+ <Indicator operator="AND" id="0781258f-6960-4da5-97a0-ec35fb403cac">
12
+ <IndicatorItem id="50455b63-35bf-4efa-9f06-aeba2980f80a" condition="contains">
13
+ <Context document="ProcessItem" search="ProcessItem/name" type="mir" />
14
+ <Content type="string">winlogon.exe</Content>
15
+ </IndicatorItem>
16
+ <IndicatorItem id="b05d9b40-0528-461f-9721-e31d5651abdc" condition="contains">
17
+ <Context document="ProcessItem" search="ProcessItem/HandleList/Handle/Type" type="mir" />
18
+ <Content type="string">File</Content>
19
+ </IndicatorItem>
20
+ <Indicator operator="OR" id="67505775-6577-43b2-bccd-74603223180a">
21
+ <IndicatorItem id="c5ae706f-c032-4da7-8acd-4523f1dae9f6" condition="contains">
22
+ <Context document="ProcessItem" search="ProcessItem/HandleList/Handle/Name" type="mir" />
23
+ <Content type="string">system32\sdra64.exe</Content>
24
+ </IndicatorItem>
25
+ <IndicatorItem id="25ff12a7-665b-4e45-8b0f-6e5ca7b95801" condition="contains">
26
+ <Context document="ProcessItem" search="ProcessItem/HandleList/Handle/Name" type="mir" />
27
+ <Content type="string">system32\twain_32\user.ds</Content>
28
+ </IndicatorItem>
29
+ <IndicatorItem id="fea11706-9ebe-469b-b30a-4047cfb7436b" condition="contains">
30
+ <Context document="ProcessItem" search="ProcessItem/HandleList/Handle/Type" type="mir" />
31
+ <Content type="string">\WINDOWS\system32\twext.exe</Content>
32
+ </IndicatorItem>
33
+ <IndicatorItem id="94ac992c-8d6d-441f-bfc4-5235f9b09af8" condition="contains">
34
+ <Context document="ProcessItem" search="ProcessItem/HandleList/Handle/Name" type="mir" />
35
+ <Content type="string">system32\twain32\local.ds</Content>
36
+ </IndicatorItem>
37
+ <IndicatorItem id="bc12f44e-7d93-47ea-9cc9-86a2beeaa04c" condition="contains">
38
+ <Context document="ProcessItem" search="ProcessItem/HandleList/Handle/Name" type="mir" />
39
+ <Content type="string">system32\twext.exe</Content>
40
+ </IndicatorItem>
41
+ <IndicatorItem id="1c3f8902-d4e2-443a-a407-15be3951bef9" condition="contains">
42
+ <Context document="ProcessItem" search="ProcessItem/HandleList/Handle/Name" type="mir" />
43
+ <Content type="string">system32\lowsec\user.ds</Content>
44
+ </IndicatorItem>
45
+ <IndicatorItem id="7fab12d1-67ed-4149-b46a-ec50fc622bee" condition="contains">
46
+ <Context document="ProcessItem" search="ProcessItem/HandleList/Handle/Name" type="mir" />
47
+ <Content type="string">system32\lowsec\local.ds</Content>
48
+ </IndicatorItem>
49
+ </Indicator>
50
+ </Indicator>
51
+ <Indicator operator="AND" id="9f7a5703-8a26-45cf-b801-1c13f0f15d40">
52
+ <IndicatorItem id="cf77d82f-0ac9-4c81-af0b-d634f71525b5" condition="contains">
53
+ <Context document="ProcessItem" search="ProcessItem/HandleList/Handle/Type" type="mir" />
54
+ <Content type="string">Mutant</Content>
55
+ </IndicatorItem>
56
+ <Indicator operator="OR" id="83f72cf7-6399-4620-b735-d08ce23ba517">
57
+ <IndicatorItem id="a1250d55-cd63-46cd-9436-e1741f5f42c7" condition="contains">
58
+ <Context document="ProcessItem" search="ProcessItem/HandleList/Handle/Name" type="mir" />
59
+ <Content type="string">__SYSTEM__</Content>
60
+ </IndicatorItem>
61
+ <IndicatorItem id="e033b865-95ba-44ab-baa5-3b1e8e5f348c" condition="contains">
62
+ <Context document="ProcessItem" search="ProcessItem/HandleList/Handle/Name" type="mir" />
63
+ <Content type="string">_AVIRA_</Content>
64
+ </IndicatorItem>
65
+ </Indicator>
66
+ </Indicator>
67
+ </Indicator>
68
+ </definition>
69
+ </ioc>
metadata ADDED
@@ -0,0 +1,103 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: RubyIOC
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - Matt Jezorek
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2013-02-12 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: roxml
16
+ requirement: &14073948 !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: '0'
22
+ type: :runtime
23
+ prerelease: false
24
+ version_requirements: *14073948
25
+ description: RubyIOC is a ruby library used for indicators of compromise
26
+ email:
27
+ - mjezorek@gmail.com
28
+ executables: []
29
+ extensions: []
30
+ extra_rdoc_files: []
31
+ files:
32
+ - .gitignore
33
+ - Gemfile
34
+ - LICENSE
35
+ - README.md
36
+ - Rakefile
37
+ - RubyIOC.gemspec
38
+ - lib/RubyIOC.rb
39
+ - lib/RubyIOC/ioc.rb
40
+ - lib/RubyIOC/iocitem.rb
41
+ - lib/RubyIOC/iocitem/arp_entry_item.rb
42
+ - lib/RubyIOC/iocitem/cookie_history_item.rb
43
+ - lib/RubyIOC/iocitem/disk_item.rb
44
+ - lib/RubyIOC/iocitem/dns_entry_item.rb
45
+ - lib/RubyIOC/iocitem/driver_item.rb
46
+ - lib/RubyIOC/iocitem/event_log_item.rb
47
+ - lib/RubyIOC/iocitem/file_download_history_item.rb
48
+ - lib/RubyIOC/iocitem/file_item.rb
49
+ - lib/RubyIOC/iocitem/form_history_item.rb
50
+ - lib/RubyIOC/iocitem/hash_item.rb
51
+ - lib/RubyIOC/iocitem/hook_item.rb
52
+ - lib/RubyIOC/iocitem/module_item.rb
53
+ - lib/RubyIOC/iocitem/persistence_item.rb
54
+ - lib/RubyIOC/iocitem/port_item.rb
55
+ - lib/RubyIOC/iocitem/prefetch_item.rb
56
+ - lib/RubyIOC/iocitem/process_item.rb
57
+ - lib/RubyIOC/iocitem/registry_hive_item.rb
58
+ - lib/RubyIOC/iocitem/registry_item.rb
59
+ - lib/RubyIOC/iocitem/route_entry_item.rb
60
+ - lib/RubyIOC/iocitem/service_item.rb
61
+ - lib/RubyIOC/iocitem/string_match_item.rb
62
+ - lib/RubyIOC/iocitem/system_info_item.rb
63
+ - lib/RubyIOC/iocitem/system_restore_item.rb
64
+ - lib/RubyIOC/iocitem/task_item.rb
65
+ - lib/RubyIOC/iocitem/timeline_item.rb
66
+ - lib/RubyIOC/iocitem/url_history_item.rb
67
+ - lib/RubyIOC/iocitem/user_item.rb
68
+ - lib/RubyIOC/iocitem/volume_item.rb
69
+ - lib/RubyIOC/iocterm.rb
70
+ - lib/RubyIOC/platform.rb
71
+ - lib/RubyIOC/scanner.rb
72
+ - lib/RubyIOC/version.rb
73
+ - test/find_windows.ioc
74
+ - test/test_dns_entry_item.ioc
75
+ - test/test_iocitem_factory.rb
76
+ - test/test_scan.rb
77
+ - test/test_user_item.ioc
78
+ - test/zeus.ioc
79
+ homepage: ''
80
+ licenses: []
81
+ post_install_message:
82
+ rdoc_options: []
83
+ require_paths:
84
+ - lib
85
+ required_ruby_version: !ruby/object:Gem::Requirement
86
+ none: false
87
+ requirements:
88
+ - - ! '>='
89
+ - !ruby/object:Gem::Version
90
+ version: '0'
91
+ required_rubygems_version: !ruby/object:Gem::Requirement
92
+ none: false
93
+ requirements:
94
+ - - ! '>='
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
97
+ requirements: []
98
+ rubyforge_project: RubyIOC
99
+ rubygems_version: 1.8.16
100
+ signing_key:
101
+ specification_version: 3
102
+ summary: RubyIOC is a ruby library used for indicators of compromise
103
+ test_files: []