origami 1.2.5 → 1.2.6
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/bin/gui/config.rb +0 -4
- data/bin/gui/imgview.rb +2 -2
- data/bin/gui/menu.rb +11 -3
- data/bin/gui/treeview.rb +9 -3
- data/bin/pdfexplode +220 -0
- data/bin/pdfextract +3 -0
- data/lib/origami/acroform.rb +2 -2
- data/lib/origami/actions.rb +62 -35
- data/lib/origami/annotations.rb +3 -2
- data/lib/origami/array.rb +27 -4
- data/lib/origami/boolean.rb +2 -2
- data/lib/origami/catalog.rb +45 -45
- data/lib/origami/dictionary.rb +87 -14
- data/lib/origami/encryption.rb +46 -24
- data/lib/origami/file.rb +1 -2
- data/lib/origami/filters/ccitt.rb +118 -66
- data/lib/origami/filters/flate.rb +5 -1
- data/lib/origami/filters.rb +84 -2
- data/lib/origami/font.rb +71 -71
- data/lib/origami/graphics/patterns.rb +2 -1
- data/lib/origami/graphics/xobject.rb +123 -1
- data/lib/origami/javascript.rb +2 -1
- data/lib/origami/name.rb +2 -2
- data/lib/origami/null.rb +2 -2
- data/lib/origami/numeric.rb +11 -3
- data/lib/origami/object.rb +37 -16
- data/lib/origami/page.rb +135 -71
- data/lib/origami/parser.rb +11 -4
- data/lib/origami/parsers/pdf/linear.rb +1 -0
- data/lib/origami/parsers/pdf.rb +10 -0
- data/lib/origami/pdf.rb +10 -70
- data/lib/origami/reference.rb +4 -5
- data/lib/origami/signature.rb +22 -8
- data/lib/origami/stream.rb +41 -20
- data/lib/origami/string.rb +15 -6
- data/lib/origami/trailer.rb +9 -5
- data/lib/origami.rb +19 -0
- data/samples/actions/loop/loopgoto.rb +1 -1
- data/samples/actions/loop/loopnamed.rb +2 -2
- data/samples/actions/named/named.rb +1 -1
- data/samples/actions/samba/smbrelay.rb +1 -1
- data/samples/actions/triggerevents/trigger.rb +13 -13
- data/samples/actions/webbug/webbug-browser.rb +1 -1
- data/samples/actions/webbug/webbug-js.rb +1 -1
- data/samples/actions/webbug/webbug-reader.rb +1 -1
- data/samples/attachments/attach.rb +2 -2
- data/samples/exploits/cve-2008-2992-utilprintf.rb +1 -1
- data/samples/exploits/cve-2009-0927-geticon.rb +1 -1
- data/samples/exploits/exploit_customdictopen.rb +2 -2
- data/samples/exploits/getannots.rb +1 -1
- data/samples/javascript/js.rb +2 -2
- data/test/ts_pdf.rb +23 -23
- metadata +71 -86
data/test/ts_pdf.rb
CHANGED
@@ -23,28 +23,28 @@ rescue LoadError
|
|
23
23
|
end
|
24
24
|
include Origami
|
25
25
|
|
26
|
-
class TS_PdfTests
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
end
|
26
|
+
#class TS_PdfTests
|
27
|
+
# def self.suite
|
28
|
+
# suite = Test::Unit::TestSuite.new "PDF test suite"
|
29
|
+
# suite << TC_PdfParse.suite
|
30
|
+
# suite << TC_PdfNew.suite
|
31
|
+
# suite << TC_Streams.suite
|
32
|
+
# suite << TC_Pages.suite
|
33
|
+
# suite << TC_PdfEncrypt.suite
|
34
|
+
# suite << TC_PdfSig.suite
|
35
|
+
# suite << TC_PdfAttach.suite
|
36
|
+
# suite << TC_Actions.suite
|
37
|
+
# suite << TC_Annotations.suite
|
38
|
+
# suite
|
39
|
+
# end
|
40
|
+
#end
|
41
41
|
|
42
|
-
if ARGV.size > 0 and ARGV[0] == "gtk"
|
43
|
-
require 'test/unit/ui/gtk2/testrunner'
|
44
|
-
Test::Unit::UI::GTK2::TestRunner.run(TS_PdfTests)
|
45
|
-
else
|
46
|
-
require 'test/unit/ui/console/testrunner'
|
47
|
-
Test::Unit::UI::Console::TestRunner.run(TS_PdfTests)
|
48
|
-
end
|
42
|
+
#if ARGV.size > 0 and ARGV[0] == "gtk"
|
43
|
+
# require 'test/unit/ui/gtk2/testrunner'
|
44
|
+
# Test::Unit::UI::GTK2::TestRunner.run(TS_PdfTests)
|
45
|
+
#else
|
46
|
+
# require 'test/unit/ui/console/testrunner'
|
47
|
+
# Test::Unit::UI::Console::TestRunner.run(TS_PdfTests)
|
48
|
+
#end
|
49
49
|
|
50
|
-
exit 0
|
50
|
+
#exit 0
|
metadata
CHANGED
@@ -1,29 +1,21 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: origami
|
3
|
-
version: !ruby/object:Gem::Version
|
4
|
-
|
5
|
-
prerelease:
|
6
|
-
segments:
|
7
|
-
- 1
|
8
|
-
- 2
|
9
|
-
- 5
|
10
|
-
version: 1.2.5
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 1.2.6
|
11
5
|
platform: ruby
|
12
|
-
authors:
|
6
|
+
authors:
|
13
7
|
- Guillaume Delugre
|
14
8
|
autorequire:
|
15
9
|
bindir: bin
|
16
10
|
cert_chain: []
|
17
|
-
|
18
|
-
date: 2013-01-28 00:00:00 Z
|
11
|
+
date: 2013-05-14 00:00:00.000000000 Z
|
19
12
|
dependencies: []
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
13
|
+
description: "Origami is a PDF-compliant parser. This is not a PDF rendering library,
|
14
|
+
it aims at providing a scripting tool to generate and analyze malicious PDF files.
|
15
|
+
\nAs well, it can be used to create on-the-fly customized PDFs, or to inject (evil)
|
16
|
+
code into already existing documents.\n"
|
25
17
|
email: guillaume at security-labs dot org
|
26
|
-
executables:
|
18
|
+
executables:
|
27
19
|
- pdfdecompress
|
28
20
|
- pdfdecrypt
|
29
21
|
- pdfencrypt
|
@@ -36,13 +28,42 @@ executables:
|
|
36
28
|
- pdfsh
|
37
29
|
- pdfwalker
|
38
30
|
- pdf2pdfa
|
31
|
+
- pdfexplode
|
39
32
|
extensions: []
|
40
|
-
|
41
33
|
extra_rdoc_files: []
|
42
|
-
|
43
|
-
files:
|
34
|
+
files:
|
44
35
|
- README
|
45
36
|
- COPYING.LESSER
|
37
|
+
- bin/config/pdfcop.conf.yml
|
38
|
+
- bin/gui/COPYING
|
39
|
+
- bin/gui/about.rb
|
40
|
+
- bin/gui/config.rb
|
41
|
+
- bin/gui/file.rb
|
42
|
+
- bin/gui/gtkhex.rb
|
43
|
+
- bin/gui/hexview.rb
|
44
|
+
- bin/gui/imgview.rb
|
45
|
+
- bin/gui/menu.rb
|
46
|
+
- bin/gui/properties.rb
|
47
|
+
- bin/gui/signing.rb
|
48
|
+
- bin/gui/textview.rb
|
49
|
+
- bin/gui/treeview.rb
|
50
|
+
- bin/gui/walker.rb
|
51
|
+
- bin/gui/xrefs.rb
|
52
|
+
- bin/pdf2graph
|
53
|
+
- bin/pdf2pdfa
|
54
|
+
- bin/pdf2ruby
|
55
|
+
- bin/pdfcocoon
|
56
|
+
- bin/pdfcop
|
57
|
+
- bin/pdfdecompress
|
58
|
+
- bin/pdfdecrypt
|
59
|
+
- bin/pdfencrypt
|
60
|
+
- bin/pdfexplode
|
61
|
+
- bin/pdfextract
|
62
|
+
- bin/pdfmetadata
|
63
|
+
- bin/pdfsh
|
64
|
+
- bin/pdfwalker
|
65
|
+
- bin/shell/console.rb
|
66
|
+
- bin/shell/hexdump.rb
|
46
67
|
- lib/origami.rb
|
47
68
|
- lib/origami/3d.rb
|
48
69
|
- lib/origami/acroform.rb
|
@@ -83,58 +104,29 @@ files:
|
|
83
104
|
- lib/origami/header.rb
|
84
105
|
- lib/origami/javascript.rb
|
85
106
|
- lib/origami/linearization.rb
|
107
|
+
- lib/origami/metadata.rb
|
108
|
+
- lib/origami/name.rb
|
86
109
|
- lib/origami/null.rb
|
110
|
+
- lib/origami/numeric.rb
|
87
111
|
- lib/origami/obfuscation.rb
|
112
|
+
- lib/origami/object.rb
|
88
113
|
- lib/origami/outline.rb
|
114
|
+
- lib/origami/outputintents.rb
|
115
|
+
- lib/origami/page.rb
|
116
|
+
- lib/origami/parser.rb
|
89
117
|
- lib/origami/parsers/fdf.rb
|
90
118
|
- lib/origami/parsers/pdf.rb
|
91
119
|
- lib/origami/parsers/pdf/linear.rb
|
92
120
|
- lib/origami/parsers/ppklite.rb
|
93
|
-
- lib/origami/xfa.rb
|
94
|
-
- lib/origami/name.rb
|
95
|
-
- lib/origami/object.rb
|
96
|
-
- lib/origami/outputintents.rb
|
97
|
-
- lib/origami/page.rb
|
98
|
-
- lib/origami/metadata.rb
|
99
121
|
- lib/origami/pdf.rb
|
122
|
+
- lib/origami/reference.rb
|
100
123
|
- lib/origami/signature.rb
|
101
124
|
- lib/origami/stream.rb
|
102
125
|
- lib/origami/string.rb
|
103
|
-
- lib/origami/parser.rb
|
104
|
-
- lib/origami/numeric.rb
|
105
|
-
- lib/origami/reference.rb
|
106
126
|
- lib/origami/trailer.rb
|
107
127
|
- lib/origami/webcapture.rb
|
128
|
+
- lib/origami/xfa.rb
|
108
129
|
- lib/origami/xreftable.rb
|
109
|
-
- bin/config/pdfcop.conf.yml
|
110
|
-
- bin/gui/COPYING
|
111
|
-
- bin/gui/file.rb
|
112
|
-
- bin/gui/gtkhex.rb
|
113
|
-
- bin/gui/hexview.rb
|
114
|
-
- bin/gui/textview.rb
|
115
|
-
- bin/gui/treeview.rb
|
116
|
-
- bin/gui/walker.rb
|
117
|
-
- bin/gui/xrefs.rb
|
118
|
-
- bin/gui/about.rb
|
119
|
-
- bin/gui/config.rb
|
120
|
-
- bin/gui/imgview.rb
|
121
|
-
- bin/gui/menu.rb
|
122
|
-
- bin/gui/properties.rb
|
123
|
-
- bin/gui/signing.rb
|
124
|
-
- bin/pdf2graph
|
125
|
-
- bin/pdf2pdfa
|
126
|
-
- bin/pdf2ruby
|
127
|
-
- bin/pdfcocoon
|
128
|
-
- bin/pdfcop
|
129
|
-
- bin/pdfdecompress
|
130
|
-
- bin/pdfdecrypt
|
131
|
-
- bin/pdfencrypt
|
132
|
-
- bin/pdfextract
|
133
|
-
- bin/pdfmetadata
|
134
|
-
- bin/pdfsh
|
135
|
-
- bin/pdfwalker
|
136
|
-
- bin/shell/console.rb
|
137
|
-
- bin/shell/hexdump.rb
|
138
130
|
- samples/README.txt
|
139
131
|
- samples/actions/launch/calc.rb
|
140
132
|
- samples/actions/launch/winparams.rb
|
@@ -165,37 +157,30 @@ files:
|
|
165
157
|
- bin/shell/.irbrc
|
166
158
|
- test/ts_pdf.rb
|
167
159
|
homepage: http://code.google.com/p/origami-pdf
|
168
|
-
licenses:
|
169
|
-
|
160
|
+
licenses:
|
161
|
+
- LGPL-3
|
162
|
+
metadata: {}
|
170
163
|
post_install_message:
|
171
164
|
rdoc_options: []
|
172
|
-
|
173
|
-
require_paths:
|
165
|
+
require_paths:
|
174
166
|
- lib
|
175
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
176
|
-
|
177
|
-
|
178
|
-
|
179
|
-
|
180
|
-
|
181
|
-
|
182
|
-
|
183
|
-
|
184
|
-
|
185
|
-
|
186
|
-
requirements:
|
187
|
-
- - ">="
|
188
|
-
- !ruby/object:Gem::Version
|
189
|
-
hash: 3
|
190
|
-
segments:
|
191
|
-
- 0
|
192
|
-
version: "0"
|
193
|
-
requirements:
|
167
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
168
|
+
requirements:
|
169
|
+
- - '>='
|
170
|
+
- !ruby/object:Gem::Version
|
171
|
+
version: '0'
|
172
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
173
|
+
requirements:
|
174
|
+
- - '>='
|
175
|
+
- !ruby/object:Gem::Version
|
176
|
+
version: '0'
|
177
|
+
requirements:
|
194
178
|
- ruby-gtk2 if you plan to run the PDF Walker interface
|
195
179
|
rubyforge_project:
|
196
|
-
rubygems_version:
|
180
|
+
rubygems_version: 2.0.0
|
197
181
|
signing_key:
|
198
|
-
specification_version:
|
199
|
-
summary: Origami aims at providing a scripting tool to generate and analyze malicious
|
200
|
-
|
182
|
+
specification_version: 4
|
183
|
+
summary: Origami aims at providing a scripting tool to generate and analyze malicious
|
184
|
+
PDF files.
|
185
|
+
test_files:
|
201
186
|
- test/ts_pdf.rb
|