Images in media library have suddenly disappeared

The two problems you describe may very well be related. Attachments (images) are stored as posts in the database (so title, caption and so on can be stored in relation to the physical image file). It is this post that you see in the image library.

Normally, the post_status of attachments is inherit. However, if the post_status is set as draft the post won’t be visible in the media library anymore, even as the physical file is still there and the title/caption is still stored in the database.

So, my guess is that either malware or a rogue/ill-programmed plugin has set all you post_statusses to draft. To find out, you should open your PHP Admin, and check the post_status column in the _posts table of your database. If there aren’t a lot of images you can change the post_status manually to make the image posts reappear in the image library (try at least one the check if this solves your problem). Else you’ll have to run an SQL query on the table.