I don't think you'll be able to reliably do what you are asking. Unless my understanding is wrong, attachments are saved persistently between versions and not saved with each version. To get started with what you want to do you would set your flow up like this:
The get changes for an item or file returns two pieces of data for attachments.
- Has attachments - true or false
- Has attachment count changed - true or false
If you have a condition where you check if it has attachments like above, and someone deletes all of the attachments then the condition will evaluate false. How do you handle this? If the item has one attachment and someone deletes it and replaces it with a new file, the attachment count will remain as 1, so the has attachment count changed value will return false even though a file was replaced.
Once you figure out what your logic should be, then you have the issue of how you figure out what and if any of the attachments has changed since the attachments are not saved with each version you cannot compare the files between versions. You only can get the attachments that are currently attached to the item. You would need to figure out a method to save details of the attachments somewhere else so that they can be compared every time the item is modified.
The attachments are actually saved within a hidden folder structure in the list: /Lists/<ListName>/Attachments/<ItemID>/
Before modern SharePoint, you could navigate this folder structure, but modern SharePoint no longer allows this and you'll get this error if you try: