我与网站的日常-webshell命令执行

本文比较基础,其中有一个知识点关于php执行系统命令的函数 ,我们用最简单的webshell来说说传值问题的影响,

本文作者: i春秋签约作家——屌丝绅士

0×01前言:
    小表弟又来写文章了,这次是一个新的发现,可能对于老手来说这都是渣渣,但我会写的尽量详细,让小白看了也会懂的程度,

0×02有狗:
    大佬们说的有狗多半是 “安全狗”说有WAF的时候多半是有防火墙,请求的字段被waf拦截了,这里解释一下什么事WAF  这玩意学名叫做,网站应用级防火墙,用来拦截一些非法url请求的,比如说我们在一个url后缀为

这样的后缀添加一个   %and  1=1 的时候就会被拦截,屌丝我今天日站的时候也遇到了,当时的情况是  我一句话写入了,但是用C刀,或者菜刀链接的时候显示链接被重置或者是拒绝链接,怎么都不行,比如这样:

后来查了下ip发现是阿里云的服务器,这里需要提醒大家的是,阿里云的服务器,大部分装有一个简易的杀软,也就是阿里防御套装这个东西,你在任务管理器中可以看到,这种情况多半是被杀软给拦截了,但他名没有阻止我访问我的webshell,哪怕是执行webshell都没问题,

0×03知识点:
    这里需要引入  一个知识点 也就是  php执行系统命令的函数 ,我们用最简单的webshell来简单的说说
    比如这句:

可能一些小白看不懂了,说这玩意都长得差不多,到底怎么玩啊,那现在屌丝就简单的说说,其实很简单的,无非就是一个传值得问题,上面这个一句话,我们就说中间的这个,开头和末尾只不过是让系统吧这句话识别成php语句,并解析,之一这里需要系统来解析我们的一句话,如果系统不解析我们的一句话,我们也无法执行命令,中间这个
post表示  用post的数据来进行交互,相当于一种加密的沟通方式,这里我们
就可以直接用firefox的插件来调用我们的webshell来执行命令了,

比如像这句:

我们先把hackbar打开,并且加载我们的webshell,这个webshell指的是包含一句话的php文件,并且可以有执行权限的,我们加载当前的url之后勾选post提交方式,然后输入我们的
webshell密码,这个密码就是一句话中的
cmd,然后用这个cmd的参数去调用php语句,让php再去执行系统命令,这是一个传递的过程,测试的话
可以用我现在的这种方法,也就是调用phpinfo的探针,注意 用“;”作为结尾,注意中英文状态

然后确定你的webshell可以执行命令,再去用系统函数去调用,然后  用 我们的函数去执行系统命令,比如
system就可以调用系统的命令,然后按照一定格式写出来就可以了,由于论坛这边的特殊字符串不能写,因为写在文章里
就会被WAF拦截,我只能上图片了,这里我们用我们的webshell调用系统php函数去执行系统命令,先从添加用户开始,

添加了普通用户还不够,很多东西我们都无法执行,这时候我们就需要用 administrators 这个用户组了,我们需要把我们新创建的用户添加到用户组,让他有一定权限,就像下图这样 我们把刚刚创建的用户添加到用户组,

友情提示一句,在他命令执行成功后  会给我们回显,有的命令就不会,这是因为php函数的输出的问题,有些时候我们不需要他输出,执行命令就好了,这个也是要根据当时的情况去酌情使用
的 一定要灵活运用,就像现在的教程一样,你只能仿照,并自己去解决问题,千万别照搬照抄,这是学习路线上的大忌!!!

0×04登录

我们用刚刚创建的用户,并且添加到了administrators用户组的账户去远程桌面登录,这里有一个窍门,就是在添加用户组的时候 是 administrators  末尾要多加一个s,因为他是一个组,是复数,明白我的意思吧,

我们很顺利的登陆上来了,默认出现的服务器配置页面仿佛是在向我们挥手,庆祝我们在学习路上更新一步,很多时候,渐渐的忘记了初心,没有了第一次拿站的激情和刺激,渐渐地变得麻木,从一开始的兴趣,变成了一些机械化的操作,或者是为了利益去做,大佬们经常说的信仰也是我最不理解的东西,也许我还小吧

0×05小技巧:

到了现在我们已经可以成功登陆服务器了,但是我们并没有administrator的权限和密码,这里就有两个思路,

第一 直接上传 wce或者猕猴桃 这两个工具是  用来在内存中抓取曾经登陆过得用户的密码,也就是说 如果
服务器被重启了,而且任何用户都没登录,那么就抓不到密码,而是想办法抓取hash去尝试破解,这边我要的是持续控制,还因为我比较懒,还不愿意用别人写的工具,所以我选择第二种方法

直接在本地用msf生成一个木马,扔上去,扔到他开机启动项里,这样在他重启之后我们依旧可以连接,这就是一种持续后门的方法之一,

还有一种是最简单的方法,那就是粘滞键的问题,在锁屏的时候 可以使用直接敲五次
shift键,windows会调用粘滞键的程序,而这个程序和cmd。EXE在同一个文件夹,也就是说
我们把这两个程序的名称去替换,那么在我们下一次登录的时候
直接用五次shift就可以直接弹出dos窗口,有了dos窗口,就可以创建用户了,对吧,你可能说权限够不够的问题,我会告诉你
这是  system用户调用的,system是啥?system直接控制硬件  比administrator权限还高,所以你懂我的意思吧

0×06会话进行时:

上图的木马
我是用系统自带的浏览器下载过来的,而不是复制的,因为我用的是kali系统,用不了复制和粘贴,所以只能从另一个服务器去调资源,然后刅本地  放在他开机启动项里

然后运行下,另一边我们的kali  开启监听,因为我的木马用的是  正向链接,就是说由本地去触发目标服务器的端口,这个端口是由我们的木马监听的,这样就为我们开启了后门,进而拿到会话

为了猥琐发育 ,拿到会话直接删掉我们webshell创建的用户,防止暴露,嘿嘿嘿 猥琐发育,下图是我删掉之后的,,删之前忘了截图,,写文章也是很苦逼的,害的留下作案截图,,扎心

这边我们可以在会话状态执行getuid看一下我们当前的用户名,很明显是我们刚刚创建的那个用户的权限,这边需要注意的事 你要先运行木马,再去删除自己这个账户,别做反了,做反了就逗比了

0×07隐藏自己,持续后门:

拿到会话
第一件事干什么?当然是进程迁移啊,因为我们运行了木马之后再目标服务器的进程管理I器中可以看到的,但是做了进程迁移之后就和别的程序捆绑在一起了,如果他要强制截止,只能重启,他一重启,系统还会在开机的时候自动运行我们的木马,这块相当于双保险,但是开机自启的木马,在内存中是可以被干掉的,这点需要注意下,这里的命令,要么写全路径,让模块自动迁移  要么就指定系统的exploit进程id,迁移到那个里面去,这两个是最靠谱的,

然后我们在用msf的持续后门模块去把我们的后门变成服务的方式,寄存在对方系统服务中,彻底的随系统而自启,但是这个服务名字比较坑爹,好在可以在msf的模块中修改,后续的话
我在给大家写如何修改msf持续后门服务的服务名
这里创建了一个服务,并且持续监听本地的  31337端口,如果你是网站管理员就需要注意下这个端口了,还有默认的 4444端口,哈哈  你们懂的,

下图就是我们做的msf的持久后门监听的端口,当然  这也是可以改的,在他的模块中搜一下就知道了,像这种参数一般是不会随意更变的

0×08密码抓取和信息泄露:

到现在你以为就结束了么?不可能的
administrator的密码我们还没拿到怎么能这样就放弃呢,对不对,嘿嘿嘿  这边我直接通过 msf的上传模块  upload
这个模块可以吧本地的程序上传到目标服务器的当前目录下,我愿意用wce  因为他小巧,简单,易用,而且kali也自带这个工具  ,我们直接把wce上传  然后切换到shell  取运行这程序,这里还可以直接  load
猕猴桃这个模块,但是猕猴桃用着不舒服,直接上传wce了

然后我们就需要切换成shell状态,相当于切换到他的cmd窗口里了,然后运行刚刚上传的wce  工具   记得加 -w参数,不加参数抓取的事 hash  -w参数表示输出铭文密码,换句话说就是我们直接用的那种密码,可以复制粘贴的

0×09擦屁屁:

拿到administrator的密码,也做好了持续后门,确保万无一失了,然后做啥?当然是清理日志啊,哎哎哎 你干嘛
开什么远程桌面,不知道msf有自动清理日志的工具么?,这边我们直接在 msf的会话状态  直接执行 clearev  让msf自动清理日志,注意
这个模块是彻底的吧日志清理掉,很明显的可以看到日志变成0了,如果让管路员看到
傻子也知道自己被日了,所以这里要想好,根据实际情况去想,为什么我用这个模块,从密码你就可以知道了,特别有规律,而且全程弱口令,所以你觉得他会闲着蛋疼的看日志?,在说了

日志每个小时都会更新,只要里面的日志不永远是0  基本上可以无视,就算被发现了,清掉了我们所有的木马,我们还有administrator的密码在手

0×10反思:

CNVD的漏洞 90%是弱口令
完全不知道网站管理员,开发,运维脑子里想的是什么,企业推广的大数据,极有可能成为黑客的信息库,随用随取,企业又是一副是不管理高高挂起的样子,就算出了问题,也是能小就小,大不了用钱砸的态度,最后坑的是谁?还是老百姓,这就是一个恶循环,

本文就写到这里,其实在拿到了administrator的密码之后可以登上去看看他是否远程了别的服务器,可以用当前的密码去尝试登陆,很有可能中奖哦,再就是浏览器的历史记录以及

cookie,再就是数据库,最后是他在服务器安装了那些软件,有一次我就碰到了一个在服务器上挂百度云的,是一个黄色网站,好奇的打开了,,结果就发现了,之前被说成谣言的“迪丽热巴”的视频,老司机你们懂,,,,不解释,要资源我当然不能给,给你们在说我传播淫秽色请就不好了对不对,哈哈
所以说  在远程上去之后  一定要注意任何细节,都会有想不到的惊喜哦,

后记:

这段话是送给那些在背后喷我的人的一段话,别在背后喷我,有能耐我开直播
正面刚!我做的不对,你可以说,我会改,但你在背后喷我是几个意思?羡慕嫉妒恨?还是承认自己完犊子?只能耍嘴皮子?来问我问题的
我回答是我乐于助人,不回答是我的本分,凭什么你问我就得回答?没有谁欠你的,没有人该你的,努力了你就会得到,错过了也不要气馁,抓住机遇总会成功   
平平淡淡,不忘初心,

时间: 2024-10-10 15:35:31

我与网站的日常-webshell命令执行的相关文章

webshell下执行命令脚本汇集

cmd1.asp <object runat=server id=shell scope=page classid="clsid:72C24DD5-D70A-438B-8A42-98424B88AFB8"></object> <%if err then%> <object runat=server id=shell scope=page classid="clsid:F935DC22-1CF0-11D0-ADB9-00C04FD58A

ImageMagick 命令执行分析

ImageMagick是一款使用量很广的图片处理程序,很多厂商都调用了这个程序进行图片处理,包括图片的伸缩.切割.水印.格式转换等等.但近来有研究者发现,当用户传入一个包含『畸形内容』的图片的时候,就有可能触发命令注入漏洞. 国外的安全人员为此新建了一个网站: https://imagetragick.com/ ,不得不说,有些外国人蛮会玩的. 相对于之前的数个拥有『主页』的漏洞,这个洞确实不一般,确实是一个可以被利用的好洞,乌云主站上也爆出了数个被该漏洞影响的大厂商.我们先来分析一下它出现的原

转:Python安全 - 从SSRF到命令执行惨案

转:https://www.leavesongs.com/PENETRATION/getshell-via-ssrf-and-redis.html Python安全 - 从SSRF到命令执行惨案 PHITHON 前两天遇到的一个问题,起源是在某个数据包里看到url=这个关键字,当时第一想到会不会有SSRF漏洞. 以前乌云上有很多从SSRF打到内网并执行命令的案例,比如有通过SSRF+S2-016漏洞漫游内网的案例,十分经典.不过当时拿到这个目标,我只是想确认一下他是不是SSRF漏洞,没想到后面找

任意命令执行

任意命令执行原因: 当应用需要调用一些外部程序去处理内容的情况下,就会用到一些执行系统命令的函数.如PHP中的system.exec.shell_exec等,当用户可以控制命令执行函数中的参数时,将可以注入恶意系统命令到正常命令中,造成命令执行攻击. 脚本语言(如PHP)优点是简洁.方便,但也伴随着一些问题,如速度慢.无法接触系统底层,如果我们开发的应用(特别是企业级的一些应用)需要一些除去WEB的特殊功能时,就需要调用一些外部程序. 在PHP中可以调用外部程序的常见函数: system.exe

WordPress &lt;= 4.6 命令执行漏洞(PHPMailer)复现分析

漏洞信息 WordPress 是一种使用 PHP 语言开发的博客平台,用户可以在支持 PHP 和 MySQL 数据库的服务器上架设属于自己的网站.也可以把 WordPress 当作一个内容管理系统(CMS)来使用.WordPress 使用 PHPMailer 组件向用户发送邮件.PHPMailer(版本 < 5.2.18)存在远程命令执行漏洞,攻击者只需巧妙地构造出一个恶意邮箱地址,即可写入任意文件,造成远程命令执行的危害. 漏洞编号 CVE-2016-10033 影响版本 WordPress

MHA 日常维护命令集

MHA 日常维护命令集 1.查看ssh登陆是否成功 masterha_check_ssh --global_conf=/etc/masterha/masterha_default.conf --conf=/etc/masterha/app1.conf 2.查看复制是否建立好 masterha_check_repl --global_conf=/etc/masterha/masterha_default.conf --conf=/etc/masterha/app1.conf 3.启动mha noh

73条日常shell命令汇总,总有一条你需要!

1.检查远程端口是否对bash开放: echo >/dev/tcp/8.8.8.8/53 && echo "open" 2.让进程转入后台: Ctrl + z 3.将进程转到前台: fg 4.产生随机的十六进制数,其中n是字符数: openssl rand -hex n 5.在当前shell里执行一个文件里的命令: source /home/user/file.name 6.截取前5个字符: ${variable:0:5} 7.SSH debug 模式: ssh

Oracle数据库的日常使用命令

1.     启动和关闭数据库 sqlplus /nolog; SQL >conn / as sysdba;(上面的两条命令相当于sqlplus ‘/as sysdba’) SQL >startup (若启动文件名不是ORACLE缺省的文件名,则启动时应带启动目录与文件名) SQL>startup pfile=<file-pathr/init-file> 重启单板方法:(重启前需先停应用,再停数据库) 2.     重启单板 1).关闭数据库:以sysdba进入 ngsdp1

mha日常维护命令

mha日常维护命令 http://m.blog.chinaunix.net/uid-28437434-id-3959021.html?/13033.shtml 1.查看ssh登陆是否成功masterha_check_ssh --conf=/etc/masterha/app1.cnf 2.查看复制是否建立好masterha_check_repl --conf=/etc/masterha/app1.cnf 3.启动mhanohup masterha_manager --conf=/etc/maste