Lucene search
+L

GaussDB Kernel: Controlling the Permission to Execute the SECURITY INVOKER Function

🗓️ 20 Nov 2020 00:00:00Reported by Copyright (C) 2020 Greenbone Networks GmbHType 
openvas
 openvas
🔗 plugins.openvas.org👁 8 Views

Controlling the Permission to Execute the SECURITY INVOKER Function. Protect against unauthorized operations

Code
# Copyright (C) 2020 Greenbone Networks GmbH
# Some text descriptions might be excerpted from (a) referenced
# source(s), and are Copyright (C) by the respective right holder(s).
#
# SPDX-License-Identifier: GPL-2.0-or-later
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.

if(description)
{
  script_oid("1.3.6.1.4.1.25623.1.0.150465");
  script_version("2020-12-21T11:21:37+0000");
  script_tag(name:"last_modification", value:"2020-12-21 11:21:37 +0000 (Mon, 21 Dec 2020)");
  script_tag(name:"creation_date", value:"2020-11-20 10:52:10 +0000 (Fri, 20 Nov 2020)");
  script_tag(name:"cvss_base", value:"0.0");
  script_tag(name:"cvss_base_vector", value:"AV:L/AC:H/Au:S/C:N/I:N/A:N");
  script_tag(name:"qod", value:"97");

  script_name("GaussDB Kernel: Controlling the Permission to Execute the SECURITY INVOKER Function");

  script_category(ACT_GATHER_INFO);
  script_copyright("Copyright (C) 2020 Greenbone Networks GmbH");
  script_family("Policy");
  script_dependencies("compliance_tests.nasl", "gb_huawei_gaussdb_kernel_ssh_login_detect.nasl");
  script_mandatory_keys("huawei/gaussdb_kernel/detected", "Compliance/Launch");

  script_tag(name:"summary", value:"The SECURITY INVOKER function is executed with the permissions of the invoker.
Before invoking a function not created by yourself, check the function content to
prevent the function creator from performing unauthorized operations with your
Permissions.");

  exit(0);
}

include( "policy_functions.inc" );

cmd = "1. If common users or administrators are to execute a SECURITY INVOKER
function not created by themselves, run the following statement to check:
SELECT prosrc FROM pg_proc WHERE proname = ' function_name 'and (upper(a.prosrc) like '%ALTER
USER%' or upper(a.prosrc) like '%ALTER ROLE%' or upper(a.prosrc) like '%GRANT%');
2. If common users or administrators are to perform INSERT, UPDATE, DELETE, or
TRUNCATE operations on tables that are not created by themselves and contain
triggers, run the following statement to check:
SELECT a.prosrc FROM PG_PROC a INNER JOIN PG_TRIGGER c ON a.oid = c.tgfoid INNER JOIN
PG_CLASS b ON b.oid = c.tgrelid AND b.relname = ' table_name ' and (upper(a.prosrc) like '%ALTER
USER%' or upper(a.prosrc) like '%ALTER ROLE%' or upper(a.prosrc) like '%GRANT%');";
title = "Controlling the Permission to Execute the SECURITY INVOKER Function";
solution = "None";
default = "none";
test_type = "Manual Check";

compliant = "incomplete";
value = "None";
comment = "Please check the value manually.";

policy_reporting( result:value, default:default, compliant:compliant, fixtext:solution,
  type:test_type, test:cmd, info:comment );

policy_set_kbs( type:test_type, cmd:cmd, default:default, solution:solution, title:title,
  value:value, compliant:compliant );

exit( 0 );

Data

Build on a solid foundation with Vulners data

We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data

Api

Power your application with Vulners API

The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access

App

Assess and manage vulnerabilities with Vulners tools

Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation