Do I have to specify a MIME type if the uploaded file has no extension? In other words is there a default general MIME type?
You can use application/octet-stream
for unknown types.
RFC 2046 states in section 4.5.1:
The "octet-stream" subtype is used to indicate that a body contains arbitrary binary data.