太难缠了,目测是把 wasm 直接拿去加解密了
![]() | 1 tmtstudio OP 我接口参数和反参都这样了,真是没辙了 param: CBvPwEcAyHmnRQ2VRJ+cTbrPfJothei4nkMFlvqGMZl/xduTNg9VVhWUyF/CrMCnld8OeZZpHaSxp/k4YH/DZvTTge4aCmK7sxR8qPoP+ZHjDaakoC3MiIhkzWbBWwPx4JbKCtc3E/8AMD52IU6bZjBM29zrfS2pawTmSHR+oUY9Jnlucv1mMOC1+/1BWwuSLFQ4bkyPoRsrflJUD9SfQzascADp9bvDAJ/Eh8fvVgT4FSkzqtyQVemopDrG9ntt code: H2l0TqAcrx+DIc0CW4eGWPSPZRrUHvlWaOaOXjpGQ3Tn79gh6PcwFW3J5KaZUcjOAMpbEgWS5D9i/wtqcNdI6iz0hX0Vmz62wVuxVJUa3ltXOMJk2RMvtoYOVb8Ne+IuSOOr3tMeB4JxmiRB4MNwdUnIXtHWc6z0OxVZ6FuPzrQ= {"status":1,"info":"\u6210\u529f","data":{"data":"VdAbKxb927LEtIEP6Hgd8820rE2EruZLa0WstR7lWZixMhmYE6TECFTlrci3pSVfeWz1voe7jkb1dAqDdU0mdzS95P+LzgOxImhuh6Dv3vKY8eHRLqgy+K1QsfcaqKxnaMFuVkTgZzJySlhTBZAhAbkqWuBMoaXv8Z6zGan\/pghVc7US2Z2wTiXfPRe4dWxLa3nWH2gIyIDwGj8Wxhxx9DFbxmSQoh6ZFjUz1v12+2LNaoN972OzlOU159e6QmX\/jKP4SVZB3vKi6EdeQynGKwZtuAVN3Am1q\/ayIZp1pbn8B+5PuK09OOTwElCPiAw3fn09l6CzlirCwpV5VJLEU96Cu7pYRLVrIOe5WEhgRbfExqZ+JOqd5Q+OuN6NosUqKW1ZlDHbu3Ha09gu9CyLbw56GcMQA60FCvUNInw4WCbxlOhcASO\/Ye73i1S07ZbeuyGvd3SZMxMd5+H8x95KduEp+IsRCh3DHOz94ORXtA4ivNPgoWuCjhgvHtq6whxBAMnm4Jf\/6MY24mrd9\/0BWQ==","code":"Z2SLbR+9Vz8noEFVL\/eD+XFccTgTJo6Rv53dPiNE0rSweOvoG9+fxZUdMW0dlF63Bche7cAaGPbko1WHel1s8eEBmjTPB1CHCNAep8mHD1wO2\/k\/FpPNhh2gVhKEvZqIqDhVjsT2lNk704RoKBXNsnf4zlxC1O8HoE5wmF45e\/8="}} |
![]() | 2 huangzhiyia 2024-08-30 16:39:00 +08:00 服务端限流 + recaptcha 认证 |
3 jsonparse 2024-08-30 16:40:09 +08:00 防重放+限流 |
![]() | 4 tool2dx 2024-08-30 16:42:19 +08:00 加参数签名算法,把签名算法放到服务器 RPC 上来计算,按照一定的调用比例,识别恶意客户端 ID 。 算法不放在本地,这总没办法了吧。 |
![]() | 5 RoyLaw 2024-08-30 16:42:48 +08:00 限制访问 IP |
6 Ayanokouji 2024-08-30 16:44:12 +08:00 上个 apisix 之类的网关,挑一些插件开启 |
![]() | 7 LeeReamond 2024-08-30 16:44:42 +08:00 不太了解灰产解 wasm 怎么个说法,我感觉 wasm 解 AST 还挺麻烦的,但是也许你硬编码了什么字符串密钥或者接口之类的很好搞出来。 @tool2dx http 无状态,灰产搞客户端那不是要开多少开多少,每次都是新 ID 。。。 |
8 fruitmonster 2024-08-30 16:49:48 +08:00 ![]() |
9 coderxy 2024-08-30 16:51:16 +08:00 有的是改内存的, 你再怎么加密它正常用你的客户端去请求你也防不了。 |
10 zhenjiachen 2024-08-30 16:51:28 +08:00 via iPhone wasm 不需要反编译,直接使用运行时就可以跑起来了,然后把参数放到接口里面调用就行了 |
![]() | 11 povsister 2024-08-30 16:51:31 +08:00 专业风控团队都是风险因子收集+模式识别,靠行为模式来打击黑产。 你用的这些方案都只能提高门槛,对于黑产本身来说不算啥。你当下最简单的方式就是,接口调用完之后保留一些供后续审计的数据,做不到在线实时识别的话事后打击也可以。 |
![]() | 12 tmtstudio OP @fruitmonster #8 妙啊,这可以用在 wasm 里鉴权 |
![]() | 14 hsuehly 2024-08-30 17:04:23 +08:00 我研究过一点,可以交流一下 |
![]() | 15 proxytoworld 2024-08-30 17:16:24 +08:00 核心是你即使在 wasm 加解密你还是得在 js 端使用 wasm export 出的 abi ,其实目前 wasm 反编译不是很成熟,大概率是把你 js 反混淆了 建议防重放+签名算法,配合服务端限流+环境检查之类的 |
16 Lockeysama 2024-08-30 17:19:46 +08:00 关键字:WAF 、Bot Management |
![]() | 17 iorilu 2024-08-30 18:04:37 +08:00 说明你的站很牛啊, 有人盯上了, 肯定 api 是有价值得 |
![]() | 18 glcolof 2024-08-30 23:42:31 +08:00 使用 https 协议,在 api 调用参数里面增加“用户名-密码”或者访问 token 字段,如果服务是收费的,每次调用都会扣费;或者免费服务限制调用次数调用频率。 总不会有人故意泄露自己的用户名-密码或者 token 吧? |
19 jackOff 2024-08-31 01:03:58 +08:00 额,你不会是央视频吧?你可以试试找法务解决 |
![]() | 20 EndlessMemory 2024-08-31 10:38:17 +08:00 新增一个接口参数,没有带新接口参数的全部返回假数据 |
![]() | 21 sobev 2024-08-31 12:07:12 +08:00 @fruitmonster 妙啊妙啊 |
![]() | 22 12101111 2024-08-31 16:10:28 +08:00 wasm 不需要反汇编,可以直接按你的 js 调用 wasm 的方法在 nodejs 这类运行时里直接运行。 真正的加密必须在服务端用用户 id 做运算,wasm 只能当做一种 Pow 的限速器。 |
![]() | 23 wogogoing PRO @fruitmonster 秒啊! |