当前位置: 首页 > wzjs >正文

北京公司网站制作价格开一家网络公司需要什么条件

北京公司网站制作价格,开一家网络公司需要什么条件,网站大全全部,重庆关键词搜索排名目录 CSV注入漏洞 1.CSV漏洞简介 2.漏洞原理 (1)公式执行 (2)DDE机制 (3)OS命令执行 3.漏洞防御 第08关 CSV注入 1.打开靶场 2.修改源码 3.注入命令 4.导出excel表 5.打开excel表 CSV注入漏洞…

目录

CSV注入漏洞

1.CSV漏洞简介

2.漏洞原理

(1)公式执行

(2)DDE机制

(3)OS命令执行

3.漏洞防御

第08关 CSV注入

1.打开靶场

2.修改源码

3.注入命令

4.导出excel表

5.打开excel表


CSV注入漏洞

1.CSV漏洞简介

CSV公式注入(CSV Injection)是一种会造成巨大影响的攻击向量。攻击包含向恶意的EXCEL公式中注入可以输出或以CSV文件读取的参数。当在Excel中打开CSV文件时,文件会从CSV描述转变为原始的Excel格式,包括Excel提供的所有动态功能。在这个过程中,CSV中的所有Excel公式都会执行,从而可能导致黑客利用此功能进行渗透,形成CSV漏洞

2.漏洞原理

(1)公式执行

当输入一个公式,会被Excel自动运算并执行。如下图执行公式=1+2+3

回车后这一行数据就会变为6

(2)DDE机制

而当你输入一个别的Excel本身不存在的功能时,Excel就会被微软的另一种机制:DDE机制调用。

DDE是Windows下进程间通信协议,是一种动态数据交换机制,使用DDE通讯需要两个Windows应用程序,其中一个作为服务器处理信息,另外一个作为客户机从服务器获得信息。DDE支持Microsoft Excel,LibreOffice和Apache OpenOffice。 Excel、Word、Rtf、Outlook都可以使用这种机制,根据外部应用的处理结果来更新内容。因此,如果我们制作包含DDE公式的CSV文件,那么在打开该文件时,Excel就会尝试执行外部应用

(3)OS命令执行

通过在CSV文件中构建DDE公式,可以调用系统cmd执行命令,从而达到执行操作系统命令的目的,形成命令执行漏洞

如下图所示,在单元格中输入1+cmd|’/C calc’!A0

1+cmd|'/C calc'!A0

回车后Excel会弹出一个框,提醒Excel需要启动另外一个程序(cmd)

点击是,Windows会弹出计算器窗口。

因此,利用这种漏洞危害,我们可以在用户的操作系统上执行添加用户、开启任意程序、操作注册表、反弹shell等命令。 

3.漏洞防御

1、确保单元格不以特殊字符(“+、-、@、=”)开头;
2、对单元格的内容进行特殊字符(“+、-、@、=”)过滤;
3、先对原始输入内容进行转义(双引号前多加一个双引号),然后在添加tab键和双引号防止注入;
4、禁止导出CSV、Excel格式;
5、导出为Excel格式前,利用代码把单元格的格式设置为文本(对CSV不生效)。 

第08关 CSV注入

1.打开靶场

初始打开效果如下所示

2.修改源码

这是因为源码有问题,需要修改源码csv_vuln.php,修改后如下所示

<?php$conn = mysqli_connect('localhost', 'root', 'root', 'webug');if ($conn) {$sql = "select * from data_crud";$res = $conn->query($sql);}if (isset($_POST['daochu'])){$headerArray = ['name','age','email'];$string = implode(",",$headerArray)."\n";//先做出表头while (list($id, $name, $age, $email, $deflag) = mysqli_fetch_row($res)){$data = [['name'=>urldecode($name),'age'=>urldecode($age),'email'=>urldecode($email)]];foreach ($data as $key => $value) {//把需要的字段一一对应起来,如果已经对应好 直接 $outArray = $value;$outArray['name'] = $value['name'];$outArray['age'] = $value['age'];$outArray['email'] = $value['email'];$string .= implode(",",$outArray)."\n"; //用英文逗号分开 }}@$filename = date('Ymd').'.csv'; //设置文件名header("Content-type:text/csv");header("Content-Disposition:attachment;filename=".$filename);header('Cache-Control:must-revalidate,post-check=0,pre-check=0');header('Expires:0');header('Pragma:public');exit(mb_convert_encoding($string, "GBK", "UTF-8"));}
?><?php
require_once "../../common/common.php";
if (!isset($_SESSION['user'])) {header("Location:../login.php");
}
?>
<!doctype html>
<html><head><meta charset="utf-8"><title></title>
</head>
<style>body{font-family: Arial, Helvetica, sans-serif;}table{border-collapse: collapse;width: 50%;text-align: center;}td,th{border:1px solid #ccc; padding: 2px 5px;}button{padding: 5px;}div {line-height: 3;}
</style>
<body>
<?php$i_name =  urlencode($_POST[name]);$i_age =  urlencode($_POST[age]);$i_email =  urlencode($_POST[email]);if ($dbConnect) {if ($i_name != null && $i_age != null && $i_email != null){$sql = "INSERT INTO data_crud(name,age,email) VALUES ('$i_name','$i_age','$i_email')";$res = $dbConnect->query($sql);}}if ($dbConnect) {$sql = "select * from data_crud";$res = $dbConnect->query($sql);}
?><table id="table"><tr><th>Name</th><th>Age</th><th>Email</th></tr><?phpif ($res) {while (list($id, $name, $age, $email, $deflag) = mysqli_fetch_row($res)){echo '<tr>';echo '<input type="text" hidden="hidden" name="id[]" value="'.$id.'">';echo '<td><div contenteditable="true">'.urldecode($name).'</div></td>';echo '<td><div contenteditable="true">'.urldecode($age).'</div></td>';echo  '<td><div contenteditable="true">'.urldecode($email).'</div></td>';echo '</tr>';}}?></table><form action="#" method="post"><input name="daochu" type="submit" value="导出"/></form><br><h2>添加新用户信息</h2>
<form action="#" method="post"><table id="table"><tr><td>Name</td><td>Age</td><td>Email</td></tr><tr><td><input name="name" type="text" size="20"/></td><td><input name="age" type="text" size="20"/></td><td><input name="email" type="text" size="20"/></td></tr></table><div><input name="submit" type="submit" value="确认添加"/></form></div>
</body>
<script src="../../../aa/html/table-to-excel.js"></script><script>var tableToExcel = new TableToExcel();document.getElementById('button').onclick = function () {tableToExcel.render("table");};</script>
</html>

修改源码后,打开页面如下所示

3.注入命令

在添加用户信息处,任选一项name处,添加1+cmd|'/C calc'!A0这个csv注入命令,其他两项甜味18和ljn,接下来点击确认添加

添加后如下所示

这个时候点击导出,将excel表导出,很明显此时导出的表格中会包含此csv注入命令。

4.导出excel表

点击导出后效果如下,此时导出成功会提示是否打开,选择打开

5.打开excel表

打开后,当点击=1+cmd|'/C calc'!A0项数据时,提示如下

这个时候如果点击是的话,如下所示通关excel表的csv注入将计算器启动,渗透成功


文章转载自:

http://o6laEMPq.cLdgh.cn
http://Bdm5cp5y.cLdgh.cn
http://jbHzCWg1.cLdgh.cn
http://yoUqo5O8.cLdgh.cn
http://vLqUs7lp.cLdgh.cn
http://fzt7gz8n.cLdgh.cn
http://AauNKzA0.cLdgh.cn
http://Xz3x7FI5.cLdgh.cn
http://hGXJqNsq.cLdgh.cn
http://tO1yNal4.cLdgh.cn
http://n4WJcP3K.cLdgh.cn
http://ov14eMmG.cLdgh.cn
http://LMOKsO3d.cLdgh.cn
http://71c6ixMa.cLdgh.cn
http://Oh29Cqaa.cLdgh.cn
http://u14VHC1Y.cLdgh.cn
http://uJv5pt8R.cLdgh.cn
http://msPgHmZL.cLdgh.cn
http://SPDW1sQA.cLdgh.cn
http://4K00oiMI.cLdgh.cn
http://KH17Wiz3.cLdgh.cn
http://SZToHBSu.cLdgh.cn
http://LZ41yNNW.cLdgh.cn
http://VO3UbxXJ.cLdgh.cn
http://7fRTZWLF.cLdgh.cn
http://fM6PL7rX.cLdgh.cn
http://hAdYaF99.cLdgh.cn
http://Rj6ukKL9.cLdgh.cn
http://gdnmYb3Z.cLdgh.cn
http://PFZs0qOW.cLdgh.cn
http://www.dtcms.com/wzjs/635622.html

相关文章:

  • 番禺做网站600元吴江网络推广
  • 全球外贸网站制作教程软文写作的基本要求
  • 萍乡网站开发iosapp开发工具
  • 长沙哪里做网站好知末网官网
  • 外贸网站能用阿里云吗新乡网站seo
  • 北京做网站最好的公司做网站交互
  • 快速搭建网站服务器重庆娱乐场所最新通知
  • 第一次做网站选多大空间网站开发介绍ppt
  • 中堂镇做网站网络推广营销公司
  • 万户网络网站顾问网站备案号不存在
  • 网站开发团队人员网站架构怎么做
  • 怎样设置网站西安专业的网站设计费用
  • 有域名有服务器怎么建站网络优化工程师有多累
  • 网站开发需要考什么证wordpress project
  • 帝国cms7.0网站搬家换域名换空间等安装教程品牌建设对企业的作用
  • 能够做物理题的网站网站开发专业培训学校
  • 康保网站制作网站建设 pdf教程
  • 做视频特技的网站百度服务中心人工24小时电话
  • 网站建设运营费用包括哪些软件开发用什么软件
  • 帝国cms 网站地址设置网页设计师培训课程多少钱
  • 常州建设银行新北分行网站新网seo关键词优化教程
  • 做网站需要知道什么软件东莞网站建设手袋加工
  • 织梦手机网站怎么修改wordpress 板块
  • 企业门户网站建设管理制度比较好的网页网站设计
  • 大型网站建设技巧网站建设的栏目内容是
  • 最好的营销网站没有货源可以开网店吗
  • html网站开发视频濮阳手机网站建设
  • 做网站贷款个人网页设计需求分析
  • 做一个中英文网站的价格淘宝网网站建设目的
  • 服务器ip做网站企业网站建设 百度文库