xlsx
Warn
Audited by Gen Agent Trust Hub on Oct 11, 2026
Risk Level: MEDIUMDYNAMIC_EXECUTIONCOMMAND_EXECUTIONPERSISTENCEINDIRECT_PROMPT_INJECTION
Full Analysis
- [DYNAMIC_EXECUTION]: The skill performs runtime compilation and library injection. In
scripts/office/soffice.py, a C source code string is written to a temporary file (/tmp/lo_socket_shim.c) and compiled into a shared library usinggcc. This library is then injected into thesoffice(LibreOffice) process via theLD_PRELOADenvironment variable. This mechanism is intended to shim AF_UNIX socket calls to allow LibreOffice to run in restricted sandboxed environments.\n- [COMMAND_EXECUTION]: The skill invokes external command-line tools viasubprocess.run().scripts/recalc.pyandscripts/office/soffice.pyexecutesofficeandgcc.scripts/office/validators/redlining.pyexecutesgit diffto compare document contents.\n- [PERSISTENCE]: The skill modifies local application configuration.scripts/recalc.pyinstalls a StarBasic macro (RecalculateAndSave) into the LibreOffice user profile directory (e.g.,~/.config/libreoffice/). This is required for the automated formula recalculation feature.\n- [INDIRECT_PROMPT_INJECTION]: The skill defines a surface area for processing untrusted data. \n - Ingestion points: User-provided Office files are read using
pandas(inSKILL.md) andopenpyxl(inscripts/recalc.py).\n - Boundary markers: Absent. The skill instructions do not specify delimiters to separate untrusted document content from instructions.\n
- Capability inventory: Includes shell command execution (
scripts/recalc.py,scripts/office/soffice.py), runtime compilation, and file system writes.\n - Sanitization: The skill uses
defusedxmlto parse XML components (inscripts/office/validators/base.py), which mitigates XML-based attacks like XXE.
Audit Metadata