
Security Fundamentals
Turtles, Clams, and Cyber Threat Actors: Shell Usage
The Socket Threat Research Team uncovers how threat actors weaponize shell techniques across npm, PyPI, and Go ecosystems to maintain persistence and exfiltrate data.
@digshare/script
Advanced tools
盯梢是可以将消息变现的推送工具,盯梢频道主既可以手动向订阅者推送新消息,也可以通过盯梢脚本自动完成消息采集和推送。
盯梢脚本是盯梢提供的自动化频道消息推送方案,频道主可以通过 JavaScript 快速编写自动化脚本,托管到盯梢脚本服务器,定时或通过 webhook 触发执行。
盯梢脚本提供了两种编辑/部署方案:
此时可以看到生成的默认脚本,大致如下:
/**
* @param payload webhook 参数(POST body,支持 JSON)
* @param context 脚本执行上下文,包括简单的键值存储对象
*/
export default async function (payload, context) {
return {
content: '你好,盯梢!',
};
}
在脚本“调试”页面点击右下角“测试”按钮即可在模拟环境下执行脚本,此时不会真的推送消息。
调试完成后,可以在部署页面看到 webhook 或按需配置计划执行,点击右下角“部署”按钮即可实际部署脚本。部署完成后,按钮将变为“执行”,再次点击可以手动执行部署脚本,此时如果脚本函数返回值不为空,则会推送相关消息到当前频道。
default
函数脚本 default
函数类型为 Script
,可以是普通的异步函数或异步生成器。
Script
接受两个参数,payload
和 context
:
payload
是用户通过 webhook 传入的参数。context
类型为 ScriptContext
。yield
值)为消息对象 ScriptMessage
,包含消息内容、链接、标签等。ScriptContext<TStorage extends object>
ScriptContext
中最常用的是 storage
,该对象提供了 getItem(key)
和 setItem(key, value)
两个方法,可以用于存储脚本执行信息,经常被我们用来避免发送重复的消息或内容。
export default async function (payload, {storage}) {
let count = storage.getItem('count') ?? 1;
console.log(`这是脚本第 ${count} 次执行。`);
storage.setItem('count', count + 1);
return {
content: '你好,盯梢!',
};
}
ScriptMessage
除了 content
之外都是可选参数。
export default async function (payload, context) {
if (nothingNew) {
// 返回 undefined 表示不用推送新消息。
return undefined;
}
return {
content: '消息内容。',
images: [
/* 图片 Buffer 的数组。*/
],
links: [
'https://www.dingshao.cn/',
{
url: 'https://script.dingshao.cn/',
description: '盯梢脚本编辑器',
},
],
tags: ['标签', '不存在将自动创建'],
};
}
盯梢脚本支持本地开发构建后,通过 npm 发布到盯梢脚本 registry。
未完待续。
FAQs
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security Fundamentals
The Socket Threat Research Team uncovers how threat actors weaponize shell techniques across npm, PyPI, and Go ecosystems to maintain persistence and exfiltrate data.
Security News
At VulnCon 2025, NIST scrapped its NVD consortium plans, admitted it can't keep up with CVEs, and outlined automation efforts amid a mounting backlog.
Product
We redesigned our GitHub PR comments to deliver clear, actionable security insights without adding noise to your workflow.