小方法辨别电脑是否中毒
[ 2007-03-25 02:58:45 | 作者: sun ]
电脑中毒症状一览
1.平时运行好端端的电脑,却变得迟钝起来,反应缓慢,出现蓝屏甚至死机;
2.程序载入的时间变长。有些病毒能控制程序或系统的启动程序,当系统刚开始启动或是一个应用程序被载入时,这些病毒将执行它们的动作,因此要花更多的时间来载入程序;
3.可执行程序文件的大小改变了。正常情况下,这些程序应该维持固定的大小,但有些病毒会增加程序文件的大小;
4.对同样一个简单的工作,磁盘却花了要长得多的时间才能完成。例如,原本储存一页的文字只需一秒,但感染病毒可能会花更多的时间来寻找未感染的文件;
5.没有存取磁盘,但磁盘指示灯却一直在亮。硬盘的指示灯无缘无故一直在亮着,意味着电脑可能受到病毒感染了;
6.开机后出现陌生的声音、画面或提示信息,以及不寻常的错误信息或乱码。尤其是当这种信息频繁出现时,表明你的系统可能已经中毒了;
7.系统内存或硬盘的容量突然大幅减少。有些病毒会消耗可观的内存或硬盘容量,曾经执行过的程序,再次执行时,突然告诉你没有足够的内存可以利用,或者硬盘空间意外变小;
8.文件名称、扩展名、日期、属性等被更改过;
9.文件的内容改变或被加上一些奇怪的资料;
10.文件离奇消失。
(如果您的电脑有以上症状出现,请及时"就诊")
如何预防电脑病毒
病毒的传染无非是两种方式:一是网络,二是软盘与光盘。如今由于电子邮件的盛行,通过互联网传递的病毒要远远高于后者。
1、不要轻易下载小网站的软件与程序。
2、不要光顾那些很诱惑人的小网站,因为这些网站很有可能就是网络陷阱。
3、不要随便打开某些来路不明的E-mail与附件程序。
4、安装正版杀毒软件公司提供的防火墙,并注意时时打开着。
5、不要在线启动、阅读某些文件,否则您很有可能成为网络病毒的传播者。
6、经常给自己发封E-mail,看看是否会收到第二封未属标题及附带程序的邮件。
对于软盘,光盘传染的病毒,不要随便打开程序或安装软件。可以先复制到硬盘上,接着用杀毒软件检查一遍,再执行安装或打开命令。
1.平时运行好端端的电脑,却变得迟钝起来,反应缓慢,出现蓝屏甚至死机;
2.程序载入的时间变长。有些病毒能控制程序或系统的启动程序,当系统刚开始启动或是一个应用程序被载入时,这些病毒将执行它们的动作,因此要花更多的时间来载入程序;
3.可执行程序文件的大小改变了。正常情况下,这些程序应该维持固定的大小,但有些病毒会增加程序文件的大小;
4.对同样一个简单的工作,磁盘却花了要长得多的时间才能完成。例如,原本储存一页的文字只需一秒,但感染病毒可能会花更多的时间来寻找未感染的文件;
5.没有存取磁盘,但磁盘指示灯却一直在亮。硬盘的指示灯无缘无故一直在亮着,意味着电脑可能受到病毒感染了;
6.开机后出现陌生的声音、画面或提示信息,以及不寻常的错误信息或乱码。尤其是当这种信息频繁出现时,表明你的系统可能已经中毒了;
7.系统内存或硬盘的容量突然大幅减少。有些病毒会消耗可观的内存或硬盘容量,曾经执行过的程序,再次执行时,突然告诉你没有足够的内存可以利用,或者硬盘空间意外变小;
8.文件名称、扩展名、日期、属性等被更改过;
9.文件的内容改变或被加上一些奇怪的资料;
10.文件离奇消失。
(如果您的电脑有以上症状出现,请及时"就诊")
如何预防电脑病毒
病毒的传染无非是两种方式:一是网络,二是软盘与光盘。如今由于电子邮件的盛行,通过互联网传递的病毒要远远高于后者。
1、不要轻易下载小网站的软件与程序。
2、不要光顾那些很诱惑人的小网站,因为这些网站很有可能就是网络陷阱。
3、不要随便打开某些来路不明的E-mail与附件程序。
4、安装正版杀毒软件公司提供的防火墙,并注意时时打开着。
5、不要在线启动、阅读某些文件,否则您很有可能成为网络病毒的传播者。
6、经常给自己发封E-mail,看看是否会收到第二封未属标题及附带程序的邮件。
对于软盘,光盘传染的病毒,不要随便打开程序或安装软件。可以先复制到硬盘上,接着用杀毒软件检查一遍,再执行安装或打开命令。
浅谈高手是如何针对DDos部署防御措施的
[ 2007-03-25 02:58:34 | 作者: sun ]
ddos(distributed denial of service,分布式拒绝服务)攻击的主要手段是通过大于管道处理能力的流量淹没管道或通过超过处理能力的任务使系统瘫痪,所以理论上只要攻击者能够获得比目标更强大的“动力”,目标是注定会被攻陷的。
对于ddos攻击来说并没有100%有效的防御手段。但是由于攻击者必须付出比防御者大得多的资源和努力才能拥有这样的“动力”,所以只要我们更好的了解ddos攻击,积极部署防御措施,还是能够在很大程度上缓解和抵御这类安全威胁的。
增强防御力
对抗ddos攻击一个很重要的要素就是增强自身的防御能力。使用更大的带宽及提升相关设备的性能是面对ddos攻击最直接的处理方法。虽然这必定需要耗用一定的资源,但是对于那些将生存寄托于这些在线系统的企业来说,进行这种投入是具备足够理由的。只是在执行这类“硬性增幅”的时候,我们需要把握适度的原则。
因为我们的资源是有限的,如果增加100%的投入仅能在相关性能及ddos防御力上获得10%的提升,明显是一种得不偿失的处理方式,毕竟这并不是我们仅有的选择。而且攻击者的资源同样是有限的,在我们增加防御强度的同时,就意味着攻击者必须集合比原来多得多的攻击傀儡机来实施攻击,并且会提高攻击者暴露的风险。不过应该记住的是,真正有效的ddos防御并不是陷入与攻击者“角力”的恶性循环当中,而是应该综合各种方法,为攻击者设置足够的障碍。
目标系统处理
攻击者的最终目标可能是一台主机,也可能是一台网络设备。除了对其目标的硬件能力进行增强之外,我们同样应该充分发挥系统自身的潜能,通过对目标系统的针对性处理,我们可以有效地放大现有资源的能量。最基本的任务是做好更新补丁的工作。特别是一些操作系统的通讯协议堆栈存在着问题,很容易成为拒绝服务攻击的利用对象。因为利用漏洞实施拒绝服务攻击相对于纯粹的设施能力比拼要容易的多。如果不能保证消除明显可被拒绝服务攻击利用的漏洞,其它的防御工作将只能成为摆设。
好在现在各类系统的补丁更新速度还是比较令人满意的,只要根据自身环境的情况注意对相关系统的补丁发布情况进行跟踪就可以了。一些经常被使用的方法还包括限制连接队列的长度以及减少处理延时等。前者可以缓解系统资源的耗尽,虽然不能完全避免“拒绝服务”的发生,但是至少在一定程度上降低了系统崩溃的可能性。而后者能够加强系统的处理能力,通过减少延时,我们可以以更快的速度抛弃队列里的等待的连接,而不是任其堆满队列;不过这种方法也不是在所有的情况下都有效,因为很多ddos的攻击机制并不是建立在类似syn flood这样以畸形连接淹没队列的方式之上。
纵深防御
攻击者和目标通常并非直接相连,两者之间要经过很多网络节点才能进行通信。所以我们可以在受保护系统之前尽可能部署有效的屏障,以缓解系统的压力。设置屏障最主要的工具就是_blank">防火墙,先进的_blank">防火墙产品能够有效识别和处理数据包的深层内容,这样有助于我们设置更加细致的过滤。
现在有很多_blank">防火墙产品集成了反ddos功能,进一步提高了对常见ddos攻击包的识别能力。这样的产品可以在很大程度上增强ddos防御能力,并且可以做到不对数据包进行完全检查就可以发现“恶意行为”。这是非常有帮助的能力,因为如果判断ddos攻击所耗费的处理越少,就越不容易被耗尽处理能力,从而极大的增加攻击者的成本。包括很多路由器产品在内的网络设备都具备一些_blank">防火墙功能,我们应该尽可能充分的利用。
特别是路由器本身负责对数据流进行导向,应尽可能将其置于“前哨”位置。这样既可以起到御敌于千里之外的作用,又可以灵活地将攻击包导向到其它无害的位置甚至化攻击于虚无。当然,攻击者对这些防御层也会有或浅或深的体认,不会一味地以目标系统作为惟一的打击点,他们很可能会在受到这些设施的阻挠之后转而组织针对这些设施的攻击,这就需要我们动态的对防御设施进行调整,随机应变。
除了以上这些基础的方法和工具之外,还有一些更高级的技巧可以利用,例如我们可以进行冗余设计,以在系统瘫痪于攻击发生时有可以随时启用的应急机制;也可以部署一些陷阱部件,既可以用于吸引攻击流量,也可以对攻击者起到一定的迷惑作用。
知己者胜
其实在对我们进行安全防御时,最重要的因素之一是对系统的透彻了解。例如我们必须清楚地知道系统对外开放了哪些服务,哪些访问是被禁止的。同时,当有ddos攻击迹象发生的时候,我们也应该很好地判断攻击利用了系统的哪些处理机制。虽然我们已经听过无数人无数次的重复“关闭不必要服务”,但显然其重要性仍未被充分认知。
有时一个端口没有开放我们就认为其处于安全状态,其实事实并非如此。很多时候,一些关闭的端口由于设计上的原因仍会响应某些查询,这一点经常被ddos攻击所利用。攻击者通过向这些看似沉睡的端口发送海量的查询耗尽目标系统的资源从而达到自己的目的。我们经常利用一个称为shields up!!的基于web接口的工具检查端口的真实状态,我们可以从http://www.grc.com/找到该工具的登入接口。
我们在一台联网的工作站上登录其页面并执行all service ports检测,返回的结果页会列出从0到1055端口状态的方格图,绿色的小块儿表示该端口处于安全的隐秘(stealth)状态,将不会对外界做出任何响应。如果小块儿是代表危险的红色,说明该端口处于开放状态。而如果小块儿是蓝色的话,说明该端口处于关闭状态,虽然大部分程序无法使用这些端口,但不代表其绝对安全。通过类似的工具我们可以更透彻的了解我们暴露在网络上的都是什么,也才能进行真正有效的处理,同时不会忽视存在的隐患。
对于ddos攻击来说并没有100%有效的防御手段。但是由于攻击者必须付出比防御者大得多的资源和努力才能拥有这样的“动力”,所以只要我们更好的了解ddos攻击,积极部署防御措施,还是能够在很大程度上缓解和抵御这类安全威胁的。
增强防御力
对抗ddos攻击一个很重要的要素就是增强自身的防御能力。使用更大的带宽及提升相关设备的性能是面对ddos攻击最直接的处理方法。虽然这必定需要耗用一定的资源,但是对于那些将生存寄托于这些在线系统的企业来说,进行这种投入是具备足够理由的。只是在执行这类“硬性增幅”的时候,我们需要把握适度的原则。
因为我们的资源是有限的,如果增加100%的投入仅能在相关性能及ddos防御力上获得10%的提升,明显是一种得不偿失的处理方式,毕竟这并不是我们仅有的选择。而且攻击者的资源同样是有限的,在我们增加防御强度的同时,就意味着攻击者必须集合比原来多得多的攻击傀儡机来实施攻击,并且会提高攻击者暴露的风险。不过应该记住的是,真正有效的ddos防御并不是陷入与攻击者“角力”的恶性循环当中,而是应该综合各种方法,为攻击者设置足够的障碍。
目标系统处理
攻击者的最终目标可能是一台主机,也可能是一台网络设备。除了对其目标的硬件能力进行增强之外,我们同样应该充分发挥系统自身的潜能,通过对目标系统的针对性处理,我们可以有效地放大现有资源的能量。最基本的任务是做好更新补丁的工作。特别是一些操作系统的通讯协议堆栈存在着问题,很容易成为拒绝服务攻击的利用对象。因为利用漏洞实施拒绝服务攻击相对于纯粹的设施能力比拼要容易的多。如果不能保证消除明显可被拒绝服务攻击利用的漏洞,其它的防御工作将只能成为摆设。
好在现在各类系统的补丁更新速度还是比较令人满意的,只要根据自身环境的情况注意对相关系统的补丁发布情况进行跟踪就可以了。一些经常被使用的方法还包括限制连接队列的长度以及减少处理延时等。前者可以缓解系统资源的耗尽,虽然不能完全避免“拒绝服务”的发生,但是至少在一定程度上降低了系统崩溃的可能性。而后者能够加强系统的处理能力,通过减少延时,我们可以以更快的速度抛弃队列里的等待的连接,而不是任其堆满队列;不过这种方法也不是在所有的情况下都有效,因为很多ddos的攻击机制并不是建立在类似syn flood这样以畸形连接淹没队列的方式之上。
纵深防御
攻击者和目标通常并非直接相连,两者之间要经过很多网络节点才能进行通信。所以我们可以在受保护系统之前尽可能部署有效的屏障,以缓解系统的压力。设置屏障最主要的工具就是_blank">防火墙,先进的_blank">防火墙产品能够有效识别和处理数据包的深层内容,这样有助于我们设置更加细致的过滤。
现在有很多_blank">防火墙产品集成了反ddos功能,进一步提高了对常见ddos攻击包的识别能力。这样的产品可以在很大程度上增强ddos防御能力,并且可以做到不对数据包进行完全检查就可以发现“恶意行为”。这是非常有帮助的能力,因为如果判断ddos攻击所耗费的处理越少,就越不容易被耗尽处理能力,从而极大的增加攻击者的成本。包括很多路由器产品在内的网络设备都具备一些_blank">防火墙功能,我们应该尽可能充分的利用。
特别是路由器本身负责对数据流进行导向,应尽可能将其置于“前哨”位置。这样既可以起到御敌于千里之外的作用,又可以灵活地将攻击包导向到其它无害的位置甚至化攻击于虚无。当然,攻击者对这些防御层也会有或浅或深的体认,不会一味地以目标系统作为惟一的打击点,他们很可能会在受到这些设施的阻挠之后转而组织针对这些设施的攻击,这就需要我们动态的对防御设施进行调整,随机应变。
除了以上这些基础的方法和工具之外,还有一些更高级的技巧可以利用,例如我们可以进行冗余设计,以在系统瘫痪于攻击发生时有可以随时启用的应急机制;也可以部署一些陷阱部件,既可以用于吸引攻击流量,也可以对攻击者起到一定的迷惑作用。
知己者胜
其实在对我们进行安全防御时,最重要的因素之一是对系统的透彻了解。例如我们必须清楚地知道系统对外开放了哪些服务,哪些访问是被禁止的。同时,当有ddos攻击迹象发生的时候,我们也应该很好地判断攻击利用了系统的哪些处理机制。虽然我们已经听过无数人无数次的重复“关闭不必要服务”,但显然其重要性仍未被充分认知。
有时一个端口没有开放我们就认为其处于安全状态,其实事实并非如此。很多时候,一些关闭的端口由于设计上的原因仍会响应某些查询,这一点经常被ddos攻击所利用。攻击者通过向这些看似沉睡的端口发送海量的查询耗尽目标系统的资源从而达到自己的目的。我们经常利用一个称为shields up!!的基于web接口的工具检查端口的真实状态,我们可以从http://www.grc.com/找到该工具的登入接口。
我们在一台联网的工作站上登录其页面并执行all service ports检测,返回的结果页会列出从0到1055端口状态的方格图,绿色的小块儿表示该端口处于安全的隐秘(stealth)状态,将不会对外界做出任何响应。如果小块儿是代表危险的红色,说明该端口处于开放状态。而如果小块儿是蓝色的话,说明该端口处于关闭状态,虽然大部分程序无法使用这些端口,但不代表其绝对安全。通过类似的工具我们可以更透彻的了解我们暴露在网络上的都是什么,也才能进行真正有效的处理,同时不会忽视存在的隐患。
深入解析并防范电脑蠕虫病毒!
[ 2007-03-25 02:58:21 | 作者: sun ]
凡能够引起计算机故障,破坏计算机数据的程序统称为计算机病毒。所以从这个意义上说,蠕虫也是一种病毒!网络蠕虫病毒,作为对互联网危害严重的 一种计算机程序,其破坏力和传染性不容忽视。与传统的病毒不同,蠕虫病毒以计算机为载体,以网络为攻击对象!本文中将蠕虫病毒分为针对企业网络和个人用户2类,并从企业用户和个人用户两个方面探讨蠕虫病毒的特征和一些防范措施!
...
阅读全文...
...
阅读全文...
通过HttpModule实现数据库防注入
[ 2007-03-25 02:58:07 | 作者: sun ]
通过相应的关键字去识别是否有 Sql注入攻击代码
string SqlStr = "and |exec |insert |select |delete |update |count | * |chr |mid |master |truncate |char |declare ";
在下面的代码中你要看以上面的定义, 其实就是定义要识别的关键字.
而我们处理请求一般都是通过 Request.QueryString / Request.Form 这两种
我们可以专门写一个类去处理这些请求, 但如果在每一个处理环节都载入这个类去做处理, 那太麻烦了.
如果写一个ISAPI当然也能完成这个功能的实现, 但在.NET 中 HttpModule帮我们实现了类似于ISAPI Filter的功能, 所以改为通过 HttpModule 去处理这些事情是最好不过的啦.
我们现在要用到的只是里面的BeginRequest这个事件, 所以只需要注册BeginRequest这个事件就可以了.
REM 过滤字符串
Dim strFilter As String = "and|exec|insert|select|delete|update|count|*|chr|mid|master|truncate|char|declare|&"
REM 分割后的过滤字符串数组
Dim strf() As String
Dim strTemp1, strTemp2 As String
strf = strFilter.Split("|")
If Request.RequestType = "GET" Then
For Each strTemp1 In Request.QueryString
For Each strTemp2 In strf
If InStr(LCase(strTemp1), LCase(strTemp2), CompareMethod.Text) Then
Response.Write("想干啥?别注我!有漏洞通知QQ:26242000")
Response.End()
End If
Next
Next
ElseIf Request.RequestType = "POST" Then
For Each strTemp1 In Request.Form
For Each strTemp2 In strf
If InStr(LCase(strTemp1), LCase(strTemp2), CompareMethod.Text) Then
Response.Write("想干啥?别注我!有漏洞通知QQ:26242000")
Response.End()
End If
Next
Next
End If
再来看看我在百度上找的sql防攻击代码
// @copyright S.Sams Lifexperience http://blog.8see.net/
using System;
namespace Theme.Services.Public
{
/// <summary>
/// SqlstrAny 的摘要说明。
/// </summary>
public class ProcessRequest
{
public ProcessRequest()
{
//
// TODO: 在此处添加构造函数逻辑
//
}
#region SQL注入式攻击代码分析
/// <summary>
/// 处理用户提交的请求
/// </summary>
public void StartProcessRequest()
{
try
{
string getkeys = "";
string sqlErrorPage = System.Configuration.ConfigurationSettings.AppSettings["CustomErrorPage"].ToString();
if (System.Web.HttpContext.Current.Request.QueryString != null)
{
for(int i=0;i<System.Web.HttpContext.Current.Request.QueryString.Count;i++)
{
getkeys = System.Web.HttpContext.Current.Request.QueryString.Keys[i];
if (!ProcessSqlStr(System.Web.HttpContext.Current.Request.QueryString[getkeys]))
{
System.Web.HttpContext.Current.Response.Redirect (sqlErrorPage+"?errmsg=sqlserver&sqlprocess=true");
System.Web.HttpContext.Current.Response.End();
}
}
}
if (System.Web.HttpContext.Current.Request.Form != null)
{
for(int i=0;i<System.Web.HttpContext.Current.Request.Form.Count;i++)
{
getkeys = System.Web.HttpContext.Current.Request.Form.Keys[i];
if (!ProcessSqlStr(System.Web.HttpContext.Current.Request.Form[getkeys]))
{
System.Web.HttpContext.Current.Response.Redirect (sqlErrorPage+"?errmsg=sqlserver&sqlprocess=true");
System.Web.HttpContext.Current.Response.End();
}
}
}
}
catch
{
// 错误处理: 处理用户提交信息!
}
}
/// <summary>
/// 分析用户请求是否正常
/// </summary>
/// <param name="Str">传入用户提交数据</param>
/// <returns>返回是否含有SQL注入式攻击代码</returns>
private bool ProcessSqlStr(string Str)
{
bool ReturnValue = true;
try
{
if (Str != "")
{
string SqlStr = "and |exec |insert |select |delete |update |count | * |chr |mid |master |truncate |char |declare ";
string[] anySqlStr = SqlStr.Split('|');
foreach (string ss in anySqlStr)
{
if (Str.IndexOf(ss)>=0)
{
ReturnValue = false;
}
}
}
}
catch
{
ReturnValue = false;
}
return ReturnValue;
}
#endregion
}
}
// System.Configuration.ConfigurationSettings.AppSettings["CustomErrorPage"].ToString(); 这个为用户自定义错误页面提示地址,
//在Web.Config文件时里面添加一个 CustomErrorPage 即可
//<!-- 防止SQL数据库注入攻击的出错页面自定义地址 -->
// <add key="CustomErrorPage" value="../Error.html" />
string SqlStr = "and |exec |insert |select |delete |update |count | * |chr |mid |master |truncate |char |declare ";
在下面的代码中你要看以上面的定义, 其实就是定义要识别的关键字.
而我们处理请求一般都是通过 Request.QueryString / Request.Form 这两种
我们可以专门写一个类去处理这些请求, 但如果在每一个处理环节都载入这个类去做处理, 那太麻烦了.
如果写一个ISAPI当然也能完成这个功能的实现, 但在.NET 中 HttpModule帮我们实现了类似于ISAPI Filter的功能, 所以改为通过 HttpModule 去处理这些事情是最好不过的啦.
我们现在要用到的只是里面的BeginRequest这个事件, 所以只需要注册BeginRequest这个事件就可以了.
REM 过滤字符串
Dim strFilter As String = "and|exec|insert|select|delete|update|count|*|chr|mid|master|truncate|char|declare|&"
REM 分割后的过滤字符串数组
Dim strf() As String
Dim strTemp1, strTemp2 As String
strf = strFilter.Split("|")
If Request.RequestType = "GET" Then
For Each strTemp1 In Request.QueryString
For Each strTemp2 In strf
If InStr(LCase(strTemp1), LCase(strTemp2), CompareMethod.Text) Then
Response.Write("想干啥?别注我!有漏洞通知QQ:26242000")
Response.End()
End If
Next
Next
ElseIf Request.RequestType = "POST" Then
For Each strTemp1 In Request.Form
For Each strTemp2 In strf
If InStr(LCase(strTemp1), LCase(strTemp2), CompareMethod.Text) Then
Response.Write("想干啥?别注我!有漏洞通知QQ:26242000")
Response.End()
End If
Next
Next
End If
再来看看我在百度上找的sql防攻击代码
// @copyright S.Sams Lifexperience http://blog.8see.net/
using System;
namespace Theme.Services.Public
{
/// <summary>
/// SqlstrAny 的摘要说明。
/// </summary>
public class ProcessRequest
{
public ProcessRequest()
{
//
// TODO: 在此处添加构造函数逻辑
//
}
#region SQL注入式攻击代码分析
/// <summary>
/// 处理用户提交的请求
/// </summary>
public void StartProcessRequest()
{
try
{
string getkeys = "";
string sqlErrorPage = System.Configuration.ConfigurationSettings.AppSettings["CustomErrorPage"].ToString();
if (System.Web.HttpContext.Current.Request.QueryString != null)
{
for(int i=0;i<System.Web.HttpContext.Current.Request.QueryString.Count;i++)
{
getkeys = System.Web.HttpContext.Current.Request.QueryString.Keys[i];
if (!ProcessSqlStr(System.Web.HttpContext.Current.Request.QueryString[getkeys]))
{
System.Web.HttpContext.Current.Response.Redirect (sqlErrorPage+"?errmsg=sqlserver&sqlprocess=true");
System.Web.HttpContext.Current.Response.End();
}
}
}
if (System.Web.HttpContext.Current.Request.Form != null)
{
for(int i=0;i<System.Web.HttpContext.Current.Request.Form.Count;i++)
{
getkeys = System.Web.HttpContext.Current.Request.Form.Keys[i];
if (!ProcessSqlStr(System.Web.HttpContext.Current.Request.Form[getkeys]))
{
System.Web.HttpContext.Current.Response.Redirect (sqlErrorPage+"?errmsg=sqlserver&sqlprocess=true");
System.Web.HttpContext.Current.Response.End();
}
}
}
}
catch
{
// 错误处理: 处理用户提交信息!
}
}
/// <summary>
/// 分析用户请求是否正常
/// </summary>
/// <param name="Str">传入用户提交数据</param>
/// <returns>返回是否含有SQL注入式攻击代码</returns>
private bool ProcessSqlStr(string Str)
{
bool ReturnValue = true;
try
{
if (Str != "")
{
string SqlStr = "and |exec |insert |select |delete |update |count | * |chr |mid |master |truncate |char |declare ";
string[] anySqlStr = SqlStr.Split('|');
foreach (string ss in anySqlStr)
{
if (Str.IndexOf(ss)>=0)
{
ReturnValue = false;
}
}
}
}
catch
{
ReturnValue = false;
}
return ReturnValue;
}
#endregion
}
}
// System.Configuration.ConfigurationSettings.AppSettings["CustomErrorPage"].ToString(); 这个为用户自定义错误页面提示地址,
//在Web.Config文件时里面添加一个 CustomErrorPage 即可
//<!-- 防止SQL数据库注入攻击的出错页面自定义地址 -->
// <add key="CustomErrorPage" value="../Error.html" />
巧妙的搭建一个Windows下的蜜罐系统
[ 2007-03-25 02:57:52 | 作者: sun ]
搭建一个基于*nix系统的蜜罐网络相对说来需要比较多系统维护和网络安全知识的基础,但是做一个windows系统的蜜罐(下面简称winpot)的门槛就比较低,而且大部分朋友都会M$的select & click :),今天我们就一起尝试搭建一个windows下的蜜罐系统
由于win和*nix系统不一样,我们很难使用有效的工具来完整的追踪入侵者的行为,因为win下有各式各样的远程管理软件(VNC,remote-anything),而对于这些软件,大部分杀毒软件是不查杀他们的,而我们也没有象LIDS那样强大的工具来控制Administrator的权限,相对而言,winpot的风险稍微大了点,而且需要花更加多的时间和精力去看管他,没办法,门槛低了,风险当然就会相对高了。
OK,开始
先介绍一下我们需要的软件
vpc Virtual pc,他是一个虚拟操作系统的软件,当然你也可以选择vmware.
ActivePerl-5.8.0.805-MSWin32-x86.msi windows下的perl解析器
evtsys_exe.zip 一个把系统日志发送到log服务器的程序
comlog101.zip 一个用perl写的偷偷记录cmd.exe的程序,不会在进程列表中显示,因为入侵者运行的的确是cmd.exe :)
Kiwi_Syslog_Daemon_7 一个很专业的日志服务器软件
norton antivirus enterprise client 我最喜欢的杀毒软件,支持win2k server。当然,如果你觉得其他的更加适合你,你有权选择
ethereal-setup-0.9.8.exe Ethereal的windows版本,Ethereal是*nix下一个很出名的sniffer,当然,如果你已经在你的honeynet中布置好了
sniffer,这个大可不必了,但是本文主要还是针对Dvldr 蠕虫的,而且ethereal的decode功能很强,用他来获取irc MSG很不错的
WinPcap_3_0_beta.exe ethereal需要他的支持。
md5sum.exe windows下用来进行md5sum校验的工具
绿色警戒防火墙 对入侵者做限制
windows 2000 professional的ISO镜象 用vpc虚拟操作系统的时候需要用到他
除了windows 2000 professional的ISO镜象,本文涉及的所有程序都可以在郑州大学网络安全园下载的到
http://www.520hack.com
Dvldr蠕虫简介
他是一个利用windows 2000/NT弱口令的蠕虫。该蠕虫用所带的字典暴力破解随机生成的ip的机器,如果成功,则感染机器,并植入VNC修改版
本,并向一个irc列表汇报已经感染主机的信息,同时继续向其他机器感染。可以访问郑州大学网络安全园或者关于他更详细的信息。
一:使用VPC安装一个win2k pro,具体的安装方法本文就省略了,打上所有的补丁,只留一个漏洞,就是dvldr蠕虫需要的administrator的空
密码。
二:安装norton antivirus enterprise client,升级到最新的病毒库,并启动实时监控
三:用cmdlog替换cmd.exe程序,把comlog101.zip解压缩后有五个文件cmd.exe,cmd101.pl,COMLOG.txt,MD5.txt,README.txt,其中cmdlog.txt和
readme.txt都是说明文件,md5.txt包含这五个文件的md5校验和的值,我们可以使用md5sum.exe工具来检测一下他们是否遭受修改
D:comlog101>md5sum.exe *
md5sum.exe: .: Permission denied
md5sum.exe: ..: Permission denied
f86ba5ffaa8800a2efa9093d2f11ae6f *cmd.exe
484c4708c17b5a120cb08e40498fea5f *com101.pl
001a6f9ca5f6cf01a23076bad9c6261a *comlog.txt
121bf60bc53999c90c6405440567064b *md5.txt
eb574b236133e60c989c6f472f07827b *md5sum.exe
42605ecfa6fe0f446c915a41396a7266 *README.TXT
把这些数字和md5.txt的数字对比,如果出现不一致,就证明程序遭受修改,请勿使用并通知我
在校验无误之后,我们开始覆盖系统的cmd.exe。先打开资源管理器-->工具-->文件夹选项-->查看,把"隐藏受保护的操作系统文件"的钩去掉,
并选择"显示所有文件和文件夹"-->确定
然后去到C:WINNTsystem32dllcache目录,并找到cmd.exe,并把他改名成cm_.exe,再把comlog101下的cmd.exe和com101.pl复制到这里,并把C
:WINNTsystem32下的cmd.exe也改成cm_.exe,同样把comlog101目录下的cmd.exe和com101.pl复制到这里。在这段时间,系统会提醒你系统
文件遭到修改,问你是否修复,选择取消就可以了。然后在C:WINNTHelp目录下建一个叫"Tutor"的目录,这里是用来放cmd.exe的命令记录的地方,当然你同样可以修改com101.pl来选择日志的存放位置。
现在我们运行cmd.exe,你会发现窗口一闪而过,这是因为我们还没装perl解析器。运行ActivePerl-5.8.0.805-MSWin32-x86.msi,一路next就OK了。
现在我们运行cmd.exe,这回我们可爱的cmd窗口就跳出来了,随便敲几个东西进去,然后去到C:WINNTHelpTutor目录下,你就可以看到记录了。为了避免记录自己在cmd.exe的操作,我们可以把原来的cmd.exe改成另外一个名字来执行。
四:安装日志服务器,我们选择Kiwi的Syslog Daemon 7是因为他够专业并且有很多统计信息和支持产品,一路next并启动服务即可。
netstat -an我们可以看到514端口
UDP 0.0.0.0:514 *:*
五:安装evtsys_exe,解压缩之后有两个程序evtsys.exe和evtsys.dll,同样需要检测文件是否被修改
D:evtsys_exe>md5sum.exe *
md5sum.exe: .: Permission denied
md5sum.exe: ..: Permission denied
f5ba9453e12dc030b5e19f75c079fec2 *evtsys.dll
dcc02e429fbb769ea5d94a2ff0a14067 *evtsys.exe
eb574b236133e60c989c6f472f07827b *md5sum.exe
如果一切正常的话,执行evtsys.exe /?
D:evtsys_exe>evtsys.exe /?
Usage: evtsys.exe -i|-u|-d [-h host] [-p port] [-q char]
-i Install service (安装服务)
-u Uninstall service (卸载服务)
-d Debug: run as console program (以debug模式运行)
-h host Name of log host (日志服务器IP地址)
-p port Port number of syslogd (日志服务器端口,默认是514)
-q char Quote messages with character
Default port: 514
我们运行D:evtsys_exe>evtsys.exe -h 日志服务器IP -i来安装服务
这样你系统的应用程序日志,系统日志,安全日志都会发到日志服务器去了,这样我们就可以更加真实的了解到系统的运行情况。
六:安装WinPcap_3_0_beta.exe和ethereal-setup-0.9.8.exe
下面针对本案例大概的说说ethereal的使用
先启动ethereal
capture->start
capture packets in promiscuous mode
不选这个,因为我们只需要得到本机的信息,不需要以混杂模式运行
filter
filter name:irc
string:ip host urip and tcp port 6667
只能有一条规则,但是可以使用逻辑符号
否定(`!' or `not')
交集(`&&' or `and')
并集(`||' or `or')
还有=,>=,+,&等等
更加详细的设置请查看ethereal的manual
先自己测试一下sniffer是否工作
连接上IRC,并发言,我们可以看到一些结果
然后选择一个记录,并且按”follow tcp stream”就可以查看IRC的聊天内容了
七:安装设置绿色警戒防火墙 关闭“进入请求通知”,开放共享,把所有的入侵检测对策的“拦截”都改成“警告”,警告级别都改成“记录”,我们主要是想了解一下大概的攻击情况
接着打扫战场,把你下载的软件,临时文件,历史记录,文档的记录全部删除,但是别忘记用regsnap做个镜象哦,最后再次开启ethereal
现在剩下的就是等蠕虫感染来了………………
由于win和*nix系统不一样,我们很难使用有效的工具来完整的追踪入侵者的行为,因为win下有各式各样的远程管理软件(VNC,remote-anything),而对于这些软件,大部分杀毒软件是不查杀他们的,而我们也没有象LIDS那样强大的工具来控制Administrator的权限,相对而言,winpot的风险稍微大了点,而且需要花更加多的时间和精力去看管他,没办法,门槛低了,风险当然就会相对高了。
OK,开始
先介绍一下我们需要的软件
vpc Virtual pc,他是一个虚拟操作系统的软件,当然你也可以选择vmware.
ActivePerl-5.8.0.805-MSWin32-x86.msi windows下的perl解析器
evtsys_exe.zip 一个把系统日志发送到log服务器的程序
comlog101.zip 一个用perl写的偷偷记录cmd.exe的程序,不会在进程列表中显示,因为入侵者运行的的确是cmd.exe :)
Kiwi_Syslog_Daemon_7 一个很专业的日志服务器软件
norton antivirus enterprise client 我最喜欢的杀毒软件,支持win2k server。当然,如果你觉得其他的更加适合你,你有权选择
ethereal-setup-0.9.8.exe Ethereal的windows版本,Ethereal是*nix下一个很出名的sniffer,当然,如果你已经在你的honeynet中布置好了
sniffer,这个大可不必了,但是本文主要还是针对Dvldr 蠕虫的,而且ethereal的decode功能很强,用他来获取irc MSG很不错的
WinPcap_3_0_beta.exe ethereal需要他的支持。
md5sum.exe windows下用来进行md5sum校验的工具
绿色警戒防火墙 对入侵者做限制
windows 2000 professional的ISO镜象 用vpc虚拟操作系统的时候需要用到他
除了windows 2000 professional的ISO镜象,本文涉及的所有程序都可以在郑州大学网络安全园下载的到
http://www.520hack.com
Dvldr蠕虫简介
他是一个利用windows 2000/NT弱口令的蠕虫。该蠕虫用所带的字典暴力破解随机生成的ip的机器,如果成功,则感染机器,并植入VNC修改版
本,并向一个irc列表汇报已经感染主机的信息,同时继续向其他机器感染。可以访问郑州大学网络安全园或者关于他更详细的信息。
一:使用VPC安装一个win2k pro,具体的安装方法本文就省略了,打上所有的补丁,只留一个漏洞,就是dvldr蠕虫需要的administrator的空
密码。
二:安装norton antivirus enterprise client,升级到最新的病毒库,并启动实时监控
三:用cmdlog替换cmd.exe程序,把comlog101.zip解压缩后有五个文件cmd.exe,cmd101.pl,COMLOG.txt,MD5.txt,README.txt,其中cmdlog.txt和
readme.txt都是说明文件,md5.txt包含这五个文件的md5校验和的值,我们可以使用md5sum.exe工具来检测一下他们是否遭受修改
D:comlog101>md5sum.exe *
md5sum.exe: .: Permission denied
md5sum.exe: ..: Permission denied
f86ba5ffaa8800a2efa9093d2f11ae6f *cmd.exe
484c4708c17b5a120cb08e40498fea5f *com101.pl
001a6f9ca5f6cf01a23076bad9c6261a *comlog.txt
121bf60bc53999c90c6405440567064b *md5.txt
eb574b236133e60c989c6f472f07827b *md5sum.exe
42605ecfa6fe0f446c915a41396a7266 *README.TXT
把这些数字和md5.txt的数字对比,如果出现不一致,就证明程序遭受修改,请勿使用并通知我
在校验无误之后,我们开始覆盖系统的cmd.exe。先打开资源管理器-->工具-->文件夹选项-->查看,把"隐藏受保护的操作系统文件"的钩去掉,
并选择"显示所有文件和文件夹"-->确定
然后去到C:WINNTsystem32dllcache目录,并找到cmd.exe,并把他改名成cm_.exe,再把comlog101下的cmd.exe和com101.pl复制到这里,并把C
:WINNTsystem32下的cmd.exe也改成cm_.exe,同样把comlog101目录下的cmd.exe和com101.pl复制到这里。在这段时间,系统会提醒你系统
文件遭到修改,问你是否修复,选择取消就可以了。然后在C:WINNTHelp目录下建一个叫"Tutor"的目录,这里是用来放cmd.exe的命令记录的地方,当然你同样可以修改com101.pl来选择日志的存放位置。
现在我们运行cmd.exe,你会发现窗口一闪而过,这是因为我们还没装perl解析器。运行ActivePerl-5.8.0.805-MSWin32-x86.msi,一路next就OK了。
现在我们运行cmd.exe,这回我们可爱的cmd窗口就跳出来了,随便敲几个东西进去,然后去到C:WINNTHelpTutor目录下,你就可以看到记录了。为了避免记录自己在cmd.exe的操作,我们可以把原来的cmd.exe改成另外一个名字来执行。
四:安装日志服务器,我们选择Kiwi的Syslog Daemon 7是因为他够专业并且有很多统计信息和支持产品,一路next并启动服务即可。
netstat -an我们可以看到514端口
UDP 0.0.0.0:514 *:*
五:安装evtsys_exe,解压缩之后有两个程序evtsys.exe和evtsys.dll,同样需要检测文件是否被修改
D:evtsys_exe>md5sum.exe *
md5sum.exe: .: Permission denied
md5sum.exe: ..: Permission denied
f5ba9453e12dc030b5e19f75c079fec2 *evtsys.dll
dcc02e429fbb769ea5d94a2ff0a14067 *evtsys.exe
eb574b236133e60c989c6f472f07827b *md5sum.exe
如果一切正常的话,执行evtsys.exe /?
D:evtsys_exe>evtsys.exe /?
Usage: evtsys.exe -i|-u|-d [-h host] [-p port] [-q char]
-i Install service (安装服务)
-u Uninstall service (卸载服务)
-d Debug: run as console program (以debug模式运行)
-h host Name of log host (日志服务器IP地址)
-p port Port number of syslogd (日志服务器端口,默认是514)
-q char Quote messages with character
Default port: 514
我们运行D:evtsys_exe>evtsys.exe -h 日志服务器IP -i来安装服务
这样你系统的应用程序日志,系统日志,安全日志都会发到日志服务器去了,这样我们就可以更加真实的了解到系统的运行情况。
六:安装WinPcap_3_0_beta.exe和ethereal-setup-0.9.8.exe
下面针对本案例大概的说说ethereal的使用
先启动ethereal
capture->start
capture packets in promiscuous mode
不选这个,因为我们只需要得到本机的信息,不需要以混杂模式运行
filter
filter name:irc
string:ip host urip and tcp port 6667
只能有一条规则,但是可以使用逻辑符号
否定(`!' or `not')
交集(`&&' or `and')
并集(`||' or `or')
还有=,>=,+,&等等
更加详细的设置请查看ethereal的manual
先自己测试一下sniffer是否工作
连接上IRC,并发言,我们可以看到一些结果
然后选择一个记录,并且按”follow tcp stream”就可以查看IRC的聊天内容了
七:安装设置绿色警戒防火墙 关闭“进入请求通知”,开放共享,把所有的入侵检测对策的“拦截”都改成“警告”,警告级别都改成“记录”,我们主要是想了解一下大概的攻击情况
接着打扫战场,把你下载的软件,临时文件,历史记录,文档的记录全部删除,但是别忘记用regsnap做个镜象哦,最后再次开启ethereal
现在剩下的就是等蠕虫感染来了………………
修改注册表清除黑客程序保证计算机安全
[ 2007-03-25 02:57:40 | 作者: sun ]
在网络给我们的工作学习带来极大方便的同时,病毒、木马、后门以及黑客程序也严重影响着信息的安全。这些程序感染计算机的一个共同特点是在注册表中写入信息,来达到如自动运行、破坏和传播等目的。以下是笔者在网上收集的,通过修改注册表来对付病毒、木马、后门以及黑客程序,保证个人计算机的安全。
1.清理访问“网络邻居”后留下的字句信息
在HEKY_CURRENT_USER/Network/Recent下,删除下面的主键。
2.取消登陆时自动拨号
在HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/Network/RealModeNet下修改右边窗口中的“autologon”为“01 00 00 00 00”。
3.取消登录时选择用户
已经删除了所有用户,但登录时还要选择用户,我们要取消登录时选择用户,就要在HKEY_LOCAL_MACHINENetworkLogon下,在右边的窗口中,修改"UserProfiles"值为"0"。
4.隐藏上机用户登录的名字
在HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionWinlogon下在右边的窗口中新建字符串"DontDisplayLastUserName",设值为"1"。
5.预防Acid Battery v1.0木马的破坏
在HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionRunServices下若在右边窗口中如发现了“Explorer”键值,则说明中了YAI木马,将它删除。
6.预防YAI木马的破坏
在HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionRunServices下若在右边窗口中如发现了“Batterieanzeige”键值,则说明中了YAI木马,将它删除。
7.预防Eclipse 2000木马的破坏
在HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionRunServices下若在右边窗口中如发现了“bybt”键值,则将它删除。然后在HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionRunServices下删除右边的键值“cksys”,重新启动电脑。
8.预防BO2000的破坏
在HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionRunServices下若在右边窗口中如发现了“umgr32.exe”键值,则说明中了BO2000,将它删除。
9.预防爱虫的破坏
在HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionRun下若在右边窗口中如发现了“MSKernel32”键值,就将它删除。
10.禁止出现IE菜单中“工具”栏里“interner选项”
把c:windowssystem下的名为inetcpl.cpl更名为inetcpl.old或则别的名字后就会出现禁止使用的情况把名字再换回来,就可以恢复使用。
11.预防BackDoor的破坏
在HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionRun下若在右边窗口中如发现了“Notepad”键值,就将它删除。
12.预防WinNuke的破坏
在HKEY_LOCAL_MACHINESystemCurrentControlSetServicesVxDMSTCP下在右边的窗口中新建或修改字符串“BSDUrgent”,设其值为0。
13.预防KeyboardGhost的破坏
在HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRunServices下如发现KG.EXE这一键值,就将它删除,并查找KG.exe文件和kg.dat文件,将它们都删除
14.查找NetSpy黑客程序
在HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRun下,在右边的窗口中寻找键"NetSpy",如果存在,就说明已经装有NetSpy黑客程序,把它删除.
1.清理访问“网络邻居”后留下的字句信息
在HEKY_CURRENT_USER/Network/Recent下,删除下面的主键。
2.取消登陆时自动拨号
在HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/Network/RealModeNet下修改右边窗口中的“autologon”为“01 00 00 00 00”。
3.取消登录时选择用户
已经删除了所有用户,但登录时还要选择用户,我们要取消登录时选择用户,就要在HKEY_LOCAL_MACHINENetworkLogon下,在右边的窗口中,修改"UserProfiles"值为"0"。
4.隐藏上机用户登录的名字
在HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionWinlogon下在右边的窗口中新建字符串"DontDisplayLastUserName",设值为"1"。
5.预防Acid Battery v1.0木马的破坏
在HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionRunServices下若在右边窗口中如发现了“Explorer”键值,则说明中了YAI木马,将它删除。
6.预防YAI木马的破坏
在HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionRunServices下若在右边窗口中如发现了“Batterieanzeige”键值,则说明中了YAI木马,将它删除。
7.预防Eclipse 2000木马的破坏
在HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionRunServices下若在右边窗口中如发现了“bybt”键值,则将它删除。然后在HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionRunServices下删除右边的键值“cksys”,重新启动电脑。
8.预防BO2000的破坏
在HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionRunServices下若在右边窗口中如发现了“umgr32.exe”键值,则说明中了BO2000,将它删除。
9.预防爱虫的破坏
在HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionRun下若在右边窗口中如发现了“MSKernel32”键值,就将它删除。
10.禁止出现IE菜单中“工具”栏里“interner选项”
把c:windowssystem下的名为inetcpl.cpl更名为inetcpl.old或则别的名字后就会出现禁止使用的情况把名字再换回来,就可以恢复使用。
11.预防BackDoor的破坏
在HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionRun下若在右边窗口中如发现了“Notepad”键值,就将它删除。
12.预防WinNuke的破坏
在HKEY_LOCAL_MACHINESystemCurrentControlSetServicesVxDMSTCP下在右边的窗口中新建或修改字符串“BSDUrgent”,设其值为0。
13.预防KeyboardGhost的破坏
在HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRunServices下如发现KG.EXE这一键值,就将它删除,并查找KG.exe文件和kg.dat文件,将它们都删除
14.查找NetSpy黑客程序
在HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRun下,在右边的窗口中寻找键"NetSpy",如果存在,就说明已经装有NetSpy黑客程序,把它删除.
BBSxp/LeadBBS后台上传Webshell的防范
[ 2007-03-25 02:57:28 | 作者: sun ]
关于BBSxp/LeadBBS的后台上传Webshell的防范
作者:kEvin1986 更新日期:2005-04-01 类别:网络安全->安全防御 总浏览/今日:650/1
最近弄了两个BBS系统,发现后台传/改Webshell的时候都做了一定限度的防范,使得很多新手不知道如何去传Webshell控制主机.其实这个问题很简单......几分钟就能解决
1.BBSXP
昨天朋友弄进去一个BBSXP的论坛,这个论坛以前问题多多,制作人(好象是yuzi工作室)很不注意安全的防范,而且对脚本安全基本知识缺乏了解,导致了很多漏洞,而现在已经不是是很流行了.但是新版的还是新版的,也要看看...
后台大致浏览了一下发现可以和Dvbbs的后台一样通过备份数据库来获取Webshell,可是问题是如果备份成ASP的话,后台有一个验证,提示不能备份成.ASP文件.其实这个东西是个名副其实的鸡肋防范策略,因为我们还知道有CdxCerAsaHtr等格式也可以执行ASP脚本.而BBSXP并没有想到.......所以,我们把备份的改为.asa等就可以传了.........BBSXP还是那么菜啊.....
2.LeadBBS.
LeadBBS总体来说还是个强悍的论坛,但是最近还是被Lin给发现了Cookie欺骗漏洞.呵呵.那么在很多人利用的时候,都发现没办法传WebShell.其中包括Sniper .哈哈/
其实我们可以编辑后台的一个ASP文件,而这个文件是检测server和<%这两个字符的.看起来是做了不错的防范,可是还是有问题的.
我们可以通过include来写一个ASP木马.
首先从论坛上传一个JPG后缀的ASP木马,这个木马最好是直接使用FSO或ADODB.STREAM在当前目录生成一个Newmm.ASP这样的代码.因为Include是无法接收数据的.
然后在后台的编辑文件那里写上
然后访问这个文件,最后访问生成的ASP木马地址就可以了.......
作者:kEvin1986 更新日期:2005-04-01 类别:网络安全->安全防御 总浏览/今日:650/1
最近弄了两个BBS系统,发现后台传/改Webshell的时候都做了一定限度的防范,使得很多新手不知道如何去传Webshell控制主机.其实这个问题很简单......几分钟就能解决
1.BBSXP
昨天朋友弄进去一个BBSXP的论坛,这个论坛以前问题多多,制作人(好象是yuzi工作室)很不注意安全的防范,而且对脚本安全基本知识缺乏了解,导致了很多漏洞,而现在已经不是是很流行了.但是新版的还是新版的,也要看看...
后台大致浏览了一下发现可以和Dvbbs的后台一样通过备份数据库来获取Webshell,可是问题是如果备份成ASP的话,后台有一个验证,提示不能备份成.ASP文件.其实这个东西是个名副其实的鸡肋防范策略,因为我们还知道有CdxCerAsaHtr等格式也可以执行ASP脚本.而BBSXP并没有想到.......所以,我们把备份的改为.asa等就可以传了.........BBSXP还是那么菜啊.....
2.LeadBBS.
LeadBBS总体来说还是个强悍的论坛,但是最近还是被Lin给发现了Cookie欺骗漏洞.呵呵.那么在很多人利用的时候,都发现没办法传WebShell.其中包括Sniper .哈哈/
其实我们可以编辑后台的一个ASP文件,而这个文件是检测server和<%这两个字符的.看起来是做了不错的防范,可是还是有问题的.
我们可以通过include来写一个ASP木马.
首先从论坛上传一个JPG后缀的ASP木马,这个木马最好是直接使用FSO或ADODB.STREAM在当前目录生成一个Newmm.ASP这样的代码.因为Include是无法接收数据的.
然后在后台的编辑文件那里写上
然后访问这个文件,最后访问生成的ASP木马地址就可以了.......
针对ASP类网站的Win 2003硬盘安全设置
[ 2007-03-25 02:57:15 | 作者: sun ]
C:分区部分:
c:
administrators 全部
iis_wpg 只有该文件夹
列出文件夹/读数据
读属性
读扩展属性
读取权限
c:inetpubmailroot
administrators 全部
system 全部
service 全部
c:inetpubftproot
everyone 只读和运行
c:windows
administrators 全部
Creator owner
不是继承的
只有子文件夹及文件
完全
Power Users
修改,读取和运行,列出文件夹目录,读取,写入
system 全部
Users 读取和运行,列出文件夹目录,读取
c:Program Files
Everyone 只有该文件夹
不是继承的
列出文件夹/读数据
administrators 全部
iis_wpg 只有该文件夹
列出文件/读数据
读属性
读扩展属性
读取权限
c:Program FilesCommon Files
administrators 全部
Creator owner
不是继承的
只有子文件夹及文件
完全
Power Users
修改,读取和运行,列出文件夹目录,读取,写入
system 全部
TERMINAL SERVER Users(如果有这个用户)
修改,读取和运行,列出文件夹目录,读取,写入
Users 读取和运行,列出文件夹目录,读取
如果安装了我们的软件:
c:Program FilesLIWEIWENSOFT
Everyone 读取和运行,列出文件夹目录,读取
administrators 全部
IIS_WPG 读取和运行,列出文件夹目录,读取
c:Program FilesDimac(如果有这个目录)
Everyone 读取和运行,列出文件夹目录,读取
administrators 全部
c:Program FilesComPlus Applications (如果有)
administrators 全部
c:Program FilesGflSDK (如果有)
administrators 全部
Creator owner
不是继承的
只有子文件夹及文件
完全
Power Users
修改,读取和运行,列出文件夹目录,读取,写入
system 全部
TERMINAL SERVER Users
修改,读取和运行,列出文件夹目录,读取,写入
Users 读取和运行,列出文件夹目录,读取
Everyone 读取和运行,列出文件夹目录,读取
c:Program FilesInstallShield Installation Information (如果有)
c:Program FilesInternet Explorer (如果有)
c:Program FilesNetMeeting (如果有)
administrators 全部
c:Program FilesWindowsUpdate
Creator owner
不是继承的
只有子文件夹及文件
完全
administrators 全部
Power Users
修改,读取和运行,列出文件夹目录,读取,写入
system 全部
D:分区部分:
d: (如果用户网站内容放置在这个分区中)
administrators 全部权限
d:FreeHost (如果此目录用来放置用户网站内容)
administrators 全部权限
SERVICE 全部权限
E:分区部分:
从安全角度,我们建议WebEasyMail(WinWebMail)安装在独立的盘中,例如E:
E:(如果webeasymail安装在这个盘中)
administrators 全部权限
system 全部权限
IUSR_*,默认的Internet来宾帐户(如果这个网站用这个用户来运行)
不是继承的
只有子文件夹
读取权限
E:WebEasyMail (如果webeasymail安装在这个目录中)
administrators 全部
system 全部权限
SERVICE 全部
IUSR_*,默认的Internet来宾帐户 全部权限(如果这个网站用这个用户来运行)
关于IUSR_*,我们不建议用这个用户来运行Webeasymail,应该用平台开一个虚拟主机来运行Webeasymail。
----------------不知道2000是不是一样设置
针对PHP木马攻击的防御之道操作系统常遇木马的预防技巧
[ 2007-03-25 02:56:58 | 作者: sun ]
木马程序是目前比较流行的一类病毒文件,它与一般的病毒不同,它不会自我繁殖,也并不刻意地去感染其他文件。它通过将自身伪装吸引用户下载执行,或以捆绑在网页中的形式,当用户浏览网页时受害。
木马程序向施种木马者提供打开被种者电脑的门户,使施种者可以任意毁坏、窃取被种者的文件和隐私,甚至远程操控被种者的电脑。木马的原理和计算机网络中常常要用到的远程控制软件相似,但由于远程控制软件是“善意”的控制,因此通常不具有隐蔽性;而木马程序则完全相反,木马要达到的是“偷窃”性的远程控制,如果没有很强的隐蔽性的话,那就是毫无价值的。
木马通常有两个可执行程序:一个是客户端,即控制端,另一个是服务端,即被控制端。木马的设计者为了防止木马被发现,而采用多种手段隐藏木马。木马的服务一旦运行,电脑就会有一个或几个端口被打开,黑客就可以利用控制端进入运行了服务端的电脑,甚至可以控制被种者的电脑,所以被种者的安全和个人隐私也就全无保障了!
随着微软的操作系统从Win9X过渡到WinNT系统(包括2000/xp/2003),微软的任务管理器也一下子“脱胎换骨”,变得“火眼金睛”起来 (在Win9X中,只需要将进程注册为系统服务就能够从进程查看器中隐形,可是这一切在WinNT中却完全不同,无论木马从端口、启动文件上如何巧妙地隐藏自己,始终都不能欺骗WinNT的任务管理器),这使得以前在win9X操作系统下靠将进程注册为系统服务就能够从任务管理器中隐形的木马面临前所未有的危机,所以木马的开发者及时调整了开发思路,转入了开发可以躲避WinNT的任务管理器的进程查询的动态嵌入式DLL木马。
要弄清楚什么是动态嵌入式DLL木马,我们必须要先了解Windows系统的另一种“可执行文件”——DLL,DLL是Dynamic Link Library(动态链接库)的缩写,DLL文件是Windows的基础,因为所有的API函数都是在DLL中实现的。DLL文件没有程序逻辑,是由多个功能函数构成,它并不能独立运行,DLL文件一般都是由进程加载并调用的。
因为DLL文件不能独立运行,所以在进程列表中并不会出现DLL.所以木马的开发者就通过编写动态嵌入式DLL木马,并且通过别的进程来运行它,那么无论是入侵检测软件还是进程列表中,都只会出现那个进程而并不会出现那个DLL木马。如果那个进程是可信进程(例如资源管理器Explorer.exe),那么就没人会怀疑DLL文件也是个木马了。从而木马就又实现了自己的隐蔽性的功能,所以,预防DLL木马也是相当重要的。
在WinNT系统,DLL木马一般都藏在System32目录下(因为System32是系统文件存放的目录,里面的文件很多,在里面隐藏当然很方便了),针对这一点我们可以在安装好系统和必要的应用程序后,对该目录下的EXE和DLL文件作一次记录:点击开始—运行—输入cmd回车—出现DOS命令行模式—输入cd\回车,再输入cd C:\Windows\System32回车,这就转换目录到了System32目录(要还是不知道怎么进入的,请参看DOS的cd命令的使用),输入命令:dir *.exe>exebackup.txt &dir *.dll>dllbackup.txt回车。
这样,我们就把System32目录下所有的exe文件和所有的dll文件都记录在exebackup.txt和dllbackup.txt里面了。日后如发现系统异常而用传统的方法又查不出问题时,则要考虑是不是系统中已经潜入了DLL木马。
这时我们用同样的方法将System32目录下的EXE和DLL文件记录到另外exebackup1.txt和dllbackup1.txt中,然后运行 CMD—fc exebackup.txt exebackup1.txt>different.txt &fc dllbackup.txt dllbackup1.txt>different.txt(使用FC命令比较前后两次的DLL和EXE文件,并将结果输入到 different.txt中),这样我们就能发现一些多出来的DLL和EXE文件,然后通过查看创建时间、版本、是否经过压缩等就能够比较容易地判断出是不是已经被DLL木马光顾了。
没有是最好,如果有的话也不要直接删除掉,可以先把它移到回收站里,若系统没有异常反应再将之彻底删除,或者把DLL文件上报给反病毒研究中心检查。
最后,防治木马的危害,专家建议大家应采取以下措施:
第一,安装反病毒软件和个人防火墙,并及时升级。
第二,把个人防火墙设置好安全等级,防止未知程序向外传送数据。
第三,使用安全性比较好的浏览器和电子邮件客户端工具。
第四,操作系统的补丁要经常进行更新。
第五,不要随便打开陌生网友传送的文件和下载、使用破解软件。
相信大家只要做好安全防护工作,防治木马并不是那么可怕的。
木马程序向施种木马者提供打开被种者电脑的门户,使施种者可以任意毁坏、窃取被种者的文件和隐私,甚至远程操控被种者的电脑。木马的原理和计算机网络中常常要用到的远程控制软件相似,但由于远程控制软件是“善意”的控制,因此通常不具有隐蔽性;而木马程序则完全相反,木马要达到的是“偷窃”性的远程控制,如果没有很强的隐蔽性的话,那就是毫无价值的。
木马通常有两个可执行程序:一个是客户端,即控制端,另一个是服务端,即被控制端。木马的设计者为了防止木马被发现,而采用多种手段隐藏木马。木马的服务一旦运行,电脑就会有一个或几个端口被打开,黑客就可以利用控制端进入运行了服务端的电脑,甚至可以控制被种者的电脑,所以被种者的安全和个人隐私也就全无保障了!
随着微软的操作系统从Win9X过渡到WinNT系统(包括2000/xp/2003),微软的任务管理器也一下子“脱胎换骨”,变得“火眼金睛”起来 (在Win9X中,只需要将进程注册为系统服务就能够从进程查看器中隐形,可是这一切在WinNT中却完全不同,无论木马从端口、启动文件上如何巧妙地隐藏自己,始终都不能欺骗WinNT的任务管理器),这使得以前在win9X操作系统下靠将进程注册为系统服务就能够从任务管理器中隐形的木马面临前所未有的危机,所以木马的开发者及时调整了开发思路,转入了开发可以躲避WinNT的任务管理器的进程查询的动态嵌入式DLL木马。
要弄清楚什么是动态嵌入式DLL木马,我们必须要先了解Windows系统的另一种“可执行文件”——DLL,DLL是Dynamic Link Library(动态链接库)的缩写,DLL文件是Windows的基础,因为所有的API函数都是在DLL中实现的。DLL文件没有程序逻辑,是由多个功能函数构成,它并不能独立运行,DLL文件一般都是由进程加载并调用的。
因为DLL文件不能独立运行,所以在进程列表中并不会出现DLL.所以木马的开发者就通过编写动态嵌入式DLL木马,并且通过别的进程来运行它,那么无论是入侵检测软件还是进程列表中,都只会出现那个进程而并不会出现那个DLL木马。如果那个进程是可信进程(例如资源管理器Explorer.exe),那么就没人会怀疑DLL文件也是个木马了。从而木马就又实现了自己的隐蔽性的功能,所以,预防DLL木马也是相当重要的。
在WinNT系统,DLL木马一般都藏在System32目录下(因为System32是系统文件存放的目录,里面的文件很多,在里面隐藏当然很方便了),针对这一点我们可以在安装好系统和必要的应用程序后,对该目录下的EXE和DLL文件作一次记录:点击开始—运行—输入cmd回车—出现DOS命令行模式—输入cd\回车,再输入cd C:\Windows\System32回车,这就转换目录到了System32目录(要还是不知道怎么进入的,请参看DOS的cd命令的使用),输入命令:dir *.exe>exebackup.txt &dir *.dll>dllbackup.txt回车。
这样,我们就把System32目录下所有的exe文件和所有的dll文件都记录在exebackup.txt和dllbackup.txt里面了。日后如发现系统异常而用传统的方法又查不出问题时,则要考虑是不是系统中已经潜入了DLL木马。
这时我们用同样的方法将System32目录下的EXE和DLL文件记录到另外exebackup1.txt和dllbackup1.txt中,然后运行 CMD—fc exebackup.txt exebackup1.txt>different.txt &fc dllbackup.txt dllbackup1.txt>different.txt(使用FC命令比较前后两次的DLL和EXE文件,并将结果输入到 different.txt中),这样我们就能发现一些多出来的DLL和EXE文件,然后通过查看创建时间、版本、是否经过压缩等就能够比较容易地判断出是不是已经被DLL木马光顾了。
没有是最好,如果有的话也不要直接删除掉,可以先把它移到回收站里,若系统没有异常反应再将之彻底删除,或者把DLL文件上报给反病毒研究中心检查。
最后,防治木马的危害,专家建议大家应采取以下措施:
第一,安装反病毒软件和个人防火墙,并及时升级。
第二,把个人防火墙设置好安全等级,防止未知程序向外传送数据。
第三,使用安全性比较好的浏览器和电子邮件客户端工具。
第四,操作系统的补丁要经常进行更新。
第五,不要随便打开陌生网友传送的文件和下载、使用破解软件。
相信大家只要做好安全防护工作,防治木马并不是那么可怕的。
针对PHP木马攻击的防御之道
[ 2007-03-25 02:56:44 | 作者: sun ]
本文通过介绍一些技巧介绍了针对PHP木马攻击的防御之道,通过这些方面你可以更好的防范木马程序。 1、防止跳出web目录 首先修改httpd.conf,如果你只允许你的php脚本程序在web目录里操作,还可以修改httpd.conf文件限制php的操作路径。比如你的web目录是/usr/local/apache/htdocs,那么在httpd.conf里加上这么几行: php_admin_value open_basedir /usr/local/apache/htdocs 这样,如果脚本要读取/usr/local/apache/htdocs以外的文件将不会被允许,如果错误显示打开的话会提示这样的错误: Warning: open_basedir restriction in effect. File is in wrong directory in /usr/local/apache/htdocs/open.php on line 4 等等。
2、防止php木马执行webshell 打开safe_mode, 在,php.ini中设置 disable_functions= passthru,exec,shell_exec,system 二者选一即可,也可都选
2、防止php木马执行webshell 打开safe_mode, 在,php.ini中设置 disable_functions= passthru,exec,shell_exec,system 二者选一即可,也可都选