范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文
国学影视

Pwn2OwnAustin2021CiscoRV34xRCE漏洞链复现

  漏洞分析CVE-2022-20705 Improper Session Management VulnerabilityCVE-2022-20707 Command Injection参考链接前言
  这个RCE漏洞利用链的实现是由几个逻辑洞的结合而导致的,这几天我花了一些时间复现了一遍,在此记录一下。固件解压
  我下载的是 RV345 v1.0.03.24,从官网下载到压缩包解压之后可以看到它的 rootfs 是 ubi 格式的 img。之前我都是使用 kali里的 binwalk 对其进行解压可以直接得到解压之后的文件系统。但是由于前几天我的虚拟机坏了,不得不进行重装,但是我还没有装 kali。故找了一下提取 ubi 格式的方式。在 github 上有一个项目:https://github.com/nlitsme/ubidump,通过里面的 ubidump.py 可以很轻松地提取出 ubi 格式的文件。命令如下:python3 ubidump.py -s . 0.ubi 漏洞分析CVE-2022-20705 Improper Session Management Vulnerability
  CVE-2022-20705 Improper Session Management Vulnerability,是由于 nginx 的配置不当导致的。nginx 的配置文件是 /etc/nginx/nginx.conf,如下user www-data; worker_processes  4;error_log /dev/null;events {     worker_connections  1024; }http { 	access_log off; 	#error_log /var/log/nginx/error.log  error;	upstream jsonrpc { 		server 127.0.0.1:9000; 	}	upstream rest { 		server 127.0.0.1:8008; 	}	# For websocket proxy server 	include /var/nginx/conf.d/proxy.websocket.conf; 	include /var/nginx/sites-enabled/*; }
  可以发现它又加载了: /var/nginx/conf.d/proxy.websocket.conf 和 /var/nginx/sites-enabled/ ,但是固件解压出来的 rootfs 里的 var 目录有些问题,所以笔者只能根据别人的文章找一下漏洞发生的配置文件。结合 rest.url.conf 和 proxy.conf 来看。location /api/ {         proxy_pass http://rest;         include /var/nginx/conf.d/proxy.conf; }location /api/operations/ciscosb-file:file-copy { 	proxy_pass http://rest; 	include /var/nginx/conf.d/proxy.conf; 	proxy_read_timeout 3600; 	proxy_send_timeout 3600; }location /api/operations/ciscosb-file:form-file-upload { 	set $deny 1; 	if ($http_authorization != "") { 		set $deny "0"; 	}	if ($deny = "1") { 		return 403; 	}	upload_pass /form-file-upload; 	upload_store /tmp/upload; 	upload_store_access user:rw group:rw all:rw; 	upload_set_form_field $upload_field_name.name "$upload_file_name"; 	upload_set_form_field $upload_field_name.content_type "$upload_content_type"; 	upload_set_form_field $upload_field_name.path "$upload_tmp_path"; 	upload_aggregate_form_field "$upload_field_name.md5" "$upload_file_md5"; 	upload_aggregate_form_field "$upload_field_name.size" "$upload_file_size"; 	upload_pass_form_field "^.*#34;; 	upload_cleanup 400 404 499 500-505; 	upload_resumable on; }location /restconf/ {         proxy_pass http://rest;         include /var/nginx/conf.d/proxy.conf; }location /restconf/operations/ciscosb-file:file-copy {         proxy_pass http://rest;         include /var/nginx/conf.d/proxy.conf;         proxy_read_timeout 3600;         proxy_send_timeout 3600; }proxy_http_version 1.1; proxy_set_header Host $http_host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header Authorization $http_authorization; proxy_set_header Accept-Encoding ""; proxy_set_header Connection ""; proxy_ssl_session_reuse off; server_name_in_redirect off;
  如果我们请求中 Authorization 不为空,此时 set $deny "0",就可以向下调用 upload 模块。它会在调用 /form-file-upload前,把文件上传到 /tmp/upload 下。并且由于没有设置 level,它的存储格式类似 /tmp/upload/0000000001。至此我们可以实现任意文件上传至 /tmp/upload。
  我们接着向下分析,可以在 rootfs/etc/nginx/conf.d 下找到 web.upload.conf 如下:location /form-file-upload { 	include uwsgi_params; 	proxy_buffering off; 	uwsgi_modifier1 9; 	uwsgi_pass 127.0.0.1:9003; 	uwsgi_read_timeout 3600; 	uwsgi_send_timeout 3600; }location /upload { 	set $deny 1;        if (-f /tmp/websession/token/$cookie_sessionid) {                 set $deny "0";         }        if ($deny = "1") {                 return 403;         }	upload_pass /form-file-upload; 	upload_store /tmp/upload; 	upload_store_access user:rw group:rw all:rw; 	upload_set_form_field $upload_field_name.name "$upload_file_name"; 	upload_set_form_field $upload_field_name.content_type "$upload_content_type"; 	upload_set_form_field $upload_field_name.path "$upload_tmp_path"; 	upload_aggregate_form_field "$upload_field_name.md5" "$upload_file_md5"; 	upload_aggregate_form_field "$upload_field_name.size" "$upload_file_size"; 	upload_pass_form_field "^.*#34;; 	upload_cleanup 400 404 499 500-505; 	upload_resumable on; }
  我们可以发现其对 /upload 进行了 $cookie_sessionid 的检验,但是并没有对 /form-file-upload 进行检验。我们看一下 /form-file-upload 的后端处理程序。启动脚本 (uwsgi-launcher) 如下:#!/bin/sh /etc/rc.commonexport UWSGI_PLUGIN_DIR=/usr/lib/uwsgi/pluginsstart() {         uwsgi -m --ini /etc/uwsgi/jsonrpc.ini &         uwsgi -m --ini /etc/uwsgi/blockpage.ini &         uwsgi -m --ini /etc/uwsgi/upload.ini & }stop() {         killall -9 uwsgi }
  我们再去找一下 /etc/uwsgi/upload.ini[uwsgi] plugins = cgi workers = 1 master = 1 uid = www-data gid = www-data socket=127.0.0.1:9003 buffer-size=4096 cgi = /www/cgi-bin/upload.cgi cgi-allowed-ext = .cgi cgi-allowed-ext = .pl cgi-timeout = 300 ignore-sigpipe = true
  从上述文件中我们可以知道 /form-file-upload 它对应的后端处理程序是 /www/cgi-bin/upload.cgi。因此我们可以无条件访问 upload.cgi。
  同时上述配置文件中我们可以看到检查了 /tmp/websession/token/$cookie_sessionid 文件是否存在。但是存在缺陷,就是这里的 $cookie_sessionid 是用户在 http 请求中传进去的一个值,它并没有检查是否存在 ../../ ,也就是说我们可以通过跨目录来导致授权绕过。如:我们可以传递 ../../../etc/firmware_version。
  同时也可以看到在 upload.cgi 里对 sessionid= 进行了检查,限制了它的字符,但是并没有考虑到传多个 sessionid= 的情况。因为这里的 sessionid= 是遍历 HTTP_COOKIE 并且取出它最后一个 sessionid= 作为实际的 sessionid= 使用,所以我们可以传两个 **sessionid=**。前一个用来绕过 web.upload.conf 里的判断,后一个当作正常的数据用来通过 upload.cgi 的判断。这样也可以实现无条件访问 upload.cgi。
  我们接着看 upload.cgi
  传入适当的参数可以使得我们有能力任意文件移动到 /tmp/www 下,通过这两个漏洞我们也可以伪造出一个 session。CVE-2022-20707 Command Injection
  我们继续查看 upload.cgi。
  这个漏洞可以使得任意命令执行。参考链接https://bestwing.me/Pwning%20a%20Cisco%20RV340%20%20%E6%BC%8F%E6%B4%9E%E5%88%86%E6%9E%90%EF%BC%88CVE-2022-20705%20%E5%92%8C%20CVE-2022-20707.htmlhttps://blog.relyze.com/2022/04/pwning-cisco-rv340-with-4-bug-chain.htmlhttps://paper.seebug.org/1890/https://onekey.com/blog/advisory-cisco-rv34x-authentication-bypass-remote-command-execution/https://nosec.org/home/detail/4985.html
  from https://www.secpulse.com/archives/197154.html

iPhone电池健康度之谜如何保住那100,简单五步操作一下手机现在已经成为了大众生活和工作必不可少的工具,所以TA得续航长短是至关重要的,以前手机电池技术还不算成熟的时候,手机的续航跟不上其他硬件的发展,所以在很长一段时间里,快充充电宝共蒙古丰富多彩的夜生活,梦露裸死在床上,用41张照片了解世界1949年,斯大林多次暗杀南斯拉夫总理约瑟普铁托。作为回应,铁托给斯大林写了一封信停止派人来杀我。我们已经捕获了其中的五个。如果你不停止派杀手,我会派一个到莫斯科,我就不用派第二个老话说秋天吃3草,不把医生找!3草指的啥?怎么做好吃?小时候经常听家里的老人讲秋天吃3草,不把医生找,从来没有当回事,不过随着年龄的增长,越发觉得这些流传下来的谚语,其实都有大智慧。随着季节交替从地底钻出来的野草,虽然看着像草,其实是广东一山坡上,发现消失了21年的生物,上次见它还是在2001年位于粤北地区的石门台国家级自然保护区是广东面积最大的自然保护区,地处北回归线北缘,属于南亚热带与中亚热带过渡地区。地形地貌主要以中山地貌为主,占了保护区总面积的87左右。气候类型主96年内蒙古18岁报案青年被判死刑,9年后真凶落网,国家赔偿200万2014年12月17日,呼和浩特市公安局办公室里,冯志明正和同事商谈着工作事宜。就在二人商谈到高潮之处时,倏然间,冯志明眼前一黑。再到其反应过来时,他已坐在了公安局座椅上,面前是两2015年内蒙古女孩拿一块钱买菜,引起好心阿姨注意,下秒赶紧报警2015年11月的一天,一男一女怒气冲冲地走进了内蒙古乌兰浩特市胜利派出所的报案大厅。一看到民警,女子就扯着嗓子喊道我就问一句,这种情况公安机关管不管?洪亮的声音瞬间响彻大厅,刚刚天气预报16号暴雨大雨范围确认,2022年秋天冷到哭?看农谚咋说时光如白驹过隙,转瞬即逝,眨眼间到了八月中下旬,今天8月16日,立秋节气第10天,是立秋时节第二候白露生最后一天,眼瞅着立秋节气过了三分之二的时间,北方多地降雨频繁降温明显,有了秋研究揭示青藏高原东缘成因青藏高原作为世界屋脊,其形成演化,特别是内部的地壳变形加厚隆升以及向外扩张等,是地球科学领域研究的重点内容。针对青藏高原东缘特殊的地质现象,如大规模的走滑断层,显著的地壳加厚及缺少民营经济变化概览十年起伏中的韧性编者按2012年至今的十年时间中,中国经济经历了从高速增长迈向新常态的换挡,国有民营外企三驾马车在经济的起伏中保持了增长的韧性,民营经济在GDP中的占比从50上升至60以上,并贡献商鞅的那一套变法理论是否是国家持续强大的必经阶段?01hr万里长城今犹在,不见当年秦始皇,在中华五千年的历史长河中,在我们大多数人耳熟能详的朝代中,以秦始皇为代表的秦朝,绝对是独树一帜,为我们留下了大量的文化传承。秦朝的功绩在这里开惯了宝马5系,再试驾红旗H9,对比后车主一肚子话要说导语开惯了宝马5系(图片配置询价),再试驾红旗H9(图片配置询价),对比后车主一肚子话要说。我的第一辆车是宝马5系。还记得那时候我还是28岁的青涩男孩,2014年4月,努力地赚钱终
八一特辑钦岛早闻文图刘基地四年前的秋天,天刚蒙蒙亮,这个与陆路隔绝安宁一夜的小岛又开始了新的一天。头天上岛的我,此时带上随身摄像武器出门了。沿着高低不平的海边水泥路,徜徉在小岛朦胧的晨霭中。眺望天大美新疆(22241)新疆是一个神奇神美神秘的地方。新疆很大,占全国面积的六分之一,有六个山东那么大。新疆地形特点是山脉与盆地相间排列,盆地被高山环抱,俗喻三山夹两盆。北为阿尔泰山,南为昆仑山,天山横亘两名登山队员在吉尔吉斯斯坦列宁峰不幸遇难,一名来自俄罗斯综合俄罗斯媒体和吉国媒体的报道两名登山队员在登顶列宁峰的时候发生了意外,不幸遇难身亡。分别是一名38岁的俄罗斯公民和一名41岁的吉尔吉斯斯坦人。遇难的位置是列宁锋海拔6100米处。西部印象丨户外急救实用方法培训户外急救实用方法培训户外徒步活动严格意义上来讲属于一项户外体育运动,经常处在相对有风险的野外丛林,悬崖峭壁,路况复杂多样,这样的客观环境势必增加事故受伤的发生率。作为一个专业专注负星星故乡8月28日引言见字如面,感谢你能够关注星星的故乡宁夏。为了让你对星空有更多的了解,我们特意开设了星空发布栏目。在这个栏目中我们会给你提供一周的星空观测目标,提前告诉你流星雨日食等这些天象,给世界这么大,我想出去看一看随着近几年旅游业的兴起,世界这么大,我想出去看一看这句话也成为了大部分人的人生座右铭。说到出国旅游,那肯定是要选择性价比高的地方,而泰国这个美食多元化的国家受到了来自世界各地的吃货机票燃油附加费年内两连降,9月5日起单程降低20元机票燃油附加费迎今年第二次下调。8月31日,记者从在线旅游平台去哪儿网获悉,其接到多家国内航空公司消息自2022年9月5日(出票日期)起,调整国内航班燃油附加费征收标准成人旅客,8芯片产能即将过剩,中芯国际却515亿扩产28nm,原因是什么?不管大家承认不承认,也不管晶圆厂们开心不开心,当前芯片的产能已经趋向于饱和了,晶圆产能过剩,确实很快就要来了。按照第三方机构的预计,今年全球芯片销量增速可能只有去年一半,明年增速可须弥地区即将到来,原神3。0版本8月24日正式上线IT之家8月13日消息,在今日的前瞻活动上,米哈游正式公布了原神3。0版本千朵玫瑰带来的黎明,新版本将于8月24日上线。原神3。0版本PV千朵玫瑰带来的黎明在山峦采撷映满眼帘的绿意中国最缺的光刻机龙头,竟是爽文男主现实版中国现在正在大力发展什么产业?新能源汽车和半导体。这两个产业哪个更难?半导体。半导体中什么技术最难?光刻机。下面是制造芯片需要用到的设备,其中木板越高代表中国的这项技术发展越好。制为什么怀孕吃螃蟹会流产,原因可能是这个怀孕是一件大事,很多孕妈都有体会,这不敢吃那不敢碰,特别是临近中秋,螃蟹就像一个恶魔,让孕妈们敬而远之。首先,螃蟹并不是备孕怀孕的禁忌品,为什么吃螃蟹为什么会流产,原因有3点1螃蟹