Linux Mint:pastebin 位于 /usr/local/bin 中

Linux Mint:pastebin 位于 /usr/local/bin 中

我正在运行 Linux Mint 17。

我找到了一个帕斯特宾python 文件在/usr/local/bin

鉴于人们使用pastebin的目的,这是否存在安全风险?

在此输入图像描述

命令的输出stat

  文件:“pastebin”
  大小:576 块:8 个 IO 块:4096 个常规文件
设备:fc01h/64513d 索引节点:5768847 链接:1
访问权限:(0755/-rwxr-xr-x) Uid:( 0/ root) Gid:( 0/ root)
访问时间: 2016-01-19 10:43:31.595833213 -0500
修改: 2015-02-03 07:15:10.000000000 -0500
更改: 2016-01-19 10:43:30.575833252 -0500
 出生:-

据信,pastebin 是由原始发行版放在那里的。相关讨论在这里发行版入侵“/usr/local”

答案1

无论是在/usr/local/bin还是/usr/bin无关紧要。它只是一个将其参数或其 STDIN 发布到 Web 服务的 Python 脚本:

#! /usr/bin/python

import sys, os, stat, subprocess

content = ""

mode = os.fstat(0).st_mode
if stat.S_ISFIFO(mode):
    content = sys.stdin.read()
elif stat.S_ISREG(mode):
    content = sys.stdin.read()
else:
    args = sys.argv[1:]
    if len(args) == 1 and os.path.exists(args[0]):
        with open(args[0], 'r') as infile:
            content = infile.read()
    else:
        str_args = ' '.join(args)
        content = str_args

if content != "":
    p = subprocess.Popen(["/bin/nc", "paste.linuxmint.com", "9999"], stdin = subprocess.PIPE)
    p.communicate(content)

如果您的用户可以访问 Internet,则pastebin不允许他们执行超出其已可以执行的操作的任何操作。

bash顺便说一句,如果能将上面丑陋的 Python 代码压缩为:,那岂不是很好?

/bin/nc paste.linuxmint.com 9999 <<< "${*:-`cat`}"

(它的行为不会完全相同,但这并不重要。)

相关内容