Affected software: PHP pro bid v 6.04 (as at 2008-09-11) Vendor description: The Leading Proffessional (sic) Auction Script Software available online today written in PHP/ Mysql Impact: SQL injection Description: categories.php and other pages of php pro bid accept user-supplied order-by and ASC/DESC fields. The software prints helpful messages too: SQL Query: SELECT a.auction_id, a.name, a.start_price, a.max_bid, a.nb_bids, a.currency, a.end_time, a.closed, a.bold, a.hl, a.buyout_price, a.is_offer, a.reserve_price, a.owner_id FROM probid_auctions a WHERE a.active=1 AND a.approved=1 AND a.closed=0 AND a.deleted=0 AND a.list_in!='store' AND a.creation_in_progress=0 GROUP BY a.auction_id ORDER BY (select 1)x LIMIT 0, 20 Leveraging an admin user name and password is left as an exercise to the reader. Demo: http://example.com/phpprobidlocation/categories.php?start=0&limit=20&parent_id=669&keywords_cat_search=&buyout_price=&reserve_price=&quantity=&enable_swap=&order_field=(select%201)x&order_type=%20 Solution: - Don't let junior programmers add sort-by column features. The original design was much nicer than the later hacks. - If you fix a bug (for example, in search.php), take the trouble to look for equivalent bugs in other pages. Did I mention that the bug is on another page too? Not? Oh well. Timeline: - Posted this as a comment on the vendor contact-us web form last week. - Sent this to bugtraq this week (yesterday) - Bugtraq said post not exploits against live sites - URL of vendor demo site duly censored, in the interests of full disclosure