F-droid
(F-Droid)
1
大家好!我最近在抱抱脸空间上搭建了一个全能在线工具箱,特地分享出来让各位佬友玩玩!
体验链接:
https://ittools-box.hf.space
主要功能:
- JSON工具:格式化、压缩、生成实体类、JSON和XML互转等。
- 格式转换:支持HTML、CSS、JS等代码的格式化、压缩,HTML和Markdown、正则表达式工具等。
- 加解密工具:MD5、AES、Base64等加密解密,密码、UUID、条形码生成。
- 文本处理:字数统计、简繁转换、拼音转换、Unix时间戳转换等。
- 网络工具:IP地址查询、WebSocket测试、浏览器信息获取等。
- 站长辅助:Gzip压缩检测、死链检测、Whois查询、Meta标签优化。
- 计算工具:多种单位换算、科学计算器。
……
工具箱简单易用,功能齐全,支持多端使用。
抱抱脸空间一键复制
如果你也希望部署一个,可以在在抱抱脸空间一键复制,请访问以下链接。
GitHub项目地址
https://github.com/foss-android/toolbox
今日代码安全事件概要:
今天在浏览论坛时,看到一则由tmwl大佬发来的评论,内容如下:
看到大佬提醒代码中可能存在木马,我着实吓了一跳,尤其是当我发现该代码是加密的。随后,我询问了GPT,它告诉我从文件名来看,应该是一个显示时钟功能的脚本。
几分钟后,agromgt大佬发来了他的解密结果:
在看到解密后的代码后,我立马进行了分析,未发现恶意行为。为了安全起见,我第一时间在GitHub上将加密的代码替换为agromgt大佬的解密版本,并通过GitHub Action重新构建了镜像。同时,我也更新了部署环境,将原来的镜像进行了替换,并更改了网址以确保缓存清除。
为进一步确保没有安全隐患,我开启了浏览器的开发者工具抓包,确认解密后的脚本已经成功替换,且未发现任何异常网络请求。
今天的这次代码安全事件告一段落。如果其他朋友发现还有任何问题,请随时指正。
109 个赞
F-droid
(F-Droid)
2
这里还提供离线版 Docker tar
包部署 toolbox
:
首先,访问以下GitHub下载离线的.tar
包:
https://github.com/foss-android/docker2tar/releases/tag/toolbox
然后,在 CMD 或 PowerShell 中,执行以下命令来加载 .tar
包并运行容器:
docker load -i path_to_downloaded/toolbox.tar
docker run -d --restart always --name toolsbox -p 8080:8080 toolbox:latest
将 path_to_downloaded
替换为下载的 toolbox.tar
文件的实际路径。
最后,在浏览器中访问 http://localhost:8080
即可使用 toolbox
。
8 个赞
F-droid
(F-Droid)
4
我也是受到那个帖子启发的,今天也是尝试了好久,最后成功了,抱抱脸平台服务器确实是配置很高,唯一的缺点是它的dockerfile不是很好写,跟常规的写起来有区别,麻烦很多。
3 个赞
23375
(QQbot)
6
如果想弄那种输入一个网址,就能把里面的网址完整保存下来,有什么思路吗?比如OpenAI的官方文档,直接下载来喂给ai就不用自己查这么麻烦了。传统的思路是遍历获取左侧导航栏的每个单独网址然后再下载内容,有没有这种一键获取的工具 
2 个赞
F-droid
(F-Droid)
7
你可以试试这个一键安装命令
docker run -d --restart always --name toolbox -p 8080:8080 ghcr.io/foss-android/toolbox:latest
2 个赞
F-droid
(F-Droid)
9
问了一下GPT,这个代码的作用应该是实现时钟显示的功能。你是从哪里看得出挂马的呢?
解密出来了,貌似不是病毒,我不是专业的,问的ChatGPT
总结
window.onload = function() {
var winHeight = document.documentElement.clientHeight;
document.getElementsByTagName('body')[0].style.height = winHeight+'px';
var $clock = document.getElementById('clock'),
$date = document.getElementById('date'),
$hour = document.getElementById('hour'),
$min = document.getElementById('min'),
$sec = document.getElementById('sec'),
oSecs = document.createElement('em');
for (var i = 1; i < 61; i++) {
var tempSecs = oSecs.cloneNode(),
pos = getSecPos(i);
if(i%5==0){
tempSecs.className = 'ishour';
tempSecs.innerHTML = ''+(i/5)+'';
}
tempSecs.style.cssText='left:'+pos.x+'px; top:'+pos.y+'px; -webkit-transform:rotate('+i*6+'deg);';
$clock.appendChild(tempSecs);
}
// 圆弧上的坐标换算
function getSecPos(dep) {
var hudu = (2*Math.PI/360)*6*dep,
r = 200; //半径大小
return {
x: Math.floor(r + Math.sin(hudu)*r),
y: Math.floor(r - Math.cos(hudu)*r),
}
}
;(function() {
// 当前时间
var _now = new Date(),
_h = _now.getHours(),
_m = _now.getMinutes(),
_s = _now.getSeconds();
var _day = _now.getDay(),
weekAry = ['七','一','二','三','四','五','六'];
$date.innerHTML = _now.getFullYear()+'-'+(_now.getMonth()+1)+'-'+_now.getDate()+' 星期'+weekAry[_day];
//绘制时钟
var gotime = function(){
var _h_dep = 0;
_s++;
if(_s>59){
_s=0;
_m++;
}
if(_m>59){
_m=0;
_h++;
}
if(_h>12){
_h = _h-12;
}
//时针偏移距离
_h_dep = Math.floor(_m/12)*6;
$hour.style.cssText = '-webkit-transform:rotate('+(_h*30-90+_h_dep)+'deg);';
$min.style.cssText = '-webkit-transform:rotate('+(_m*6-90)+'deg);';
$sec.style.cssText = '-webkit-transform:rotate('+(_s*6-90)+'deg);';
};
gotime();
setInterval(gotime, 1000);
})();
};
3 个赞
F-droid
(F-Droid)
12
谢谢佬友,已经把你解密的代码替换了原本的代码,正在构建docker镜像中
1 个赞
F-droid
(F-Droid)
13
佬友,把原本的加密代码替换成你解密的那个代码之后,时钟正常运行(上图所示),经过抓包之后,确认已经替换了成功了(下图所示),今天真的把我给吓到了,网络安全无小事!
3 个赞
tmwl
(tmwl)
17
主要是当时用了几个扫描软件,都报蠕虫virus.js.qexvmc.1
而且正常时钟文件谁会加密混淆啊
太让人起疑了,加上软件报毒,我也以为是毒
还是有大佬解密更放心点
还得是这里的佬友实力强啊
2 个赞
cyj153
(cheng)
18
我也搭了一个这个,而且自己也加了功能,在条形码那里增加了生成二维码
1 个赞