@bobfrankston/rmfmail 1.2.313 → 1.2.314
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/.commitmsg +24 -19
- package/.llm/trusted-lists.md +1 -1
- package/client/android-bootstrap.bundle.js +2 -0
- package/client/android-bootstrap.bundle.js.map +2 -2
- package/client/app.bundle.js +7 -0
- package/client/app.bundle.js.map +2 -2
- package/client/components/message-viewer.js +16 -0
- package/client/components/message-viewer.js.map +1 -1
- package/client/components/message-viewer.ts +16 -0
- package/npmchanges.md +25 -0
- package/package.json +1 -1
- package/packages/mailx-types/trust.d.ts.map +1 -1
- package/packages/mailx-types/trust.js +13 -0
- package/packages/mailx-types/trust.js.map +1 -1
- package/packages/mailx-types/trust.ts +41 -0
package/.commitmsg
CHANGED
|
@@ -1,22 +1,27 @@
|
|
|
1
|
-
|
|
1
|
+
Self-spoof: a DMARC-proved From is not a spoof, whatever else failed
|
|
2
2
|
|
|
3
|
-
Bob 2026-09-09,
|
|
4
|
-
|
|
3
|
+
Bob 2026-09-09, the ISOC Internet Policy list post, red banner "This
|
|
4
|
+
message is not what it says it is — claims to be from your own address,
|
|
5
|
+
internetpolicy@elists.isoc.org, but it did not come from your account.
|
|
6
|
+
DKIM authentication failed". The list rewrote From to itself and signed
|
|
7
|
+
it; iecc.com recorded dkim=pass d=elists.isoc.org and dmarc=pass
|
|
8
|
+
header.from=elists.isoc.org — and dkim=fail for the original author's
|
|
9
|
+
standardstrack.com signature the list had broken. Delivered-To was the
|
|
10
|
+
list address, so it counted as one of Bob's own, and selfSpoof read every
|
|
11
|
+
Authentication-Results and every signature and took the one failure as
|
|
12
|
+
"did not come from your account". One broken signature on a message whose
|
|
13
|
+
From domain passed DMARC aligned is not evidence about the From line; the
|
|
14
|
+
pass is. selfSpoof now returns before the failure scan when dmarcProof
|
|
15
|
+
passes for the actual From domain (a pass for some other domain still
|
|
16
|
+
proves nothing — tested).
|
|
5
17
|
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
every proved-list post that stayed red (123 of 1,386 flagged list posts)
|
|
11
|
-
was a phishing or malware URL listing on a throwaway domain that signs
|
|
12
|
-
its own mail, and trusting a list never clears those, so a button there
|
|
13
|
-
would be one that does nothing.
|
|
18
|
+
Measured over the last 120 days: 977 messages whose From is their own
|
|
19
|
+
Delivered-To, 35 self-spoof findings before, 20 after; the 15 cleared are
|
|
20
|
+
all ISOC list posts, the 20 that remain are the sextortion/phish/NDA-scam
|
|
21
|
+
mail the check exists for.
|
|
14
22
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
header reworded: the "do not edit" notice is about the .md itself;
|
|
21
|
-
hand-editing allowlist.jsonc is fine and is how a sender or intermediary
|
|
22
|
-
approval is undone until those get an undo of their own.
|
|
23
|
+
Also: a danger banner on a proved-list post now says which list delivered
|
|
24
|
+
it and that trusting the list (right-click the From address) would not
|
|
25
|
+
clear the finding — a red banner with no way forward sends the reader
|
|
26
|
+
hunting (Bob: "right mouse on the From … that's not obvious to the normal
|
|
27
|
+
user"). mailx-types 0.1.90.
|
package/.llm/trusted-lists.md
CHANGED
|
@@ -46,4 +46,4 @@ tests/trust.test.ts, .commitmsg, TODO.md C165, root version 1.2.311. Then rebuil
|
|
|
46
46
|
- [x] client (banner button, From-menu item, chip tooltip)
|
|
47
47
|
- [x] tests pass (tests/trust.test.ts 40/40)
|
|
48
48
|
- [x] docs/TODO/.commitmsg/versions (v1.2.312)
|
|
49
|
-
- [x] rebuild.cmd —
|
|
49
|
+
- [x] rebuild.cmd — v1.2.312 (feature) + v1.2.313 (chip button + undo toggle) published, APKs built. Restart the app to pick up.
|
|
@@ -2483,6 +2483,8 @@ function selfSpoof(input) {
|
|
|
2483
2483
|
const auth = headerAll(input.headerLines, "authentication-results").join(" ; ");
|
|
2484
2484
|
if (!auth)
|
|
2485
2485
|
return null;
|
|
2486
|
+
if (dmarcProof(input).pass)
|
|
2487
|
+
return null;
|
|
2486
2488
|
const failed = [
|
|
2487
2489
|
/\bspf=(fail|softfail)\b/i.test(auth) ? "SPF" : "",
|
|
2488
2490
|
/\bdkim=(fail|permerror)\b/i.test(auth) ? "DKIM" : "",
|