Local-first, agent-friendly Markdown knowledge base with a cross-platform CLI and web editor
AI Security Review
scanned 2d ago · by lpm-firewall-ai
The inspected manifest and CLI excerpts do not establish malicious behavior, but offline analysis could not resolve the behavior of two bundled Linux native modules. Manual review is needed to determine whether those modules introduce an attack surface.
Runtime loading of a native module on a matching Linux platform.
Impact
The unresolved native behavior prevents a clean assessment; no specific harmful effect is established.
Mechanism
The package includes native modules whose behavior could not be determined by the available offline analysis.
AI rationale
The inspected manifest and CLI excerpts do not establish malicious behavior, but offline analysis could not resolve the behavior of two bundled Linux native modules. Manual review is needed to determine whether those modules introduce an attack surface.
1import{Uo as e}from"./dist-BB-NSwQc.mjs";import{execFile as t}from"node:child_process";const n=new Set([`http:`,`https:`]),r=/[\u0000-\u0020\u007F-\u009F"'`\\&|<>^()$;{}[\]*?!~]/;f...
High
Child Process
Package source references child process execution.
87var t=null;try{t=new WebAssembly.Instance(new WebAssembly.Module(new Uint8Array([0,97,115,109,1,0,0,0,1,13,2,96,0,1,127,96,4,127,127,127,127,1,127,3,7,6,0,1,1,1,1,1,6,6,1,127,1,65,...
L88: changing to the minimum size of: 2`),this._maxSize=2)}record(e){this.updateByIncrement(e,1)}setStartTime(e){this.startTime=e}toPointValue(){return{hasMinMax:this._recordMinMax,min:...
L89: \t- OR - create a new view with the name ${e.name} and description '${e.description}' and InstrumentSelector ${r}
*/
L87: var t=null;try{t=new WebAssembly.Instance(new WebAssembly.Module(new Uint8Array([0,97,115,109,1,0,0,0,1,13,2,96,0,1,127,96,4,127,127,127,127,1,127,3,7,6,0,1,1,1,1,1,6,6,1,127,1,65,...
L88: changing to the minimum size of: 2`),this._maxSize=2)}record(e){this.updateByIncrement(e,1)}setStartTime(e){this.startTime=e}toPointValue(){return{hasMinMax:this._recordMinMax,min:...
L89: \t- OR - create a new view with the name ${e.name} and description '${e.description}' and InstrumentSelector ${r}
...
L97: causes have become circular...`;let o=r(e);return o?(t.add(e),a+`
L98: caused by: `+i(o,t)):a},a=e=>i(e,new Set),o=(e,t,i)=>{if(!n(e))return``;let a=i?``:e.message||``;if(t.has(e))return a+`: ...`;let s=r(e);if(s){t.add(e);let n=typeof e.cause==`funct...
L99: `:`
High
Command Output Exfiltration
Source combines command execution, command-output handling, and outbound requests; review data flow before blocking.
1Cross-file remote execution chain: dist/dist-BB-NSwQc.mjs spawns dist/chunk-5QMZ5MUS-BuB3i_B5.mjs; helper contains network access plus dynamic code execution.
L1: import{a as e,i as t,n,o as r,r as i,t as a}from"./rolldown-runtime-tZXQYakl.mjs";import{$ as o,$a as s,$c as c,$d as l,$i as u,$n as d,$o as f,$r as p,$s as m,$t as h,$u as g,A as...
L2: `,t),r=n===-1?e.length:n;if(r>t&&e[r-1]===`\r`&&--r,r-t>1024)return 0;let i=e.slice(t,r);return i.length===0||!Loe.test(i)&&!Roe.test(i)?0:i.length}const mc=/&#(?:x[0-9A-Fa-f]+|X[0...
...
L66: </div>`}];function Koe(e){return["```html preview",e.html,"```"].join(`
L67: `)}const qoe=[{name:`--chart-1`,light:`oklch(0.62 0.19 259)`,dark:`oklch(0.72 0.14 259)`},{name:`--chart-2`,light:`oklch(0.58 0.14 145)`,dark:`oklch(0.73 0.13 145)`},{name:`--char
High
Cross File Remote Execution Context
Source spawns a local helper that also contains network and dynamic execution context; review data flow before blocking.
1import{t as e}from"./chunk-DXB73IDG-MLBj3lvC.mjs";function t(){let e=[{prop:`Function`,target:globalThis,violationType:`function_constructor`,strategy:`throw`,reason:`Function cons...
L2: `);n.register(`data:text/javascript,${encodeURIComponent(e)}`),i.importHooksRegistered=!0}}catch(e){console.debug(`[DefenseInDepthBox] Could not register import() hooks:`,e instanc...
1import{o as e}from"./rolldown-runtime-tZXQYakl.mjs";import{$c as t,$u as n,Bf as r,Bl as i,Ca as a,Ef as o,Ff as s,G as c,If as l,Jc as u,Mf as d,Sa as f,Tf as ee,U as p,Vl as m,W ...
L2: `)[0]??``).replace(/\S*\/journal\/\S*/g,`<journal path>`).replace(/\b[0-9a-f]{32}\b/gi,`<id>`);return`exit ${e.status}${t===``?``:`: ${t}`}`}function It(e,t,n){return{schemaVersion...
...
L12: `)?`
L13: `:``;q(e,`${JSON.stringify(r,null,2)}${i}`)}catch{let r=Hn(n,t.contentDirSpellings);r!==n&&q(e,r)}}function qn(e,t){let n=W(e,`utf-8`),r=Hn(n,t.contentDirSpellings);r!==n&&q(e,r)}f...
L14: `)}\n`:null}catch{return null}}function br(e){let t=z(e,`.git`,`ok`);if(!H(t))return null;let n=ke(`git`,[`-C`,t,`log`,`--oneline`,`-50`],k({encoding:`utf-8`,timeout:2e3}));return ...
High
Same File Env Network Execution
A single source file combines environment access, network access, and code or shell execution; review context before blocking.
•Manifest-reachable source captures an API credential, sends it to a fixed unofficial gateway, and persists that redirection in agent or shell configuration.
dist/cli.mjs:
import{o as e}from"./rolldown-runtime-tZXQYakl.mjs";import{$a as t,$s as n,$u as r,Af as i,Bf as a,Ed as o,Ef as s,Eo as c,F as l,Fo as u,Fr as d,Gc as f,Hc as p,Hd as m,Ho as h,Ic...
`)}const xa={out:e=>process.stdout.write(`${e}\n`),err:e=>process.stderr.write(`${e}\n`)},Sa=T({title:E().optional(),error:E().optional(),message:E().optional()});function Ca(){let...
`)){let e=n.trim();if(e===``)continue;let r=e.indexOf(`=`);r!==-1&&(t[e.slice(0,r)]=e.slice(r+1))}return t}function Aa(e){return new Promise((t,n)=>{let r=[];e.on(`data`,e=>r.push(...
`;return`${I(`Error:`)} this project's git remote is ${n}, which is not a Git
High
Credential Redirect Persistence
Manifest-reachable source sends a prompted API credential to a fixed unofficial gateway and persists the redirection.
1import{Uo as e}from"./dist-BB-NSwQc.mjs";import{execFile as t}from"node:child_process";const n=new Set([`http:`,`https:`]),r=/[\u0000-\u0020\u007F-\u009F"'`\\&|<>^()$;{}[\]*?!~]/;f...
High
Child Process
Package source references child process execution.
87var t=null;try{t=new WebAssembly.Instance(new WebAssembly.Module(new Uint8Array([0,97,115,109,1,0,0,0,1,13,2,96,0,1,127,96,4,127,127,127,127,1,127,3,7,6,0,1,1,1,1,1,6,6,1,127,1,65,...
L88: changing to the minimum size of: 2`),this._maxSize=2)}record(e){this.updateByIncrement(e,1)}setStartTime(e){this.startTime=e}toPointValue(){return{hasMinMax:this._recordMinMax,min:...
L89: \t- OR - create a new view with the name ${e.name} and description '${e.description}' and InstrumentSelector ${r}
86*/
L87: var t=null;try{t=new WebAssembly.Instance(new WebAssembly.Module(new Uint8Array([0,97,115,109,1,0,0,0,1,13,2,96,0,1,127,96,4,127,127,127,127,1,127,3,7,6,0,1,1,1,1,1,6,6,1,127,1,65,...
L88: changing to the minimum size of: 2`),this._maxSize=2)}record(e){this.updateByIncrement(e,1)}setStartTime(e){this.startTime=e}toPointValue(){return{hasMinMax:this._recordMinMax,min:...
L89: \t- OR - create a new view with the name ${e.name} and description '${e.description}' and InstrumentSelector ${r}
...
L97: causes have become circular...`;let o=r(e);return o?(t.add(e),a+`
L98: caused by: `+i(o,t)):a},a=e=>i(e,new Set),o=(e,t,i)=>{if(!n(e))return``;let a=i?``:e.message||``;if(t.has(e))return a+`: ...`;let s=r(e);if(s){t.add(e);let n=typeof e.cause==`funct...
L99: `:`
High
Command Output Exfiltration
Source combines command execution, command-output handling, and outbound requests; review data flow before blocking.
1Cross-file remote execution chain: dist/dist-BB-NSwQc.mjs spawns dist/chunk-5QMZ5MUS-BuB3i_B5.mjs; helper contains network access plus dynamic code execution.
L1: import{a as e,i as t,n,o as r,r as i,t as a}from"./rolldown-runtime-tZXQYakl.mjs";import{$ as o,$a as s,$c as c,$d as l,$i as u,$n as d,$o as f,$r as p,$s as m,$t as h,$u as g,A as...
L2: `,t),r=n===-1?e.length:n;if(r>t&&e[r-1]===`\r`&&--r,r-t>1024)return 0;let i=e.slice(t,r);return i.length===0||!Loe.test(i)&&!Roe.test(i)?0:i.length}const mc=/&#(?:x[0-9A-Fa-f]+|X[0...
...
L66: </div>`}];function Koe(e){return["```html preview",e.html,"```"].join(`
L67: `)}const qoe=[{name:`--chart-1`,light:`oklch(0.62 0.19 259)`,dark:`oklch(0.72 0.14 259)`},{name:`--chart-2`,light:`oklch(0.58 0.14 145)`,dark:`oklch(0.73 0.13 145)`},{name:`--char
High
Cross File Remote Execution Context
Source spawns a local helper that also contains network and dynamic execution context; review data flow before blocking.
1import{t as e}from"./chunk-DXB73IDG-MLBj3lvC.mjs";function t(){let e=[{prop:`Function`,target:globalThis,violationType:`function_constructor`,strategy:`throw`,reason:`Function cons...
L2: `);n.register(`data:text/javascript,${encodeURIComponent(e)}`),i.importHooksRegistered=!0}}catch(e){console.debug(`[DefenseInDepthBox] Could not register import() hooks:`,e instanc...
1import{o as e}from"./rolldown-runtime-tZXQYakl.mjs";import{$c as t,$u as n,Bf as r,Bl as i,Ca as a,Ef as o,Ff as s,G as c,If as l,Jc as u,Mf as d,Sa as f,Tf as ee,U as p,Vl as m,W ...
L2: `)[0]??``).replace(/\S*\/journal\/\S*/g,`<journal path>`).replace(/\b[0-9a-f]{32}\b/gi,`<id>`);return`exit ${e.status}${t===``?``:`: ${t}`}`}function It(e,t,n){return{schemaVersion...
...
L12: `)?`
L13: `:``;q(e,`${JSON.stringify(r,null,2)}${i}`)}catch{let r=Hn(n,t.contentDirSpellings);r!==n&&q(e,r)}}function qn(e,t){let n=W(e,`utf-8`),r=Hn(n,t.contentDirSpellings);r!==n&&q(e,r)}f...
L14: `)}\n`:null}catch{return null}}function br(e){let t=z(e,`.git`,`ok`);if(!H(t))return null;let n=ke(`git`,[`-C`,t,`log`,`--oneline`,`-50`],k({encoding:`utf-8`,timeout:2e3}));return ...
High
Same File Env Network Execution
A single source file combines environment access, network access, and code or shell execution; review context before blocking.
•Manifest-reachable source captures an API credential, sends it to a fixed unofficial gateway, and persists that redirection in agent or shell configuration.
dist/cli.mjs:
import{o as e}from"./rolldown-runtime-tZXQYakl.mjs";import{$a as t,$s as n,$u as r,Af as i,Bf as a,Ed as o,Ef as s,Eo as c,F as l,Fo as u,Fr as d,Gc as f,Hc as p,Hd as m,Ho as h,Ic...
`)}const xa={out:e=>process.stdout.write(`${e}\n`),err:e=>process.stderr.write(`${e}\n`)},Sa=T({title:E().optional(),error:E().optional(),message:E().optional()});function Ca(){let...
`)){let e=n.trim();if(e===``)continue;let r=e.indexOf(`=`);r!==-1&&(t[e.slice(0,r)]=e.slice(r+1))}return t}function Aa(e){return new Promise((t,n)=>{let r=[];e.on(`data`,e=>r.push(...
`;return`${I(`Error:`)} this project's git remote is ${n}, which is not a Git
High
Credential Redirect Persistence
Manifest-reachable source sends a prompted API credential to a fixed unofficial gateway and persists the redirection.