SQL-Bypass
SQL-Bypass前言在一次渗透测试中本人很幸运的发现了SQL注入,但因为云锁、安全🐕的阻挡,一天都在绕Waf中,为了增加自己的经验,尝试了最新版本的云锁绕过
云锁Waf(增强型防护)
Get型字符型注入注入的SQL语句
$SQL = select * from `rapidcmspage` WHERE categoryid="$_GET['ID']" ORDER BY time DESC
拦截union字符串
使用-.1尝试绕过
但union需要与select结合使用,添加select后发包被Waf拦截
拦截 union.*?select,.*?代表可以匹配的任意字符
注释绕过,waf将/**/中间的数据当作注释内容,所以没有拦截,因此绕过了union关键字
order by获取列数为5
id=/*"+union+select+1,2,3,4,5--+*/
使用user()与database()函数
获取表名
id=/*"+union+select+1,2,3,(SELECT%20tabl ...
java内存马
Java内存马Tomcat在描述Tomcat内存马前,先谈谈Java、Servlet、Tomcat这三者的关系
在 Java Web 开发中,Servlet 类是处理 HTTP 请求的核心组件,它提供了许多公开的函数,常用的有 doGet 和 doPost 方法,这些方法用于处理 HTTP 请求的不同类型(Get、Post)。
通过Servlet-Api编写的java程序需要在Servlet容器中运行,而Tomcat实现了Servlet规范,能够加载和运行 Servlet,开启web服务。
Listener型内存马在Servlet的官方文档中存在很多listener监听器
其中有一些监听器都是针对于用户的某个操作类型,比如针对于用户读取文件时,监听器ReadListener发挥作用,当用户写文件时,监听器WriteListener发挥作用,这些只是片面的,如果将ReadListener制作成内存马,只能在读文件时才能执行木马功能,很局限
ReadListener定义了3种方法,当读取的文件判断可读时调用onDataAvailable方法,当读取全部文件后调用onAllDataRead ...
一次.NET代码审计
文章首发于先知社区一次.Net代码审计
0x01目录架构Global.asax用于处理应用程序级别的事件,例如应用程序启动(Application_Start)、会话启动(Session_Start)、应用程序错误(Application_Error)等。
Web.config这是 ASP.NET 应用程序的主要配置文件,用于定义应用程序的配置设置,例如数据库连接字符串、身份验证方式、自定义错误页面等。
bin文件夹放置了编译好的Dll文件,是后端服务接口代码的存放位置
0x02审计SQL盲注——GetByName方法Login.aspx是管理后台进行登陆的代码文件,对应GBLab.Web.dll的Login方法
将该GBLab.Web.dll文件放入ILSpy中反编译
在登陆时候传入的username参数以及password参数分别是txtUserName与txtPassword
通读一下方法代码,GetByName的作用大概是进行数据库查询判断有没有这个username,看看有没有过滤'"这些符号吧
Trim函数代码
public string Trim ...
从0到1编写shellcode
文章首发于先知社区从0到1编写shellcode
摘要在c语言中我们使用的MessageBoxA函数,其实存放在User32.dll动态链接库中,它是一个windows API函数
当c语言在链接时,它会将源文件中的代码、库函数等链接在一起,生成最终的可执行代码,形成可执行程序
当程序运行时,操作系统会加载程序所需的动态链接库到内存中,而User32.dll中的MessageBoxA函数也被放在了内存中的一个位置,供给程序使用
硬编码shellcode硬编码shellcode是直接通过地址调用相应API函数的一段16进制机器代码
例如:User32.dll中的MessageBoxA函数的内存地址我们知道,直接使用,这就是硬编码
先使用C语言编写一段弹窗程序,并修改visual stdio配置,能够让程序可以在xp的电脑上运行
c语言弹窗#include <Windows.h>int main() { MessageBoxA(NULL, "ming", "test", MB_OK | MB_ICONINFORMATION); ...
php代码审计
文章首发于先知社区php代码审计分享
0x01环境搭建web服务器环境的软件有很多,使用最多的还是phpstudy以及宝塔面板,本文采用的是phpstudy。请注意,无论使用phpstudy还是宝塔面板,都需要按照网站源码的设计要求,修改环境配置,不然网站会搭建失败。
0x02思路审计一个源码,最重要的是路由问题。一个功能点,如果找不到对应的功能代码,那审计的作用还有吗?
当然,没有使用框架的网站源码是没有路由效果的,直接通过url找目录路径文件就可以了
举个例子
一个网站的登录接口为 http://127.0.0.1/admin/login.php ,那么对应的源码就在admin目录下的login.php内
那如果使用了框架,情况就复杂起来了,需要了解这个源码使用框架的目录结构,thinkphp8.0框架的目录结构如下(源配置路径:https://doc.thinkphp.cn/v8_0/directory_structure.html),接口函数基本上在app下的controller文件夹下
www WEB部署目录(或者子目录)├─app 应用目录│ ├─c ...
阿里云服务器创建镜像虚拟机
阿里云服务器创建镜像虚拟机前言 笔者拥有一台阿里云服务器,前不久将服务器打包了镜像,并通过vmware部署到了本地,遂有了此篇使用教程
创建镜像首先在实例处创建自定义镜像
导出镜像创建完成在https://oss.console.aliyun.com/bucket创建一个Bucket(ECS在杭州就创建杭州的Bucket,在上海地域的ECS就创建上海的Bucket,一致时才能导出镜像)
创建后就导出镜像
点击授予ECS对OSS存储筒的访问权限
OSS存储筒中便有raw压缩包
之后便可以下载raw压缩包文件了
raw格式转vmdk下载后的raw文件要转为vmdk文件
使用qemu将system.raw文件转换为vmdk文件,输出为system.vmdk
部署vmware虚拟机
使用vmdk文件作为磁盘文件
修改密码启动之后不知道为什么密码不正确
重启虚拟机,在引导时摁e键
将linux这行修改ro改为rw init=/bin/sh
ctrl X进如单用户模式
passwd root修改密码
exec /usr/sbin/init重 ...