Yes you can do that with an [Entry Form][1] in your template.

Have a look at the [assets fields][2] article in the docs, there is a small section about [uploading files from front-end forms][3].

[1]: http://buildwithcraft.com/docs/templating/entry-form
[2]: http://buildwithcraft.com/docs/assets-fields
[3]: http://buildwithcraft.com/docs/assets-fields#uploading-files-from-front-end-entry-forms