目录
7.mysql注入点,用工具对目标站直接写入一句话,需要哪些条件?
8.如何手工快速判断目标站是windows还是linux服务器?
13.拿到一个webshell发现网站根目录下有.htaccess文件,我们能做什么?
16.access 扫出后缀为asp的数据库文件,访问乱码,如何实现到本地利用?
18.某服务器有站点A,B 为何在A的后台添加test用户,访问B的后台。发现也添加上了test用户?
19.uid=1已结确认是注入点,注入时可以不使用and 或or 或xor,直接order by 开始注入吗?
21.目标站禁止注册用户,找回密码处随便输入用户名提示:“此用户不存在”,你觉得这里怎样利用?
22.目标站发现某txt的下载地址为http://www.test.com/down/down.php?file=/upwdown/1.txt,你有什么思路?
23.以下链接存在 sql 注入漏洞,对于这个变形注入,你有什么思路?
24.发现 demo.jsp?uid=110 注入点,你有哪几种思路获取 webshell,哪种是优选?
25.CSRF 和 XSS 和 XXE 有什么区别,以及修复方式?
44.mysql的网站注入,5.0以上和5.0以下有什么区别?
1.3389无法连接的几种情况
端口没有开放 端口被修改了 被拦截了 没出网(处于内网(需要进行端口转发))
2.二次注入
恶意数据经过一些转义函数(get_magic_quotes_gpc)的处理之后不会触发sql注入,然后插入到数据库中,再次调用的时候因为默认数据库里面的数据都是安全的,所以不会再进行检测,直接进行使用,导致二次注入
3.报错注入的函数
基于格式错误的报错(xpath语法错误)
函数:extractvalue(): 函数使用格式:extractvalue(xml_documentXpath_string) id='and(select extractvalue("anything",concat('~',(select语句)))) 原理: 因为~符号不符合xpath的语法规则所以导致报错返回select语句执行结果 paylaod: 查数据库名:id='and(select extractvalue(1,concat(0x7e,(select database())))) 爆表名:id='and(select extractvalue(1,concat(0x7e,(select group_concat(table_name) from information_schema.tables where table_schema=database())))) 函数:updatexml(): 函数使用格式:updatexml(xml_document,xpath_string,new_value) id='and(select updatexml("anything",concat('~',(select语句())),"anything")) 原理: 因为~符号不符合xpath的语法规则所以导致报错返回select语句执行结果 payload: 爆数据库名:'and(select updatexml(1,concat(0x7e,(select database())),0x7e)) 爆表名:'and(select updatexml(1,concat(0x7e,(select group_concat(table_name)from information_schema.tables where table_schema=database())),0x7e)) 注: 0x7e = ~ ~也可以换为#,$等只要不符合xpath的语法规范即可 两个函数只能查询32位如果过多就需要使用limit或substring
基于主键重复错误
函数:rand,floor,group by floor() 来返回小于等于该值的最大整数,因为rand是返回的0到1之间的1数,那通过floor(rand()*2)就可以实现只生成0和1.然后前面说到因为rand的种子定了的话他是伪随机数,所以导致0,1的顺序也是可控的。
4.堆叠注入
原理: 在SQL语句中,语句的结束都是以`;`结尾,但是如果我们在`;`后面再加上一条SQL语句,两条语句会一起执行吗?这也就是造成堆叠注入的原因了 payload: `select * from users;DELETE FROM test` 先查询user表,然后再从test数据库里删除user表。 `?id=-1'; insert into users(id,username,password) values(88,'aaa','bbb')%23`
5.判断出网站的CMS对渗透的意义
可以查找该CMS在网上曝出的漏洞进行利用 如果开源,还可以进行代码审计
6.一个成熟并且相对安全的CMS,渗透时扫目录的意义?
敏感文件、二级目录扫描 站长的误操作比如:网站备份的压缩文件、说明.txt、二级目录可能存放着其他站点
7.mysql注入点,用工具对目标站直接写入一句话,需要哪些条件?
root权限以及网站的绝对路径。
8.如何手工快速判断目标站是windows还是linux服务器?
linux大小写敏感,windows大小写不敏感。
9.为何一个mysql数据库的站,只有一个80端口开放?
- 站库分离
- 更改了端口,没有扫出来
- 3306端口不对外开放
10.如何突破注入时字符被转义?
- 宽字节注入
- hex编码绕过
11.宽字节注入
数据库编码为非英文编码时,就可能会产生宽字节注入,宽字节注入需要为GBK编码
原因:
宽字节SQL注入就是PHP发送请求到MySql时使用了语句SET NAMES 'gbk' 或是SET character_set_client =gbk 进行了一次编码,但是又由于一些不经意的字符集转换导致了宽字节注入。
因为magic_quotes_gpc(魔术引号开关)导致了当PHP的传参中有特殊字符就会再前面加转义字符'\',来做一定的过滤,或者addslashes() 函数返回在预定义字符之前添加反斜杠的字符串。所以这个时候就可以使用宽字节注入
我们发现\的编码是%5c,然后我们会想到传参一个字符想办法凑成一个gbk字符,例如:‘運’字是%df%5c
SELECT * FROM users WHERE id='1\'' LIMIT 0,1
这条语句因为\使我们无法去注入,那么我们是不是可以用%df吃到%5c,因为如果用GBK编码的话这个就是運,然后成功的让!
SELECT * FROM users WHERE id='1�\'#' LIMIT 0,1
�\ 实际上就是那个運字
12.在某后台新闻编辑界面看到编辑器,应该先做什么?
查看编辑器的名称版本,然后搜索公开的漏洞。
13.拿到一个webshell发现网站根目录下有.htaccess文件,我们能做什么?
能做的事情很多,用隐藏网马来举例子: 插入 <FilesMatch “xxx.jpg”> SetHandler application/x-httpd-php .jpg文件会被解析成.php文件。
14.注入漏洞只能查账号密码?
只要权限足够,啥都能干!!
16.access 扫出后缀为asp的数据库文件,访问乱码,如何实现到本地利用?
迅雷下载,直接改后缀为
.mdb
。
18.某服务器有站点A,B 为何在A的后台添加test用户,访问B的后台。发现也添加上了test用户?
使用的是一个数据库。
19.uid=1已结确认是注入点,注入时可以不使用and 或or 或xor,直接order by 开始注入吗?
and/or/xor,前面的1=1、1=2步骤只是为了判断是否为注入点,如果已经确定是注入点那就可以省那步骤去。
20.某个防注入系统,在注入时会提示:
系统检测到你有非法注入的行为。已记录您的ip xx.xx.xx.xx 时间:2016:01-23 提交页面:test.asp?id=15 提交内容:and 1=2,该如何利用这个防注入系统拿shell?
在URL里面直接提交一句话,这样网站就把你的一句话也记录进数据库文件了 这个时候可以尝试寻找网站的配置文件 直接上菜刀链接。