lsm

프로그램이 HOME 디렉터리에 쓰지 못하도록 하려면 SMACK을 사용하세요.
lsm

프로그램이 HOME 디렉터리에 쓰지 못하도록 하려면 SMACK을 사용하세요.

시작할 때마다 HOME 디렉터리에 빈 폴더를 만드는 바이너리 프로그램이 있습니다. 마음에 안들고 사용하고 싶어요스머커이를 방지하는 메커니즘입니다. 내 생각은 태그를 사용하여 HOME 디렉터리를 표시하고 HOME, 태그를 사용하여 프로그램 프로세스를 표시 NoWriteHome한 다음 세 가지 SMACK 규칙을 작성하는 것입니다. $ sudo setfattr -n security.SMACK64 -v 'HOME' "/home/${USER}" $ sudo setfattr -n securi...

Admin

Linux 커널 소스 트리에 struct lsm_id가 존재하지 않는 이유
lsm

Linux 커널 소스 트리에 struct lsm_id가 존재하지 않는 이유

저는 LSM을 작성하고 있으며 커널 6.2.0-20-generic을 사용하여 컴파일하고 있습니다. /lib/modules/6.2.0-20-generic/build에 있는 파일을 찾아보면 lsm_id라는 구조가 있는 것을 볼 수 있습니다. 그런데 최근 Github에서 Linux 소스 트리를 확인해 보면 이런 구조가 보이지 않습니다. 다른 버전을 다운로드하려고 시도했지만 어떤 Linux 커널 소스 코드에서도 이 구조를 찾을 수 없습니다. 올해 패치가 출시되었다는 것을 알 수 있지만 왜 소스 트리에 해당 ...

Admin

/proc 파일에 파일 컨텍스트 설정
lsm

/proc 파일에 파일 컨텍스트 설정

/procSELinux를 사용하여 파일에 대한 액세스를 최대한 제한 하고 싶습니다 . 내부 디렉토리를 chcon하려고 하면 /proc실패합니다. $ chcon -t staff_proc_t /proc/acpi chcon: failed to change context of '/proc/acpi' to ‘system_u:object_r:staff_proc_t’: Operation not supported 분명히 /proc파일 시스템은 컨텍스트를 직접 변경하는 것을 허용하지 않습니다. /proc항목에 SE...

Admin

시스템 호출을 가로채고 해당 매개변수를 변경합니다.
lsm

시스템 호출을 가로채고 해당 매개변수를 변경합니다.

나는 교차, 필터링, 매개변수 변경 등 시스템 호출을 가능한 모든 방식으로 제어할 수 있는 커널 프로그램을 작성하는 데 관심이 있습니다. 저는 두 가지 목표를 찾고 있습니다. 시스템 호출과 해당 매개변수를 읽고 정책에 따라 이를 차단할지 허용할지 결정합니다. 매개변수를 변경하고 이를 사용자에게 전달할 수 있는 권한이 있습니다. 사실(이 우화가 사실인지는 모르겠습니다.) 커널 및 해당 시스템 호출의 보기를 변경할 수 있는 프로세스에 대해 간단한 가상화를 수행하고 싶습니다(예: "/tmp/new_fo...

Admin

Linux 보안 모듈 - SELinux/AppArmor
lsm

Linux 보안 모듈 - SELinux/AppArmor

누군가 나에게 이유를 설명해 줄 수 있습니까?SELinux는 Ubuntu에서 공식적으로 크랙되었습니다.하지만AppArmor는 훌륭하게 작동합니다? AppArmor는 SELinux와 마찬가지로 "Linux 보안 모듈" 프레임워크를 기반으로 구축되었습니다. 그렇다면 둘 다 우분투에서 원활하게 실행되어서는 안됩니까? 나는 "Linux 보안 모듈" 프레임워크를 잘못 이해하고 있을 수 있습니다. 감사해요! ...

Admin

Debian Buster에서 Linux 커널의 특정 부분만 다시 컴파일하는 방법은 무엇입니까?
lsm

Debian Buster에서 Linux 커널의 특정 부분만 다시 컴파일하는 방법은 무엇입니까?

저는 현재 security커널 소스 트리의 디렉터리에 저장되는 Linux 보안 모듈을 개발 중입니다. 다음 명령을 사용하여 커널을 컴파일하고 설치하면 모듈이 로드되고 모든 것이 제대로 작동합니다. fakeroot make -j9 -f debian/rules.gen binary-arch_amd64_none_amd64 apt remove linux-image-4.19.0-9-amd64-unsigned dpkg -i linux-image-4.19.0-9-amd64-unsigned_4.19.118-2_a...

Admin

LSM 후크 - inode 후크와 경로 후크의 차이점은 무엇입니까
lsm

LSM 후크 - inode 후크와 경로 후크의 차이점은 무엇입니까

아래에는 두 세트의 LSM 후크가 있습니다.inode 작업을 위한 보안 후크: inode_* 및 path_*. 그들 중 다수는 똑같아 보입니다. 예를 들어 inode_link 및 path_link입니다. inode와 경로 후크의 차이점은 무엇입니까? 각각은 언제 사용해야 합니까? ...

Admin

SELinux 및 AppArmor 적용 가능성
lsm

SELinux 및 AppArmor 적용 가능성

LSM 구현에 대한 입문서를 읽고 있으므로 결국 AppArmor에는 SELinux. 알아요이 토론그러나 이것은 두 가지 LSM 구현에 대한 질문을 명확하게 설명하지 않습니다. 이것이 사실입니까? SELinux는 시스템 전체에 적용되어야 합니다(따라서 auto-relabeling첫 번째 부팅 프로세스에는 파일 시스템 검색만큼 많은 시간이 소요됩니다). AppArmor는 원하는 프로세스/스크립트에 대해서만 정책을 정의할 수 있는 유연성을 제공합니다. - 대화형 검토 과정을 통해) (?) ...

Admin

Linux에서 AppArmor 활성화
lsm

Linux에서 AppArmor 활성화

커널(linux-libre-xtreme)을 컴파일했습니다.이 구성, 대부분의 LSM(YAMA, SMACK, AppArmor, TOMOYO 및 SELinux)을 활성화합니다. 그러나 OpenRC를 사용하여 의류 서비스를 시작하면 다음과 같은 결과가 나타납니다. # rc-service apparmor start * Stopping AppArmor ... * Unloading AppArmor profiles * Root privileges not available ...

Admin

MAC인가요, DAC인가요?
lsm

MAC인가요, DAC인가요?

LSM 속성/상한 구현의 유틸리티나 사용법을 보는 데 문제가 있습니다. 나는 내 우려 사항과 질문을 표현하기 위해 몇 가지 유사 코드 조각을 함께 모았습니다. (p 3)의 다이어그램에 따라 모델링됩니다. https://www.kernel.org/doc/ols/2002/ols2002-pages-604-617.pdf 커널 액세스 확인(대략) 및 LSM 호출: DAC op:__? // ? what operation would pass a DAC check yet not the LSM hook ? ...

Admin

Selinux inode 보안 구조 할당
lsm

Selinux inode 보안 구조 할당

inode_security_structSelinux의 할당을 이해하려고 합니다 . selinux의 소스 코드를 찾아보니 이 구조에는 할당이 하나만 있습니다.Hooks.c 파일의 230번째 줄에서. 이 할당은 inode가 생성될 때 호출되는 LSM 후크에 있습니다. 내 질문은 Selinux가 selinux init 이전에 생성된 inode를 어떻게 할당하는가입니다. 감사해요. ...

Admin

POSIX IPC API에 LSM 후크가 없는 이유는 무엇입니까?
lsm

POSIX IPC API에 LSM 후크가 없는 이유는 무엇입니까?

내가 이해한 바에 따르면 LSM(Linux Security Module) 프레임워크에는 보안에 민감한 작업 전에 추가 보안 검사를 수행하는 기능을 등록하는 보안 모듈에 대한 콜백인 후크가 많이 있습니다. 대부분의 경우 이러한 후크는 file. 내가 이해하지 못하는 한 가지는 System V IPC API에는 후크가 있지만 해당 POSIX API에는 후크가 없는 이유입니다. 예를 들어, "모든 System V IPC 작업에 영향을 미치는" 것으로 security_ipc_permission설명되는 후...

Admin

ebpf: 사용자 공간에서 데이터를 보내고 기다립니다.
lsm

ebpf: 사용자 공간에서 데이터를 보내고 기다립니다.

나는 ebpf와 bcc를 사용하여 ebpf-lsm 프로그램을 작성하고 있습니다. 연결된 USB 장치를 차단하고 해당 정보를 사용자 공간으로 보내고 싶습니다. 장치 바인딩 여부에 관계없이 사용자가 나에게 정보를 보냅니다. 어떻게 해야 하나요? ebpf 매핑을 사용하면 사용자 공간에서 데이터를 받을 수 있다는 것을 알고 있는데 어떻게 기다릴 수 있나요? 즉, 사용자가 응답할 때까지 ebpf 프로그램을 어떻게 차단합니까? 안내해 주셔서 감사합니다! ...

Admin