X-Git-Url: https://gapil.gnulinux.it/gitweb/?p=gapil.git;a=blobdiff_plain;f=procadv.tex;h=53eb58a52f8ee3d9142fdc06516359b542faf5f0;hp=ebef64305d1095571f98325413d9f99c4130de8f;hb=HEAD;hpb=4fd7e210cdb76c7e88deba4f2283dc6b8931a8d9 diff --git a/procadv.tex b/procadv.tex index ebef643..d8314d7 100644 --- a/procadv.tex +++ b/procadv.tex @@ -573,7 +573,8 @@ opportuno dettagliare maggiormente. \end{table} % TODO: verificare ed aggiungere le nuove capacità CAP_BPF, CAP_PERFMON, vedi -% https://lwn.net/Articles/822362/ +% https://lwn.net/Articles/822362/ anche CAP_CHECKPOINT_RESTORE vedi +% https://lwn.net/Articles/822362/ e https://git.kernel.org/linus/74858abbb103 \constbeg{CAP\_SETPCAP} @@ -1321,8 +1322,6 @@ funzione. - - \subsection{La gestione del \textit{Secure Computing}.} \label{sec:procadv_seccomp} @@ -1361,6 +1360,10 @@ essere fornito in una forma di codice interpretabile fornito attraverso un socket o una \textit{pipe}, creati prima di lanciare il processo che eseguirà il codice non fidato. +% TODO: a partire dal kernel 6.6 è stato introdotto +% SECCOMP_USER_NOTIF_FD_SYNC_WAKE_UP that indicates that events from the +% watched process will be handled synchronously; that allows the kernel to +% schedule the two processes more efficiently (da LWN) % TODO a partire dal kernel 3.5 è stato introdotto la possibilità di usare un % terzo argomento se il secondo è SECCOMP_MODE_FILTER, vedi @@ -1373,7 +1376,11 @@ il codice non fidato. % TODO a partire dal kernel 3.17 è stata introdotta la nuova syscall seccomp, % vedi http://lwn.net/Articles/600250/ e http://lwn.net/Articles/603321/ +% sempre per seccomp vedi https://lwn.net/Articles/799557/ dal 5.11 supporto +% per le constant-action bitmaps https://lwn.net/Articles/834785/ +% TODO un esempio di uso di seccomp è su +% https://blog.cloudflare.com/sandboxing-in-linux-with-zero-lines-of-code/ \itindend{secure~computing~mode} @@ -1559,8 +1566,13 @@ all'ordinario valore nullo (dato per implicito). %TODO: trattare PR_CAP_AMBIENT, dal 4.3 %TODO: trattare PR_CAP_FP_*, dal 4.0, solo per MIPS -%TODO: trattare PR_MPX_*_MANAGEMENT, dal 3.19 +%TODO: trattare PR_MPX_*_MANAGEMENT, dal 3.19, vedi +% https://lwn.net/Articles/582712/ %TODO: trattare PR_*NO_NEW_PRIVS, dal 3.5 +%TODO: trattare il core scheduling dal 5.14, vedi +%https://lwn.net/Articles/780703/ e https://lwn.net/Articles/861251/ +%TODO: trattare PR_SPEC_L1D_FLUSH vedi https://git.kernel.org/linus/b7fe54f6c2d4 + \begin{basedescript}{\desclabelwidth{1.5cm}\desclabelstyle{\nextlinelabel}} \item[\constd{PR\_CAPBSET\_READ}] Controlla la disponibilità di una delle @@ -1895,10 +1907,19 @@ Introdotta a partire dal kernel 2.4.21, solo su PowerPC. % TODO documentare PR_SET_IO_FLUSHER in 5.6, vedi % https://lwn.net/Articles/811230/ +% TODO documentare PR_SET_SYSCALL_USER_DISPATCH in 5.11, vedi +% https://lwn.net/Articles/826313/ + +% TODO documentare PR_SET_MDWE in 6.3, vedi +% https://git.kernel.org/linus/b507808ebce2 + + \label{sec:prctl_operation} \end{basedescript} + + \subsection{La funzione \func{ptrace}} \label{sec:process_ptrace} @@ -2228,7 +2249,8 @@ degli altri gruppi, che costituisce poi quello che viene chiamato un % TODO: trattare userfaultfd, introdotta con il 4.23, vedi % http://man7.org/linux/man-pages/man2/userfaultfd.2.html, -% https://lwn.net/Articles/787308/, https://git.kernel.org/linus/57e5d4f278b9 +% https://lwn.net/Articles/787308/, https://git.kernel.org/linus/57e5d4f278b9, +% e hardening della stessa (https://lwn.net/Articles/819834/) nel 5.11 % TODO: trattare process_vm_readv/process_vm_writev introdotte con il kernel @@ -2291,6 +2313,9 @@ Da fare % vedi anche l'ulteriore opzione "expedited" introdotta con il kernel 4.14 % (https://lwn.net/Articles/728795/) +% TODO trattare process_mrelease introdotta con il kernel 5.16, vedi: +% https://lwn.net/Articles/864184/ + %%% Local Variables: