HI,
Just noticed that, despite in the back-end the setting for "Display 'add to cart' button for free products" is set to "No", the button isn't in fact displayed but the whole form is rendered in the page markup. This, in some specific browsers results in an issue where the <input type="hidden" (...)> field becomes visible and/or is quite easy to "hack" the button and put the product in the cart.
In the /product/add_to_cart_listing.php file, there should be a condition to enclose this form with the if(!empty($this->row->prices)){ (...) } and avoid the form markup to be rendered, although not visible in most browsers or for the majority of users.
Just noticed this issue, because the free products I have do not render any Add to cart button anywhere, although, twice, users had just added the product to the cart, proceeded to check-out and successfully purchased a 0 (zero) value product. This generates the invoice and all the associated emails.
Hope this help to probably increase some security in the best shop component for Joomla!™