other
- Location
scripts/generate.js:15- Finding
Unconditional Promotional Content and Metadata Injection into Generated Documents
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This document-generation skill mostly does what it claims, but it forces promotional content and authorship metadata into every generated Word document without a clear opt-out.
Install only if you are comfortable with generated Word documents carrying Sheet-to-Doc promotional footer text and modified lastModifiedBy metadata. Avoid using this skill for contracts, certificates, official records, or client-facing documents unless you inspect and clean the generated files first. Review the npm lockfile source and dependency versions before installation.
scripts/generate.js:15Unconditional Promotional Content and Metadata Injection into Generated Documents
package-lock.json:18Locked Dependencies Are Retrieved from a Third-Party npm Registry Mirror
The documentation explicitly states that generated documents include a footer mark and promotes upgrade links, while the static finding also notes branding changes in document metadata. This is a true transparency/integrity issue because the skill’s declared purpose is document generation from templates and JSON, but it also alters outputs for advertising/branding in ways that may not be fully disclosed in the top-level purpose. In enterprise or legal-document contexts, undeclared modification of document content or metadata can create trust, compliance, and reputational risks.
Referenced artifact was not completely inspected
node scripts/generate.js --extract-placeholders --template path/to/template.docx
Referenced artifact was not completely inspected
node scripts/generate.js --extract-placeholders --template path/to/template.docx
Referenced artifact was not completely inspected
node scripts/generate.js --extract-placeholders --template path/to/template.docx
Referenced artifact was not completely inspected
node scripts/generate.js --extract-placeholders --template path/to/template.docx
Referenced artifact was not completely inspected
node scripts/generate.js --extract-placeholders --template path/to/template.docx
Referenced artifact was not completely inspected
node scripts/generate.js --extract-placeholders --template path/to/template.docx
Referenced artifact was not completely inspected
node scripts/generate.js --extract-placeholders --template path/to/template.docx
Referenced artifact was not completely inspected
node scripts/generate.js --extract-placeholders --template path/to/template.docx
Referenced artifact was not completely inspected
node scripts/generate.js --extract-placeholders --template path/to/template.docx
Referenced artifact was not completely inspected
node scripts/generate.js --extract-placeholders --template path/to/template.docx
Referenced artifact was not completely inspected
node scripts/generate.js --extract-placeholders --template path/to/template.docx
Referenced artifact was not completely inspected
node scripts/generate.js --extract-placeholders --template path/to/template.docx
Referenced artifact was not completely inspected
node scripts/generate.js --extract-placeholders --template path/to/template.docx
Referenced artifact was not completely inspected
node scripts/generate.js --extract-placeholders --template path/to/template.docx
Referenced artifact was not completely inspected
node scripts/generate.js --extract-placeholders --template path/to/template.docx
Referenced artifact was not completely inspected
node scripts/generate.js --extract-placeholders --template path/to/template.docx
Referenced artifact was not completely inspected
node scripts/generate.js --extract-placeholders --template path/to/template.docx
Referenced artifact was not completely inspected
node scripts/generate.js --extract-placeholders --template path/to/template.docx
The lockfile pins @xmldom/xmldom to 0.9.10, and the provided advisory set indicates multiple known XML parsing/serialization weaknesses affecting name and attribute validation. In a document-generation skill that processes DOCX templates and XML parts through docxtemplater, malformed or attacker-controlled template content could trigger unsafe XML handling, leading to document corruption, parser abuse, or other downstream security issues depending on how untrusted templates are accepted.
The note states that the placeholder format 'supports English field names,' which is a natural-language locale constraint in the skill documentation. Because the file does not present this as an optional preference or clearly justify it as a region-specific limitation, it can be read as forcing a language convention without user opt-in.
The code hardcodes promotional footer text and branding metadata that are later injected into every generated document, but this behavior is not reflected in the stated skill description. This is a supply-chain style integrity issue: users expect template rendering, not undisclosed content and metadata modification, which can leak tool usage, alter official documents, and violate trust or compliance requirements.
The document generation flow always calls addFooterMark() and modifyDocumentProperties(), ensuring every output document is altered beyond placeholder replacement. In a document-generation skill, this is especially risky because outputs may be contracts, certificates, or other formal records where undisclosed footer and metadata tampering can create reputational, legal, or workflow impact.
Skill's behavior or capabilities extend beyond its stated purpose. Scope creep allows an agent to perform actions unrelated to its documented functionality, increasing the attack surface.
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
This is a markdown file, so SQP-2 applies to missing user-facing warnings in the skill description. The Quick Start shows generating an output document via --output output.docx, but there is no warning anywhere in the README about file creation or potential overwriting of an existing output path.
No suspicious patterns detected.