↓ Skip to main content

File upload

Upload features that accept more than the developer thought. An XML invoice, a JSON container import, a dropped PHP file, a malformed image.

2015

patrik.re

XSS via XML File Upload on PayPal

PayPal's invoicing feature accepted .xml attachments, and an XHTML-namespaced script element inside the XML executed when the file was served back. Includes the exploitability argument needed to qualify it for a bounty.

2014

patrik.re

XSS in Google Tag Manager via JSON Import

Google Tag Manager validated macro names in the web UI but not in the JSON container import path, so a payload smuggled through a file upload executed and earned a $5,000 bounty.

patrik.re Archive

Seven PayPal Bugs, Zero Bounties

A 2014 run through PayPal's bug bounty scope: seven confirmed issues across paypal.com, financing.paypal.com, apps.paypal.com and the paypal-*.com family, all closed as duplicate or invalid.

2013

patrik.re Archive

PHP 5.3.3–5.3.6 socket_connect Bind Shell

A public PHP 5.3.3-5.3.6 socket_connect exploit carrying a bind-TCP shell payload, dropped as an uploaded PHP file and located with an nmap sweep of ports 4000-4500.