TMA-MYSQL-5.10
Securely Define Stored Procedures and Functions DEFINER and INVOKER
Description
Stored procedure and stored function declarations include a definition of permissions which can be used to escalate permissions. It's important to inspect these settings to ensure they do not unnecessarily escalate privileges.
How it is checked
Audit method: Manual review
This recommendation cannot be checked automatically. A scan lists it with these instructions when you pass --include-manual.
Run SHOW PROCEDURE STATUS; and SHOW FUNCTION STATUS; and inspect Definer and Security_type. For SQL SECURITY DEFINER routines owned by powerful users, review the code (SHOW CREATE PROCEDURE/FUNCTION <name>) and information_schema.routines/parameters.
How it is fixed
Fix method: Guidance or infrastructure patch
Use SQL SECURITY INVOKER where possible, or set DEFINER to a least-privileged account (ALTER/CREATE ... DEFINER=...), and restrict EXECUTE on sensitive routines.
Properties
- Operating systems
- Any
- Tags
- mysqldatabaseauthorizationmanual
- Reference
- CIS Oracle MySQL Community Server 8.4 Benchmark v1.1.0 - 5.10 Securely Define Stored Procedures and Functions DEFINER and INVOKER