I built VisualForce page with form to Insert and update account records, it works like a charm, but when I checked account object permission for guest profile, I found there's no read nor create permission, and I still able to create and update account records, I noticed this issue in winter 19 release.
In case if anyone to try it, first register a domain then create site, and create visualforce page with controller using the following code
<apex:page controller="test" showHeader="false">
<apex:form >
<apex:commandButton action="{!save}" value="Save"/>
</apex:form>
</apex:page>
public with sharing class test{
public test(){
}
public void save(){
Account a = new Account();
a.Name = 'Test' + Datetime.now().format();
insert a;
a.Phone = Datetime.now().format();
update a;
}
}
Without giving permission for guest profile, the guest user will be able to create and update account.