The SYS account is in a Profile that enforces password expiration.
There are two ways of tackling this.
The first is just to deal with it and change the password when[ever] it expires, making sure that you store the new password somewhere safe so that your fellow DBAs can find it. If you're running Data Guard and OEM insists on connecting as SYS instead of DBSNMP to manage it, you also have to update the password in OEM, which is a Royal pain.
The alternative is to prevent the password from expiring at all. To do so, you need to reconfigure the Profile that the SYS account belongs to, or create a new profile with the necessary properties:
select username, profile
where username = 'SYS' ;
select profile, limit
where resource_name = 'PASSWORD_LIFE_TIME' ;