Changeset 4007
- Timestamp:
- 10/02/06 15:39:52 (2 years ago)
- Files:
-
- framework3/trunk/data/msfweb/app/controllers/payloads_controller.rb (modified) (1 diff)
- framework3/trunk/data/msfweb/app/models/payload.rb (modified) (1 diff)
- framework3/trunk/data/msfweb/app/views/payloads/view.rhtml (modified) (2 diffs)
- framework3/trunk/data/msfweb/public/stylesheets/windows.css (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
framework3/trunk/data/msfweb/app/controllers/payloads_controller.rb
r3996 r4007 16 16 render_text "Unknown module specified." 17 17 end 18 19 @module_step = (params[:step] || 0).to_i 18 20 19 if params[:step] 20 @module_step = params[:step] 21 if @module_step == 1 22 modinst = Payload.create(@tmod.refname) 23 badchars = params[:badchars] 24 pencoder = params[:encoder] 25 pformat = params[:format] 26 max_size = (params[:max_size] || 0).to_i 27 payload_opts = '' 28 29 params.each_pair { |k, v| 30 next if (v == nil or v.length == 0) 31 if (k =~ /^opt_(.*)$/) 32 payload_opts += "#{$1}=#{v} " 33 end 34 } 35 36 begin 37 @generation = modinst.generate_simple( 38 'Encoder' => (pencoder == '__default') ? nil : pencoder, 39 'BadChars' => badchars, 40 'Format' => pformat || 'c', 41 'OptionStr' => payload_opts, 42 'MaxSize' => (max_size == 0) ? nil : max_size) 43 rescue 44 @generation = $! 45 end 21 46 end 22 47 # end of view method 23 48 end 24 49 framework3/trunk/data/msfweb/app/models/payload.rb
r3980 r4007 5 5 mods 6 6 end 7 8 def self.create(refname) 9 modinst = $msframework.payloads.create(refname) 10 modinst 11 end 7 12 end framework3/trunk/data/msfweb/app/views/payloads/view.rhtml
r4001 r4007 1 1 <table align="center" width="100%" cellspacing="0" cellpadding="2" border="0" class="moduleInfo"> 2 2 3 3 <tr> 4 4 <p class="moduleName"> … … 45 45 <td><%= @tmod.platform_to_s %></td> 46 46 </tr> 47 </div> 47 48 <tr> 49 <th colspan="2"></th> 50 </tr> 51 52 <% if @module_step == 0 %> 53 54 <tr> 55 <th colspan="2" class="moduleOptionsHeader">Options</th> 56 </tr> 57 58 <form action="/payloads/view" method="post"> 48 59 49 <%= start_form_tag%>50 60 <%= hidden_field_tag "id", h(params[:id]) %> 61 <%= hidden_field_tag "step", "1" %> 51 62 <% @tmod.options.each { |name, option| 52 63 next if (option.advanced?) 53 64 next if (option.evasion?) %> 54 <%= name %> 55 <%= (option.required?) ? "Required" : "Optional" %> 56 <%= option.type %> 57 <input type='text' name="opt_<%= html_escape(name) %>" value="<%= html_escape(option.default || '') %>"/> 58 <%= html_escape(option.desc) %> 65 <tr> 66 <td><strong><%= name %></strong></td> 67 <td><strong><%= (option.required?) ? "Required" : "Optional" %></strong></td> 68 </tr> 69 <tr> 70 <td><%= html_escape(option.desc) %> (type: <%= option.type %>)</td> 71 <td> 72 <input type="text" name="opt_<%= h(name) %>" value="<%= h(option.default || '') %>"/> 73 </td> 74 </tr> 59 75 <% } %> 76 77 <tr> 78 <td>Max Size:</td> 79 <td><input type="text" name="max_size" size="10"/></td> 80 </tr> 81 82 <tr> 83 <td>Restricted Characters (format: 0x00 0x01):</td> 84 <td><input type="text" name="badchars" size="25" value="0x00 "/></td> 85 </tr> 86 87 <tr> 88 <td>Selected Encoder:</td> 89 <td> 90 <select name="encoder" size="1"> 91 <option value="__default">Default 92 <% @tmod.compatible_encoders.each { |encname, mod| %> 93 <option><%= encname %></option> 94 <% } %> 95 </select> 96 </td> 97 </tr> 60 98 61 Max Size: 62 <input type="text" name="max_size" size="10"/> 63 Restricted Characters (format: 0x00 0x01): 64 <input type="text" name='badchars' size='45' value='0x00 '/> 65 Selected Encoder:<br/> 66 <select name="encoder" size='1'> 67 <option value='__default'>Default 68 <% @tmod.compatible_encoders.each { |encname, mod| %> 69 <option><%= encname %> 70 <% } %> 71 </select> 72 73 Format:<br/> 74 <select name='format' size='1'> 75 <option value='c'>C 76 <option value='ruby'>Ruby 77 <option value='perl'>Perl 78 <option value='raw'>Raw 79 </select> 80 81 <%= submit_tag %> 82 <%= end_form_tag %> 99 <tr> 100 <td>Format:</td> 101 <td> 102 <select name="format" size="1"> 103 <option value="c">C</option> 104 <option value="ruby">Ruby</option> 105 <option value="perl">Perl</option> 106 <option value="raw">Raw</option> 107 </select> 108 </td> 109 </tr> 110 111 <tr> 112 <td><%= submit_tag "Generate" %></td> 113 </tr> 114 115 </form> 116 <% else %> 117 118 <tr> 119 <th colspan="2" class="moduleOptionsHeader"> 120 Payload code 121 (<%= link_to "back", :action => "view", :id => h(params[:id]) %>) 122 </th> 123 </tr> 124 125 <tr> 126 <td><pre><%=@generation%></pre></td> 127 </tr> 128 <% end %> 83 129 </table> framework3/trunk/data/msfweb/public/stylesheets/windows.css
r3996 r4007 76 76 text-align: justify; 77 77 } 78 79 th.moduleOptionsHeader { 80 background: #ddd; 81 text-transform: uppercase; 82 }
