@ai-ecoverse/slicc-spectrum 1.111.2 → 1.111.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/slicc-ui.js +30 -0
- package/dist/slicc-ui.js.map +2 -2
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -970,7 +970,7 @@ Later backed by: BIOS.
|
|
|
970
970
|
`list()` returns waiting `Approval`s; emit `approvals` when the list changes.
|
|
971
971
|
A `sudo` approval has `id`, `requester` (`kind` `agent` or `user`, `name`, optional `agentId` and `where`, such as a terminal's title), `command` (without `sudo`; bios joins the kernel's argv shell-quoted), optional `target` (the user to run as; shown as `sudo -u {target}` unless `root`), optional `cwd` and `verdict` (`{ decision: 'allow' | 'deny' | 'unsure', reason }`, the automatic check’s view), `createdAt`, `expiresAt` (epoch ms) and `always` (offer Always allow, which covers the requester's user and this exact command).
|
|
972
972
|
With `decide(id, 'once' | 'always' | 'deny')`, which resolves once the decision is recorded and then drops the request from `list()`, the tab shows a warning alert dialog (`dialog[data-approval][data-kind][data-requester]`): "Allow sudo?", "{name} wants to run this with sudo[ in {where}]:" for an agent or "You ran this with sudo[ in {where}] (as {name}):" for a user, the command, "In {cwd}", a notice when the command changes secret rules, what Always allow does, "Denied automatically in m:ss." and how many more wait, with **Deny** (`data-action="deny"`, focused; Escape also denies), **Always allow** (`always`) and **Allow once** (`once`).
|
|
973
|
-
A command that names `/etc/fnox` (or anything in it) or `/etc/slicc/secrets-policy.toml`, resolved against `cwd`, globs included (with quotes and backslashes removed, operands after `--` included; a path with `[`, `{` or `$` counts when the part before it could lead to them), or that names `/`, `/etc` or `/etc/slicc` in a command other than a read-only one (such as `ls`, `cat`, `stat`, `grep`, `jq`, `cut`, `od`, `sha256sum` or `md5sum
|
|
973
|
+
A command that names `/etc/fnox` (or anything in it) or `/etc/slicc/secrets-policy.toml`, resolved against `cwd`, globs included (with quotes and backslashes removed, operands after `--` included; a path with `[`, `{` or `$` counts when the part before it could lead to them), or that names `/`, `/etc` or `/etc/slicc` in a command other than a read-only one (such as `ls`, `cat`, `stat`, `grep`, `jq`, `cut`, `od`, `sha256sum` or `md5sum`, and coreutils' pure output programs, which take no output file and run nothing: `basename`, `dirname`, `printf`, `seq`, `tr`, `fold`, `paste`, `comm`, `join`, `expand`, `unexpand`, `fmt`, `numfmt`, `pr`, `expr`, `factor`, `sum`, `tsort`, `pathchk`, `base32`, `basenc`, `true`, `false`, `id`, `groups`, `whoami`, `logname`, `printenv`, `uname` and `nproc`, so `ls | xargs -n1 basename` is a read; `find` without `-exec`, `-execdir`, `-ok`, `-okdir`, `-delete` or `-fprint`/`-fls`; `sort` without `-o`, `-T` or `--compress-program`; `yq` without `-i`, `-s` or `--split-exp-file`; `base64` without `-o`; `tree` without `-o` or `-R`; `file` without `-C`; `uniq` and `xxd` with one operand at most, counting everything after `--`; a flag counts inside a short cluster, with a value attached (`-o/x`, `-i.bak`), as `--name=value` and abbreviated (the data-write check below reads clusters more exactly: there a cluster ends at `=` or at an option that takes a value, so `yq -o=json` isn't `yq -s`, and an option's value isn't a `uniq` or `xxd` operand); `less` and other pagers aren't, since they run commands), or runs with `cwd` in `/etc/fnox`, or names a relative path with `fnox` or `secrets-policy` in it wherever `cd` may have led, gets "This changes secret rules." with the path (`[data-secret-rules]`, the path in the attribute).
|
|
974
974
|
Read-only commands count only by bare name or from `/bin` and `/usr/bin`.
|
|
975
975
|
In a command made only of read-only commands and with no live expansion, the quoted words count whole: `jq '.a // .b' f` doesn't name `/`, and `jq '{a: .b}' f` in `/etc` isn't a brace that could lead to the rules.
|
|
976
976
|
`/proc/<pid>/root` counts as `/` and `/proc/self/cwd` as `cwd`.
|
package/dist/slicc-ui.js
CHANGED
|
@@ -49777,27 +49777,50 @@ var opaque = /^\/(?:proc\/[^/]+\/(?:task\/[^/]+\/)?(?:cwd|fd|map_files)|dev\/fd)
|
|
|
49777
49777
|
var certain = (rules) => rules.startsWith("/") && !opaque.test(rules) && !rules.endsWith("\u2026");
|
|
49778
49778
|
var readOnly = [
|
|
49779
49779
|
"b2sum",
|
|
49780
|
+
"base32",
|
|
49780
49781
|
"base64",
|
|
49782
|
+
"basename",
|
|
49783
|
+
"basenc",
|
|
49781
49784
|
"cat",
|
|
49782
49785
|
"cd",
|
|
49783
49786
|
"cksum",
|
|
49787
|
+
"comm",
|
|
49784
49788
|
"cut",
|
|
49785
49789
|
"df",
|
|
49786
49790
|
"diff",
|
|
49791
|
+
"dirname",
|
|
49787
49792
|
"du",
|
|
49788
49793
|
"echo",
|
|
49794
|
+
"expand",
|
|
49795
|
+
"expr",
|
|
49796
|
+
"factor",
|
|
49797
|
+
"false",
|
|
49789
49798
|
"file",
|
|
49790
49799
|
"find",
|
|
49800
|
+
"fmt",
|
|
49801
|
+
"fold",
|
|
49791
49802
|
"grep",
|
|
49803
|
+
"groups",
|
|
49792
49804
|
"head",
|
|
49805
|
+
"id",
|
|
49806
|
+
"join",
|
|
49793
49807
|
"jq",
|
|
49808
|
+
"logname",
|
|
49794
49809
|
"ls",
|
|
49795
49810
|
"md5sum",
|
|
49796
49811
|
"nl",
|
|
49812
|
+
"nproc",
|
|
49813
|
+
"numfmt",
|
|
49797
49814
|
"od",
|
|
49815
|
+
"paste",
|
|
49816
|
+
"pathchk",
|
|
49817
|
+
"pr",
|
|
49818
|
+
"printenv",
|
|
49819
|
+
"printf",
|
|
49798
49820
|
"pwd",
|
|
49799
49821
|
"readlink",
|
|
49800
49822
|
"realpath",
|
|
49823
|
+
"seq",
|
|
49801
49824
|
"sha1sum",
|
|
49802
49825
|
"sha224sum",
|
|
49803
49826
|
"sha256sum",
|
|
@@ -49805,11 +49828,18 @@ var readOnly = [
|
|
|
49805
49828
|
"sha512sum",
|
|
49806
49829
|
"sort",
|
|
49807
49830
|
"stat",
|
|
49831
|
+
"sum",
|
|
49808
49832
|
"tac",
|
|
49809
49833
|
"tail",
|
|
49834
|
+
"tr",
|
|
49810
49835
|
"tree",
|
|
49836
|
+
"true",
|
|
49837
|
+
"tsort",
|
|
49838
|
+
"uname",
|
|
49839
|
+
"unexpand",
|
|
49811
49840
|
"uniq",
|
|
49812
49841
|
"wc",
|
|
49842
|
+
"whoami",
|
|
49813
49843
|
"xxd",
|
|
49814
49844
|
"yq"
|
|
49815
49845
|
];
|