@@ -371,13 +371,33 @@ public void bad10(@RequestParam String user) { // $ hasCsrfUnprotectedRequestTyp
371371 myBatisService .bad10 (user );
372372 }
373373
374- // Test name-based heuristic
374+ // Test name-based heuristic for method names that imply a state-change
375+ @ GetMapping (value = "transfer" )
376+ public String transfer (@ RequestParam String user ) { return "transfer" ; } // $ hasCsrfUnprotectedRequestType
375377
376- // BAD: method name implies a state-change
377- @ GetMapping (value = "delete" )
378- public String delete (@ RequestParam String user ) { // $ hasCsrfUnprotectedRequestType
379- return "delete" ;
380- }
378+ @ GetMapping (value = "transfer" )
379+ public String transferData (@ RequestParam String user ) { return "transfer" ; } // $ hasCsrfUnprotectedRequestType
380+
381+ @ GetMapping (value = "transfer" )
382+ public String doTransfer (@ RequestParam String user ) { return "transfer" ; } // $ hasCsrfUnprotectedRequestType
383+
384+ @ GetMapping (value = "transfer" )
385+ public String doTransferAllData (@ RequestParam String user ) { return "transfer" ; } // $ hasCsrfUnprotectedRequestType
386+
387+ @ GetMapping (value = "transfer" )
388+ public String doDataTransfer (@ RequestParam String user ) { return "transfer" ; } // $ hasCsrfUnprotectedRequestType
389+
390+ @ GetMapping (value = "transfer" )
391+ public String transfered (@ RequestParam String user ) { return "transfer" ; } // OK: we look for 'transfer' only
392+
393+ @ GetMapping (value = "transfer" )
394+ public String dotransfer (@ RequestParam String user ) { return "transfer" ; } // OK: we look for 'transfer' within camelCase only
395+
396+ @ GetMapping (value = "transfer" )
397+ public String doTransferdata (@ RequestParam String user ) { return "transfer" ; } // OK: we look for 'transfer' within camelCase only
398+
399+ @ GetMapping (value = "transfer" )
400+ public String getTransfer (@ RequestParam String user ) { return "transfer" ; } // OK: starts with 'get'
381401
382402 // Test Stapler web methods with name-based heuristic
383403
0 commit comments