Skip to content
Report library
Purpose / Other

Lark Attendance Skill Security Audit

What the author says it does (original text)

飞书考勤打卡:查询自己的考勤打卡记录

Independent security check

Security risks found

Files checked
1
Risks found
1
Could it run dangerous commands?Looks for programs run straight after downloading, remote control of your computer, and hidden commands.No risks found
Could it expose your files or keys?Looks for uploads of files containing passwords or keys, and keys written directly in the code.No risks found
Could it delete files or keep running?Looks for broad file deletion, disk overwrites, and programs set to start automatically.No risks found
Could it bypass safety checks?Looks for skipped website security checks, excessive file access, or actions that skip your approval.No risks found
Could it mislead the AI or hide text?Checks the skill instructions for requests to ignore you, influence the report, or hide text in invisible characters.Risks found: 1
Medium risk

Authentication and permission behavior is delegated to an unavailable adjacent Skill

Source references: 3
What we found

The Skill requires the agent to read `../lark-shared/SKILL.md` before starting and explicitly delegates authentication and permission handling to it. That file is absent from the complete supplied source, so users cannot verify what credentials, permissions, or authentication steps it requests.

Why this matters

If the adjacent file is replaced, comes from a different source, or contains broader instructions, the agent may follow those extra instructions before querying attendance, affecting credentials, account authorization, or permission decisions. The evidence does not show that such abuse has occurred.

What this evidence establishes

This is an active mandatory instruction: before starting, the agent must read the adjacent `../lark-shared/SKILL.md`, which governs authentication and permission handling. That file is absent from the supplied source, so its credential requests, additional permissions, and authentication actions cannot be verified. This file states only a self-attendance query purpose and a read-only scope, but those statements do not constrain the missing file. A user can require the author to supply and pin that dependency and authorize only the listed read-only scope.

This assessment concerns the code and conditions shown, not proof that harm has occurred.
SKILL.md:13In the instructions
**CRITICAL — 开始前 MUST 先用 Read 工具读取 [`../lark-shared/SKILL.md`](../lark-shared/SKILL.md),其中包含认证、权限处理**
Show 2 other places
SKILL.md:2In the instructions
---name: lark-attendanceversion: 1.0.0description: "飞书考勤打卡:查询自己的考勤打卡记录"metadata:  requires:    bins: ["lark-cli"]  cliHelp: "lark-cli attendance --help"---
SKILL.md:48In the instructions
### user_tasks- `query` — 查询用户考勤打卡记录## 权限表| 方法 | 所需 scope ||------|-----------|| `user_tasks.query` | `attendance:task:readonly` |
Could it change links or payment recipients without asking?Looks for forced referral or payment changes combined with instructions to hide the change.No risks found

Inside this skill

3 instruction sections

The Skill claims to query the user's own Lark attendance records and depends on a local `lark-cli` executable.

View source
SKILL.md:2In the instructions
---name: lark-attendanceversion: 1.0.0description: "飞书考勤打卡:查询自己的考勤打卡记录"metadata:  requires:    bins: ["lark-cli"]  cliHelp: "lark-cli attendance --help"---

It requires every API call to use `employee_no` and automatically sets `user_ids` to an empty array without asking the user. The provided content does not establish whether an empty array means only the current user in the actual API.

View source
SKILL.md:15In the instructions
## 默认参数自动填充规则调用任何 API 时,以下参数 **必须自动填充,禁止向用户询问**:| 参数 | 固定值 | 说明                                 ||------|--------|------------------------------------|| `employee_type` | `"employee_no"` | `employee_type`始终等于`"employee_no"` || `user_ids` | `[]`(空数组) | `user_ids`始终等于`[]`                 |

Operations use `lark-cli` to inspect the API schema before calling the attendance API; the listed query permission is the read-only `attendance:task:readonly` scope.

View source
SKILL.md:41In the instructions
```bashlark-cli schema attendance.<resource>.<method>   # 调用 API 前必须先查看参数结构lark-cli attendance <resource> <method> [flags]  # 调用 API```> **重要**:使用原生 API 时,必须先运行 `schema` 查看 `--data` / `--params` 参数结构,不要猜测字段格式。
SKILL.md:48In the instructions
### user_tasks- `query` — 查询用户考勤打卡记录## 权限表| 方法 | 所需 scope ||------|-----------|| `user_tasks.query` | `attendance:task:readonly` |
Start here · InstructionsSKILL.md
lark-attendance
Lines connect the instruction file to its sections, not an observed execution order. Select a section to read the source.
Files and check records1 files

Coverage and gaps

Content covered in each file

These are the source ranges included in this check, not a guarantee that every issue has been resolved.

  • SKILL.mdFull text included

This report is for the version above. We read the available code and instructions without running the skill or checking extra packages it installs. This is not a promise of safety: a different version or setup may behave differently.

  • SKILL.mdInstructions

Operations mentioned in code and instructions

Run commands
SKILL.md:41In the instructions
```bashlark-cli schema attendance.<resource>.<method>   # 调用 API 前必须先查看参数结构
Lines read
58
File checksum (to compare versions)
6512b8e4a16bbae79037dd87736b0fc245f082498ede958d9baaf09fc0bc0b0d