I suppose that you are using crontab with normal user which means that he can't update/upgrade a system without providing a sudo.
apt-get update and
apt-get upgrade will prompt user for confirmation so you have to pass this confirmation before.
yes | apt-get update
yes | apt-get upgrade
So to solve it you have to run your commands with sudo, but this will put you in problem how to provide the password to the sudo.
echo "Update am "$(date "+%Y-%m-%d %H:%M:%S") >> /var/log/update.log
is writing in /var/log/... which means need permission to do that which is not founded for a normal user.
In order to solve that you should run your script in the root cron.
sudo crontab -e
will open the root cron file in your default editor.
Add the entry of your script
0 3 * * * /drives/files/scripts/update.sh
Now save and exit.
PS: just in case, be sure that you give execution permission for your script. to do that run the command:
chmod +x /path-to-script