Cake follows best practices in many areas and has fairly secure tools built in , with an infrastructure that already has many typical webapp security areas. You do not need to worry about SQL injection, for example, since the abstraction of the Cake database escapes all the input. If this is not the case, the guide warns you :
updateAll(array $fields, array $conditions)
! The $ fields array accepts SQL expressions. Literal values must be specified manually.
Using SecurityComponent, you get automatic protection against form spoofing.
Data validation is a large integrated part of the models.
The original AuthComponent hashes and password salts are correct , although this is not necessarily as secure as possible.
There is a convenient h() shortcut for htmlentities , which you should use to exit the output to avoid problems with XSS.
Et cetera perge perge ...
You still have to use all the components correctly, and be careful not to open any “custom” holes. A cake is just a toolbox, but you can still create a terribly unsafe application that uses it. You can still shoot in the foot, no matter how good the gun is. The default Cake structure is just a starting point. This is not the end for everyone in terms of security; think for yourself. The link provided by John is a really good starting point.
deceze
source share