第26天:WEB攻防-通用漏洞_SQL注入_Sqlmap_Oracle_Mongodb_DB2等知识点1、数据库注入-Oracle&Mongodb
2、数据库注入-DB2&SQLite&Sybase
3、SQL 注入神器-SQLMAP 安装使用拓展
数据库注入Oracle 参考: https://www.cnblogs.com/peterpan0707007/p/8242119.html
猜回显位:用的是单引号,进行猜测,因为在数据库中加入单引号是一种字符类型的,通过SQL语句,判断之后的数据是否能正常的显示页面,从而进行判断注入点。
Dual:是一个虚表。只有一列,必须使用关键字语句才可以进行使用,通常是 查询时间等数据。
测回显:and 1=2 union select ‘1’,’2’ from dual
爆库:and 1=2 union select ‘1’,(select table_name from user_tables
where rownum=1) from dual
模糊爆库:and 1=2 ...
第25天:WEB攻防-通用漏洞_SQL读写注入_MYSQL_MSSQL_PostgreSQL知识点1、SQL注入-MYSQL数据库2、SQL注入-MSSQL数据库3、SQL注入-PostgreSQL数据库
详细点Access数据库无高权限注入点-只能猜解,还是暴力猜解MYSQL,PostgreSQL,MSSQL的高权限注入点—可升级读写执行等,还需要看具体有没有限制,能不能进行执行等等。
mysql自带的读写文件函数:
读取文件:select load_file(‘d:/w.txt’);
写入文件:select ‘xxx’ into outfile ‘d:/1.txt’; 或者select ‘xxx’ into dumpfile ‘d:/1.txt’;
MYSQL-root高权限利用漏洞读写注入读取文件:UNION SELECT 1,load_file(‘d:/w.txt’),3,4,5,6,7,8,9,10,11,12,13,14,15,16,17
写入文件:UNION SELECT 1,’yyy’,3,4,5,6,7,8,9,10,11,12 ...
第24天:WEB攻防-通用漏洞_SQL注入_MYSQL跨库_ACCESS偏移SQL注入之前看过橙子科技的(但没看完),也是搭建了sql-labs靶场自己练习了,看橙子科技的时候也做了一点笔记但不多,之后还是根据橙子科技的视频和sql-labs靶场再仔细学
知识点1、脚本代码与数据库前置知识2、Access数据库注入-简易&偏移3、MYSQL数据库注入-简易&权限跨库
前置知识-SQL注入漏洞产生原理分析-SQL注入漏洞危害利用分析-脚本代码与数据库操作流程-数据库名,表名,列名,数据-数据库类型,数据库用户,用户权限
脚本代码在实现代码与数据库进行数据通讯时(从数据库取出相关数据进行页面显示),将定义的SQL语句进行执行查询数据时。其中的SQL语句能通过参数传递自定义值来实现控制SQL语句,从而执行恶意的SQL语句,可以实现查询其他数据(数据库中的敏感数据,如管理员帐号密码)。这一个过程就可以叫做SQL注入漏洞。
SQL注入攻击流程:
\1. 猜测数据库类型\2. 根据类型选择思路
ACCESS 数据库结构:独立存在 数据库名 表名 列名(字段) 数据
测试目的:从数据 ...
第23天:WEB攻防-Python考点_CTF与CMS-SSTI模版注入_PYC反编译PYC文件 python文件编译后生成的字节码文件(byte code),pyc文件经过python解释器最终会生成机器码运行。因此pyc文件是可以跨平台部署的,类似java的.class文件,一般python文件改变后,都会重新生成pyc文件。
pyc文件反编译平台:
https://tool.lu/pyc
SSTIssti存在于多种计算机语言中
SSTI(模板注入)漏洞:https://www.cnblogs.com/bmjoker/p/13508538.html
模板引擎:模板引擎(这里特指用于Web开发的模板引擎)是为了使用户界面与业务数据(内容)分离而产生的,它可以生成特定格式的文档,利用模板引擎来生成前端的html代码,模板引擎会提供一套生成html代码的程序,然后只需要获取用户的数据,然后放到渲染函数里,然后生成模板+用户数据的前端html页面,然后反馈给浏览器,呈现在用户面前。
SSTI:服务端接收了用户的恶意输入以后,未经任何处理就将其作为 Web 应用模板内容的一部分,模 ...
第22天:WEB攻防-JS项目_Node.JS框架安全_识别审计_验证绕过知识点:1、原生JS&开发框架-安全条件
2、常见安全问题-前端验证&未授权
详细点:什么是JS渗透测试?
在Javascript中也存在变量和函数,当存在可控变量及函数调用即可参数漏洞
JS开发的WEB应用和PHP,JAVA,NET等区别在于即没有源代码,也可以通过浏览器的查看源代码获取真实的点。所以相当于JS开发的WEB应用属于白盒测试(默认有源码参考)
wappalyzer这是一个可以分析出网站所使用的技术的插件
源代码简短
引入多个 js 文件
一般有/static/js/app.js 等顺序的 js 文件
案例真实应用-APP 应用直接重置密码
看源码发现只需要状态码改成200就能绕过验证
直接bp 抓包,修改状态码为200就能进入重置密码页面
然后又因为查看源码得知这个重置密码的页面并没有做验证,所以我们可以直接访问,跳过验证过程——非授权访问
真实应用-违法彩彩文件上传安全
JS是本地上传,也就是图片通过本地的限制文件之后再发送出去,我们这 ...
第21天:WEB攻防-JavaWeb项目&JWT身份攻击&组件安全&访问控制知识点:1.JavaWeb常见安全及代码逻辑通过URL信息来对应源码文件。没有代码的情况下很难渗透。2.目录遍历&身份验证&逻辑&JWT3.访问控制&安全组件&越权&三方组件
JavaWeb-WebGoat8靶场搭建使用• 下载地址:https://github.com/WebGoat/WebGoat/releases,下载webgoat-server-8.2.2.jar
• 压缩到jar包里面。 • 如何启动:安装jdk,运行 java -jar webgoat-server-8.1.0.jar –server.port=8091 • 访问127.0.0.1:9091/WebGoat/login,注册账号登录就可以了。
安全问题-目录遍历第二关
关键代码:
123publicAttackResultuploadFileHandler(@RequestParam("uploadedFile" ...
第20天:WEB攻防-PHP特性_缺陷对比函数_CTF考点_CMS审计实例知识点:1、过滤函数缺陷绕过
2、CTF考点与代码审计
详细点:最常见函数使用==与===
md5
intval
strpos
in_array
preg_match
str_replace
缺陷绕过123456789<?phpheader("Content-Type:text/html;charset=utf-8");$flag='xiaodi ai chi xigua!';//1、== ===缺陷绕过 == 弱类型对比 ===还会比较类型$a=1;if($a==$_GET['x']){ echo $flag;}
MD5123456789101112if($_GET['name'] != $_GET['password']){ if(MD5($_GET['name']) == MD5($ ...
第19天:WEB攻防-.NET项目_DLL反编译_未授权访问_配置调试报错.NET项目——DLL文件反编译指向—代码特性bin目录下的文件代表是可执行文件,.net项目中dll文件类似java的jar包,代码被封装到dll文件中,核心代码是一个实例化的过程()。
web.config为网站配置文件。
dll反编译工具:ILSpy用法:直接将dll文件拖到工具里就可以了
aspx的核心代码被分装到dll文件中,具体哪个dll文件呢,看inherits参数。
.NET项目——Web.config错误调试—信息泄露web.config中有一项customErrors参数,该参数有三种状态:
“Off”,关闭就会爆默认错误,默认错误就会包含一些网站的中间件类型、文件路径等,造成一定的信息泄露
.NET项目——身份验证未授权访问—安全漏洞 后台明明需要登录才能访问,未登录就看到后台的一些内容,这算未授权访问;普通用户能访问管理员页面,普通用户能访问会员页面等都算未授权访问。
由于后台本身有多个功能文件页面,后端如何判断用户的身份:
在每个文件中添加判断代码;
创建一个文件专门用来 ...
第18天:WEB攻防-ASP安全_MDB下载植入_IIS短文件名_写权限_解析知识点:1、ASP 环境搭建组合
2、ASP-数据库下载&植入
3、IIS-短文件&解析&写权限
ASP:老的基础应用
常见搭建组合:windows iis asp access(SQL\SQLserver)
现在很少见了
asp环境搭建教程:
https://blog.csdn.net/XiBuQiuChong/article/details/135755733
MDB默认下载access数据库特性:access数据库的后缀名一般为asp、asa、mdb(居多)。其中,asp、asa会被执行解析;mdb文件可以下载,mdb文件在网站目录下(也就是说可能会被访问)。
如果知道数据库的地址,可以尝试下载,获取管理员的账号密码,登录后台
ASP后门植入连接 如果数据库文件是asp后缀,直接访问将是乱码。既然能访问且被asp解析,可以尝试写入一句话木马(尽量编码)到数据库文件中,然后用webshell工具去连接一句话木马。
IIS短文件名探针——安全漏洞 IIS短文件名漏洞可以探查I ...
第17天:PHP开发-个人博客项目_TP框架_路由访问_安全写法_历史漏洞知识点:1、基于TP框架入门安装搭建使用
2、基于TP框架内置安全写法评估
3、基于TP框架实例源码安全性评估
路由访问:访问http://127.0.0.1:8084/index.php/index/index/index对应的文件是:
如果需要访问Xiaodi.php的内容,那么就构造URL:http://127.0.0.1:8084/index.php/index/xiaodi/
参数传递:
安全-SQL注入-不安全写法对比官方写法
基础写法会造成sql 问题 and 1 = 2 就会被执行
按照官方的写法就不会有这个问题
参数过滤:
$id=$_GET[‘x’] id值可以变动
$id=input(‘x’) id值可以变动
$id=input(‘?get.x’) id值被过滤了
内置过滤:
Db::table(‘think_user’)->where(‘status’,1)->select();
相当于select ...