IMA策略修改

2021-08-06 07:11:13 字數 3036 閱讀 7289

預設的ima策略在所有核心原始碼路徑documentation/abi/testing/ima_policy下有說明

# proc_super_magic

dont_measure fsmagic=0x9fa0

# sysfs_magic

dont_measure fsmagic=0x62656572

# debugfs_magic

dont_measure fsmagic=0x64626720

# tmpfs_magic

dont_measure fsmagic=0x01021994

# ramfs_magic

dont_measure fsmagic=0x858458f6

# securityfs_magic

dont_measure fsmagic=0x73636673

measure func=bprm_check

measure func=file_mmap mask=may_exec

measure func=file_check mask=may_read uid=0

measure func=module_check uid=0

func:

mask: 在檔案進行何種操作時進行度量

fsmagic:核心檔案系統super_block結構體中s_magic。如proc檔案系統的s_magic的值是0x9fa0

fsuuid:= file system uuid (e.g 8bcbe394-4f13-4144-be8e-5aa9ea2ce2f6) 通過blkid 獲得

uid:= user id .比如0(root) 或者普通使用者(id -u)。這個uid在資源統計和資源分配中使用。比如限制某使用者擁有的程序數量

euid:= effective bid 即有效uid。在核心做特權判斷時使用它。它的引入和提公升許可權有關。比如核心在做ipc和key的訪問控制時也使用euid

fowner:=decimal value 比如 0(root)

嘗試通過修改ima策略來忽略掉對/tmp、/var/cache等等的度量

我們注釋掉root open檔案這一項,將其寫入ima的policy檔案

檔案/etc/ima_policy

# proc_super_magic

dont_measure fsmagic=0x9fa0

# sysfs_magic

dont_measure fsmagic=0x62656572

# debugfs_magic

dont_measure fsmagic=0x64626720

# tmpfs_magic

dont_measure fsmagic=0x01021994

# ramfs_magic

dont_measure fsmagic=0x858458f6

# securityfs_magic

dont_measure fsmagic=0x73636673

measure func=bprm_check

# dont_measure func=file_check

measure func=file_mmap mask=may_exec

# measure func=file_check mask=may_read uid=0

measure func=module_check uid=0

修改兩個檔案:

/etc/initramfs-tools/hooks/ima.sh

#!/bin/sh

echo

"adding ima binaries"

. /usr/share/initramfs-tools/hook-functions

copy_exec /etc/ima_policy

/etc/initramfs-tools/scripts/local-top/ima.sh

#!/bin/sh -e

prereq=""

# output pre-requisites

prereqs

()case

"$1"

in prereqs)

prereqs

exit

0 ;;

esac

grep -q "ima=off" /proc/cmdline && exit

1mount -n -t securityfs securityfs /sys/kernel/security

ima_policy=/sys/kernel/security/ima/policy

lsm_policy=/etc/ima_policy

grep -v "^#"

$lsm_policy >$ima_policy

為檔案增加可執行許可權

chmod +x /etc/initramfs-tools/hooks/ima.sh

chmod +x /etc/initramfs-tools/scripts/local

-top/ima.sh

grub命令列中加入ima:修改/etc/default/grub

grub_cmdline_linux="ima"

重新生成grub

update-grub2
生成新的initramfs

update-initramfs

-k $(uname -r) -u

重啟後發現ima的ml(/sys/kernel/security/ima/ascii_runtime_measurements)裡已經沒有了諸如/tmp、/var/cache等等檔案的度量資訊,測試完成

MYSQL57密碼策略修改

1 檢視當前的密碼測試 show variables like validate password 2 各項值說明 validate password policy 密碼安全策略,預設medium策略 策略檢查規則 0 or low length 1 or medium length numeric...

svn 命令列提交忽略修改或新增的檔案

在開發中搭建測試環境時,經常碰到開發人員需要根據自己的情況修改本地checkout下來的配置檔案,比如jdbc,config等等,這些修改後的檔案往往是不需要再提交到svn repo中的。不然肯定亂套了。這樣就帶來乙個需求,怎樣才能在提交時忽略掉這些檔案呢?用tortoisesvn很簡單,直接在介面...

mysql修改密碼策略

mysql uroot p123qqq.amysql show variables like password 修改密碼策略 mysql set global validate password length 6 修改密碼長度 mysql set global validate password p...