LINUXQQ

十一月 22, 2011

sql攻击 WINDOWS下常用工具

Filed under: 乱7八糟 — admin @ 11:40 上午

2008年6月,微软和惠普的安全部门合作发布了三个工具,分别是:

微软SQL注入攻击源码扫描器:Microsoft Source Code Analyzer for SQL Injection (MSCASI)。
这个工具给网站开发人员使用。是一个静态扫描ASP代码的工具,可以查找发现第一类和第二类的SQL注入攻击漏洞。 工具官方下载地址:http://support.microsoft.com/kb/954476
本地下载地址:

http://cert.sjtu.edu.cn/download/sjtu/sql/msscasi_asp_pkg.exe

惠普的 Scrawlr工具。这个工具可以被网站的维护人员使用,是一个黑箱扫描工具,不需要源代码。指定起始URL开始扫描。确定是不能准确定位代码的漏洞(因为是黑箱测试)。
官方工具下载地址:http://www.communities.hp.com/securitysoftware/blogs/spilabs/archive/2008/06/23/finding-sql-injection-with-scrawlr.aspx
本地下载地址:

http://cert.sjtu.edu.cn/download/sjtu/sql/Scrawlr.msi

微软的URLScan 3.0 Beta。这个工具可以被网站的维护人员使用。它是一个输入过滤工具。如果你发现网站被SQL注入工具,你可以在一边修补代码漏洞的同时,使用这个攻击在过滤掉恶意的输入。当然,修补代码中的漏洞是完全避免SQL注入攻击的真正解决方案。
官方工具下载地址:http://blogs.iis.net/wadeh/archive/2008/06/05/urlscan-v3-0-beta-release.aspx
本地下载地址:

http://cert.sjtu.edu.cn/download/sjtu/sql/urlscan_v3_beta_x86.msi

SWI的博客上有更进一步的描述。http://blogs.technet.com/swi/archive/2008/06/24/new-tools-to-block-and-eradicate-sql-injection.aspx

那么,这三个工具是如何配合使用的?下面给出一个例子。

步骤一:网站的维护人员使用Scrawlr扫描网站,检查是否存在SQL注入漏洞

步骤二:发现存在漏洞后,通知开发人员。开发人员使用MSCASI对ASP源码静态扫描来确定代码中什么地方导致的SQL注入攻击漏洞。

步骤三:在开发人员修补漏洞的同时,维护人员可以使用URLScan来过滤可能的恶意输入,以确保网站的安全。

这三个工具的配合使用可以很大程度上减少网站被挂马的可能。说实话,现在被挂马的网站实在是太多了!

from:褚诚云blog

今天,我也试了一下urlscan.ini文件, 加强了一下web,感觉这个东西还不错。遇到的问题是:

1. 发现某些中文的文件名图片不能够显示, 解决方法是把urlscan.ini文件中的 [Options] 节的AllowHighBitCharacters项,将值由0改为1,这样就可以显示中文的文件名称了!

另外参考

urlscan配置文件必须遵从以下规则:
(1)此文件名必须为urlscan.ini;
(2)配置文件必须和urlscan.dll在同一目录;
(3)配置文件必须是标准ini文件结构,也就是由节,串和值组成;
(4)配置文件修改以后,必须重新启动IIS,使配置生效;
(5)配置文件由以下各节组成:
[Option]节,主要设置节;
[AllowVerbs]节,配置认定为合法URL规则设定,此设定与Option节有关;
[DenyVerbs] 节,配置认定为非法URL规则设定,此设定与Option节有关;
[DenyHeaders]节,配置认定为非法的header在设立设置;
[AllowExtensions]节,配置认定为合法的文件扩展名在这里设置,此设定与Option节有关;
[DenyExtensions]节,配置认定为非法的文件扩展名在这里设置,此设定与Option节有关;
2)具体配置
(1)我们首先来看Option节的配置,因为Option节的设置直接影响到以后的配置,因此,这一节的设置特别重要。此节主要进行以下属性的设置:
UseAllowVerbs:使用允许模式检查URL请求,如果设置为1,所有没有在[AllowVerbs]节设置的请求都被拒绝;如果设置为0,所有没有在[DenyVerbs]设置的URL请求都认为合法;默认为1;
UseAllowExtensions:使用允许模式检测文件扩展名;如果设置为 1,所有没在[AllowExtensions]节设置的文件扩展名均认为是非法请求;如果设置为0,所有没在[DenyExtensions]节设置的扩展名均被认为是合法请求;默认为0;
EnableLogging:是否允许使用Log文件,如果为1,将在urlscan.dll的相同目录设置名为urlscan.log的文件记录所有过滤;
AllowLateScanning:允许其他URL过滤在URLScan过滤之前进行,系统默认为不允许0;
AlternateServerName:使用服务名代替;如果此节存在而且[RemoveServerHeader]节设置为0,IIS将在这里设置的服务器名代替默认的“Server”;
NormalizeUrlBeforeScan:在检测URL之前规格化URL;如果为1,URLScan将在IIS编码URL之前URL进行检测;需要提醒的是,只有管理员对URL解析非常熟悉的情况下才可以将其设置为0;默认为1;
VerifyNormalization:如果设置为1,UrlScan将校验URL规则,默认为1;此节设定与NormalizeUrlBeforeScan有关;
AllowHighBitCharacters:如果设置为1,将允许URL中存在所有字节,如果为0,含有非ASCII字符的URL将拒绝;默认为1;
AllowDotInPath:如果设置为1,将拒绝所有含有多个“.”的URL请求,由于URL检测在IIS解析URL之前,所以,对这一检测的准确性不能保证,默认为0;
RemoveServerHeader:如果设置为1,将把所有应答的服务头清除,默认为0;
(2)[AllowVerbs]节配置
如果UseAllowVerbs设置为1,此节设置的所有请求将被允许,一般设置以下请求:
GET、HEAD、POST
(3)[DenyVerbs]节配置
如果UseAllowVerbs设置为0,此节设置的所有请求将拒绝,一般设置以下请求:
PROPFIND、PROPPATCH、MKCOL、Delete、PUT、COPY、MOVE、LOCK、UNLOCK
(4)[AllowExtensions]节设置
在这一节设置的所有扩展名文件将被允许请求,一般设置以下请求:
.asp、.htm、.html、.txt、.jpg、.jpeg、.gif,如果需要提供文件下载服务,需要增加.rar、.zip,
(5)[DenyExtensions]节设置
在这一节设置的所有扩展名文件请求将被拒绝,根据已经发现的漏洞,我们可以在这一节增加内容,一般为以下设置:
.asa、可执行文件、批处理文件、日志文件、罕见扩展如:shtml、.printer等。

十一月 11, 2011

cisco 3750配置

Filed under: 乱7八糟 — admin @ 12:20 下午

控制台密码: (config)#line console 0

  (config-line)#password 123

  (config-line)#login

  VYT密码: (config)#line vty 0 15

  (config)#password 123

  (config)#login

  特权密码: (config)#enable password /secret 123

  3、在配置文件中密码部分加密显示

  (config)#service password-encrytion

配置VLAN

configure terminal

vlan 10

name 122.200.77.0

end

将端口加入vlan

configure terminal

interface gigabitEthernet 1/0/1 进入要分配的端口

switchport mod access 定义二层口

switchport access vlan 10 把端口分配给某一VLAN

end 退出

配置VLAN IP地址

conf t

int vlan 10

ip add 192.168.3.1 255.255.255.0

no sh

配置对联地址

conf t

int gig 1/0/9

ip add 192.168.1.122 255.255.255.0

exit

ip routing

ip route 0.0.0.0 0.0.0.0 192.168.1.1

配置桥组
conf t

bridge irb

bridge 2 protocol vlan-bridge

end

int gigb 1/0/1

bri 2

封IP地址
access-list 1 deny 122.200.10.1
access-list 1 permit any

int vlan 10
ip access-group 1 in
ip access-group 1 out

arp攻击保护网关

arp access-list static-arp

permit ip host 122.101.1.1 mac host 0000.0000.0000.0000

ip arp inspection filter static-arp vlan 20

122.101.10.1 是网关地址 也就是vlan 20的MAC地址和IP地址

端口限速:

  config t

  mls qos

  access-list 2 permit any

  class-map match-all 2M-rate

  match access-group 2 //绑定访问列表2,将符合列表2的流归为2M-rate这个类里

  !

  policy-map 2M-rate

  class 2M-rate

  police 2000000 200000 exceed-action drop //限速2M

  interface GigabitEthernet1/0/9

  description “2M-201100104″

  service-policy input 2M-rate

转载注明(LINUXQQ)

十一月 9, 2011

couldn’t find pcap build or installation directory

Filed under: python — admin @ 2:14 下午

[root@localhost pypcap-1.1]# python setup.py config
running config
Traceback (most recent call last):
File “setup.py”, line 101, in ?
ext_modules = [ pcap ])
File “/usr/lib/python2.4/distutils/core.py”, line 149, in setup
dist.run_commands()
File “/usr/lib/python2.4/distutils/dist.py”, line 946, in run_commands
self.run_command(cmd)
File “/usr/lib/python2.4/distutils/dist.py”, line 966, in run_command
cmd_obj.run()
File “setup.py”, line 67, in run
cPickle.dump(self._pcap_config([ self.with_pcap ]),
File “setup.py”, line 63, in _pcap_config
raise “couldn’t find pcap build or installation directory”
couldn’t find pcap build or installation directory

解决办法:yum install libpcap-devel

转载注明(LINUXQQ)

十一月 6, 2011

子网掩码换算方法

Filed under: 乱7八糟 — admin @ 5:01 下午

哎 看过了就忘 这次死死的记住 有点可恨

11111111.1111111.11111111.00000000 1是网络ID 0为主机位

2的8次方 就是代表可用多少主机

反过来算一下

假如我有64个电脑 需要算下这个的掩码 怎么算呢

2*2*2*2*2*2 就是11111111.11111111.11111111.11000000
110000000换算过来就是192

第一行左起第一个二进制1对应十进制的128
第一行左起第二个1对应十进制的64
第一行左起第三个1对应十进制的32
第一行左起第四个1对应十进制的16
第一行左起第五个1对应十进制的8
第一行左起第六个1对应十进制的4
第一行左起第七个1对应十进制的2
第一行左起第八个1对应十进制的1
上面这些关系要牢记,这是进制转换的基础!

比方说将十进制的133转为二进制,可以这样想:因为133和128比较近,又由于公式表中左起第一个二进制1表示128,所以可以马上将待转换成

8位二进制的最左边的一位确定下来,定为1。再接下来,看到133和128只相差5,而5是4与1的和,而4与1分别对应公式表中的左起第6和第8位

,所以十进制的133转换为8位二进制表示就是10000101,对应如下:
1 0 0 0 0 1 0 1 (二进制表示的133)
128 0 0 0 0 4 0 1 (十进制表示的133

在算一个 例如75
75与64离的近
确定第1个为1了
75-64=11
所以1+2+4=10001011
等于1 1 1 1 1 1 1 1
128 64 32 16 8 4 2 1

网络地址是IP地址与掩码的补码

主机号的算法是 将IP地址的二进制与 掩码地址的二进制反码 进行补码运算

广播地址算法是:例如网络地址是172.31.128.0 转换为二进制是10101100.00011111.1000000.00000000
然后将右边的14个0 全部替换成1 即:10101100.0001111.10111111.11111111 转换成10进制则是172.31.191.255

下面一种简单的计算网络号 广播地址的办法

192.168.16.87/27 有效IP地址
子网掩码是 255.255.255.224
用256减去224=32
32是魔术数
用32去乘一个数 结果不可以大于87、 所以是32*2=64、所以网络号就是192.168.16.64
这个是64就是最贴近数

确定一个有效的IP地址 最贴近的数+1=65 所以结果是65

确定广播地址是最贴近数+魔术数-1=广播地址 所以广播地址是192.168.1.95

确定最后一个可用的IP地址 就是 广播地址-1=最后一个有效的IP地址

转载注明(LINUXQQ

十一月 3, 2011

wireshark LINUX抓包

Filed under: 乱7八糟 — admin @ 12:23 下午

centos下安装wireshark相当简单.两条命令就够了.这里.主要是记录写使用方面的东西

安装:
1、yum install wireshark。注意这样并无法使用wireshark命令和图形界面。但提供了抓包基本功能。
2、yum install wireshark-gnome。这样就可以方便的使用了。

如果能登录图形界面终端.那使用和windows下的无区别.但我们的服务器都在国外.要管理的话都是SSH登录只能用命令行了。使用wireshark的命令行工具tshark,在安装的时候会默认给安装上的,使用方法很简单,要捕捉包: tshark -wpacket.txt -i etho -q 这样就会把捕捉到的网络包存放在packet.txt文件里面,要查看详情的话: tshark -rpacket.txt -x -V|more即可.

下面理一下所有参数的作用:

-a
设置一个标准用来指定Wireshark什么时候停止捕捉文件。标准的格式为 test:value,test值为下面中的一个。

duration:value
当捕捉持续描述超过Value值,停止写入捕捉文件。

filesize:value
当捕捉文件大小达到Value值kilobytes(kilobytes表示1000bytes,而不是1024 bytes),停止写入捕捉文件。如果该选项和-b选项同时使用,Wireshark在达到指定文件大小时会停止写入当前捕捉文件,并切换到下一个文件。

files:value
当文件数达到Value值时停止写入捕捉文件

-b
如果指定捕捉文件最大尺寸,因为Wireshark运行在”ring buffer”模式,被指定了文件数。在”ring buffer”模式下,Wireshark 会写到多个捕捉文件。它们的名字由文件数和创建日期,时间决定。

当第一个捕捉文件被写满,Wireshark会跳转到下一个文件写入,直到写满最后一个文件,此时Wireshark会丢弃第一个文件的数据(除非将files设置为0,如果设置为0,将没有文件数限制),将数据写入该文件。

如果duration选项被指定,当捕捉持续时间达到指定值的秒数,Wireshark同样会切换到下个文件,即使文件未被写满。

duration:value
当捕捉持续描述超过Value值,即使文件未被写满,也会切换到下个文件继续写入。

filesize:value
当文件大小达到value值kilobytes时(kelobyte表示1000bytes,而不是1024bytes),切换到下一个文件。

files:value
当文件数达到value值时,从第一个文件重新开始写入。

-B
仅适合Win32:设置文件缓冲大小(单位是MB,默认是1MB).被捕捉驱动用来缓冲包数据,直到达到缓冲大小才写入磁盘。如果捕捉时碰到丢包现象,可以尝试增大它的大小。

-c
实时捕捉中指定捕捉包的最大数目,它通常在连接词-k选项中使用。

-D
打印可以被Wireshark用于捕捉的接口列表。每个接口都有一个编号和名称(可能紧跟在接口描述之后?)会被打印,接口名或接口编号可以提供给-i参数来指定进行捕捉的接口(这里打印应该是说在屏幕上打印)。

在那些没有命令可以显示列表的平台(例如Windows,或者缺少ifconfig -a命令的UNIX平台)这个命令很有用;接口编号在Windows 2000及后续平台的接口名称通常是一些复杂字符串,这时使用接口编号会更方便点。

注意,”可以被Wireshark用于捕捉”意思是说:Wireshark可以打开那个设备进行实时捕捉;如果在你的平台进行网络捕捉需要使用有特殊权限的帐号(例如root,Windows下的Administrators组),在没有这些权限的账户下添加-D不会显示任何接口。参数

-f
设置捕捉时的内置过滤表达式

-g 在使用-r参数读取捕捉文件以后,使用该参数跳转到指定编号的包。

-h
-h选项请求Wireshark打印该版本的命令使用方法(前面显示的),然后退出。

-i
设置用于进行捕捉的接口或管道。

网络接口名称必须匹配Wireshark -D中的一个;也可以使用Wireshark -D显示的编号,如果你使用UNIX,netstat -i或者ifconfig -a获得的接口名也可以被使用。但不是所有的UNIX平台都支持-a,ifconfig参数。

如果未指定参数,Wireshark会搜索接口列表,选择第一个非环回接口进行捕捉,如果没有非环回接口,会选择第一个环回接口。如果没有接口,wireshark会报告错误,不执行捕捉操作。

管道名即可以是FIFO(已命名管道),也可以使用”-”读取标准输入。从管道读取的数据必须是标准的libpcap格式。

-k
-k选项指定Wireshark立即开始捕捉。这个选项需要和-i参数配合使用来指定捕捉产生在哪个接口的包。

-l
打开自动滚屏选项,在捕捉时有新数据进入,会自动翻动”Packet list”面板(同-S参数一样)。

-m
设置显示时的字体(编者认为应该添加字体范例)

-n
显示网络对象名字解析(例如TCP,UDP端口名,主机名)。

-N
对特定类型的地址和端口号打开名字解析功能;该参数是一个字符串,使用m可以开启MAC地址解析,n开启网络地址解析,t开启传输层端口号解析。这些字符串在-n和-N参数同时存在时优先级高于-n,字母C开启同时(异步)DNS查询。

-o 设置首选项或当前值,覆盖默认值或其他从Preference/recent file读取的参数、文件。该参数的值是一个字符串,形式为 prefname:value,prefnmae是首选项的选项名称(出现在preference/recent file上的名称)。value是首选项参数对应的值。多个-o 可以使用在单独命中中。

设置单独首选项的例子:

wireshark -o mgcp.display_dissect_tree:TRUE

设置多个首选项参数的例子:

wireshark -o mgcp.display_dissect_tree:TRUE -o mgcp.udp.callagent_port:2627-p
不将接口设置为杂收模式。注意可能因为某些原因依然出于杂收模式;这样,-p不能确定接口是否仅捕捉自己发送或接受的包以及到该地址的广播包,多播包

-Q
禁止Wireshark在捕捉完成时退出。它可以和-c选项一起使用。他们必须在出现在-i -w连接词中。

-r
指定要读取显示的文件名。捕捉文件必须是Wireshark支持的格式。

-R
指定在文件读取后应用的过滤。过滤语法使用的是显示过滤的语法,,不匹配的包不会被显示。

-s
设置捕捉包时的快照长度。Wireshark届时仅捕捉每个包字节的数据。

-S
Wireshark在捕捉数据后立即显示它们,通过在一个进程捕捉数据,另一个进程显示数据。这和捕捉选项对话框中的”Update list of packets in real time/实时显示数据”功能相同。

-t

r 相对的,设置所有包时间戳显示为相对于第一个包的时间。

a absolute,设置所有包显示为绝对时间。

ad 绝对日期,设置所有包显示为绝对日期时间。

d delta 设置时间戳显示为相对于前一个包的时间

e epoch 设置时间戳显示为从epoch起的妙数(1970年1月1日 00:00:00起)

-v
请求Wireshark打印出版本信息,然后退出

-w
在保存文件时以savefile所填的字符为文件名。

-y
如果捕捉时带有-k参数,-y将指定捕捉包中数据链接类型。The values reported by -L are the values that can be used.

-X
设置一个选项传送给TShark 模块。eXtension 选项使用extension_key:值形式,extension_key:可以是:

lua_script:lua_script_filename,它告诉Wireshark载入指定的脚本。默认脚本是Lua scripts.

-z
得到Wireshark的多种类型的统计信息,显示结果在实时更新的窗口。

用LogParser分析WireShark的包

转载注明(LINUXQQ)

Powered by LINUXQQ   ICP 10203065