- 博客(22)
- 收藏
- 关注
原创 java集合进阶
类后面–泛型类使用场景:当一个类中,某个变量的数据类型不确定时,就可以定义带有泛型的类格式:修饰符 class 类名<类型>{}此处E可以理解为变量,但是不是用来记录数据的,而是记录数据的类型,可以写成:T、E、K、V等方法上面–泛型方法方法中形参类型不确定时方案①:使用类名后面定义的泛型,所有方法都能用方案②:在方法申明上定义自己的泛型,只有本方法能用格式:修饰符<类型> 返回值类型 方法名 (类型 变量名) {}接口后面–泛型接口。
2025-02-28 16:12:50
736
原创 常见API
游戏打包exe游戏打包exe① 一定要包含图形化界面②代码要打包起来3.游戏用到的图片也要打包起来4.JDK也要打包1.把所有代码打包成一个压缩包,jar后缀的压缩、2.把jar包转换成exe安装包3.把第二步的exe,图片,JDK整合在一起,变成最终的exe安装包Math是一个帮助我们用于进行数学计算的工具类私有化构造方法,所有的方法都是静态的。
2025-02-14 14:55:08
862
原创 java基础
数据类型[] 数组名例:int [] array数据类型 数组名 []例:int array []this:理解为一个变量,表示当前方法调用者的地址值,super:代表父类存储空间。多态同类型的对象,表现出的不同形态。多态表现形式:父类类型 对象名称=子类对象;有继承关系有父类引用指向子类对象有方法重写抽象方法的定义格式:publicabstract返回值类型 方法名(参数列表);抽象类的定义格式:publicabstractclass 类名{}
2025-01-21 01:10:06
610
原创 log4j2远程代码执行
漏洞,黑客可以恶意构造特殊数据请求包,触发此漏洞,从而成功利用此漏洞可以在目标服务器上执行任意代码。注意,此漏洞是可以执行任意代码,这就很恐怖,相当于黑客已经攻入计算机,可以为所欲为了,就像已经进入你家,想干什么,就干什么,比如运行什么程序,植入什么病毒。通过访问那个域名网站之后,它的这个服务器后面会去做一个映射,如果这个网站存在这个漏洞,那么它就会访问这个网站, 只要一访问这个网站它就会得到网站的ip地址,说明我的服务器解析了这个代码,说明那个我的这个网站存在这个漏洞。
2024-05-26 12:45:23
1109
原创 SSRF服务器端请求伪造
1.社交分享功能:获取超链接的标题等内容进行显示2.转码服务:通过URL地址把原地址的网页内容调优使其适合手机3.屏幕浏览在线翻译:给网址翻译对应网页的内容4.图片加载/下载:例如富文本编辑器中的点击下载图片到本地;5.通过URL地址加载或下载图片云服务厂商:它会远程执行一些命令来判断网站是否存活等,所以如果可以捕获相应的信息,就可以进行ssrf测试6.编码处理7.可以利用google 语法加上这些关键字去寻找SSRF漏洞。从远程服务器请求资源----》找SSRF。
2024-05-12 14:17:20
1169
1
原创 Struts2远程代码执行
Struts2漏洞是一个经典的漏洞系列,根源在于Struts2引入了OGNL表达式使得框架具有灵活的动态性。随着整体框架的补丁完善,现在想挖掘新的Struts2漏洞会比以前困难很多,从实际了解的情况来看,大部分用户早就修复了历史的高危漏洞。目前在做渗透测试时,Struts2漏洞主要也是碰碰运气,或者是打到内网之后用来攻击没打补丁的系统会比较有效。Struts2执行代码的原理:Struts2的动态性在于ongl表达式可以获取到运行变量的值,并且有机会执行函数调用。
2024-04-29 01:54:48
981
1
原创 docker基础
传统安装Mysql–查看、卸载比如我们需要安装一个Mysql的时候,普通的一个安装是很麻烦的,不仅是需要安装Mysql工具、库,它的配置也挺麻烦。不同的系统版本,他要下载Mysql的类型也是不一样的,也要去查一下当前系统虚拟机或者主机适合下载哪个,查到之后,要去下载这些过程太麻烦了,而且容易出错使用docker工具去安装只需要一条命令● 安装命令:● docker.io是Docker软件包的名称,通过执行该命令,系统会自动下载并安装Docker软件包及其相关依赖项。
2024-04-28 12:59:05
840
1
原创 热门框架漏洞(Thinkphp)
(__construct是一个魔术方法里面的一个析构函数,只要我在对象里面new了一个对象之后,会自动调用__construct里面的代码,我们不需要进行调用,我们只要创建一个对象会自动调用,这个参数会对我们网站里面的代码进行覆盖他就会那个本来要执行的代码进行覆盖。这里达到的效果是phpinfo(1),我们正常写的情况下里面没有值这里给了一个1的值,是因为我们这里查找的php文件不完整数字不同,获取的文件里面的信息也是不同。的情况下,用户可以调用任意类的任意方法,最终导致远程代码执行漏洞的产生。
2024-04-25 00:58:42
1965
1
原创 Thinkphp扩展
在ThinkPHP中,视图通常是由HTML、CSS和JavaScript等前端技术组成的模板文件,用于呈现最终的页面给用户。● Tcsh(TENEX C Shell):Tcsh是C Shell的改进版本,提供了类似C语言的语法和一些额外的特性。● Zsh(Z Shell):Zsh是一个功能强大的命令解释器,它具有高级的自动补全功能、主题定制和插件支持等特性。● 简单来说,OGNL可以帮助我们通过表达式来获取对象的属性值、调用对象的方法以及进行一些简单的运算操作。
2024-04-24 10:55:55
752
原创 代码执行1
Java:Java中没有类似php中eval 函数这种直接可以将字符串转化为代码执行的函数,但是有反射机制,并且有各种基于反射机制的表达式引擎,如:OGNL、SpEL、MVEL等,这些都能造成代码执行漏洞。(如PHP中的eval)时,没有考虑用户是否控制这个字符串,将造成代码执行漏洞。代码执行漏洞是指应用程序本身过滤不严,用户可以通过请求将代码注入到应用中执行。eval(将字符串当做函数进行执行(需要传入一个完整的语句))${}执行代码(中间的php代码将会被解析)2.禁用或减少使用执行代码的函数。
2024-04-21 22:04:38
411
1
原创 命令执行1
RCE:远程命令执行或者代码执行,因为RCE这个词的滥用,RCE的范围比较广,只要渗透的最终情况可以实现都属于RCE,列如:代码执行、文件包含、反序列化、命令执行、甚至是写文件Getshell都可以属于RCE。RCE漏洞,可以让攻击者直接向后台服务器远程注入操作系统命令或者代码从而控制后台系统。
2024-04-20 07:16:54
1138
2
原创 XSS平台搭建及后台使用(cookie获取)
点击XSS后台,这就是我们收集cookie的网站,第一次进入需要初始化,如果你的数据库密码改了的就要去靶场的根目录的pkxss/inc/config.inc.php把链接数据库密码改成一致(案列靶场是这个,反正就是要找到这个配置文件)执行完之做了一个php的重定向,做完上面操作,保存完数据库之后,重新给你访问了一下这个网址,这个网址应该改成存在漏洞的网站的IP。然后我们把留言删除,刚刚我们知识测试是否存在有这个漏洞,然后我们现在想要获取cookie,需要构造代码了。这里的IP是能和虚拟机通信的,
2024-04-12 05:08:13
2153
原创 CSRF跨站请求伪造
(意思就是,用户C登陆了A网站的页面,没有退出,也没有删除,然后用户C来访问了我的网站,我的网站那里面可能有一个点击的内容,假设用户C点击了这个链接,它就会发送一个请求。CSRF漏洞风险存在了,如果需要真正的被利用,还需要对"修改或新增"数据操作请求的伪装,此时恶意攻击者只要将伪装好的"数据修改或新增"的请求发送给被攻击者,或者通过社工的方式诱使被攻击在其Cookie还生效的情况下点击了此请求连接,即可触发CSRF漏洞,成功修改或新增当前用户的数据信息。攻击者盗用了你的身份,以你的名义发送恶意请求。
2024-04-07 23:55:18
811
原创 XSS漏洞利用
输出编码主要有URL、HTML、JS可以采用白名单验证或者黑名单验证方法。白名单验证:对用户提交的数据进行格查,只接受指定长度范围内、采用适当格式和预期字符的输入,其余一律过滤黑名单验证:对包含XSS代码特征的内容进行过滤,如"“、“script”、”#"等·对所有输出字符进行HTML编码‘’ 转成& gt;‘&’ 转成& amp;" 转成& quot;’ 转成& #39;
2024-04-01 21:04:27
2578
原创 业务逻辑支付漏洞
比如:在支付的时候它URL后面的支付接口是3,而试用接口是4,那么此时你已经试用过了,复制下确认试用时的URL,修改后面的支付接口为3,那么此时就会调用购买支付接口,但是由于你本身这个产品就是试用的,其相应值绑定了这个试用商品,那么金额就肯定是0,那么最后点击支付,你就可以看到支付成功,试用成功又重复试用了一次,然后他们的试用时间会累加在一起,这就导致了可无限制购买任何产品了。: 支付流程通常涉提供的输入,如金额、银行卡号、付款地址等例如,攻击者可能提交负数金额,或者使用非法的银行卡信息。
2024-03-31 13:51:03
1099
1
原创 逻辑漏洞之业务安全
越权漏洞的危害与影响主要是与对应业务的重要性相关,比如说某一页面服务器端响应(不局限于页面返回的信息,有时信息在响应包中,页面不一定能看见)中返回登录名、登录密码、手机号、身份证等敏感信息,如果存在平行越权,通过对用户ID的遍历,就可以查看所有用户的敏感信息,这也是一种变相的脱库,而且很难被防火墙发现,因为这和正常的访问请求没有什么区别,也不会包含特殊字符,具有十足的隐秘性。如果存在乱序,生成的订单,我能不能想办法跳过支付,或者我在这个订单的地方,我把我的订单号改成别人的,用别人的账号给我支付。
2024-03-30 20:12:20
1209
1
原创 业务逻辑之身份认证安全
多见于计算类型的验证码,如 1+2=?,这种类型的验证码严格意义上来说不能叫做验证码,多刷新几次验证码,我们可能会发现系统中的算数题目只有那么几道,这种情况下只要将验证码全部下载下来,生成一个 md5 库,然后将前端生成的验证码与本地文件进行对比即可。渗透测试的过程中,有时候会出现这种情况,系统存在一个万能验证码,如0000、9999只要输入万能验证码,就可以无视验证码进行暴力破解。客户端在本地进行验证码是否正确的判断,而该判断结果也可以在本地修改,最终导致欺骗客户端,误以为我们已经输入了正确的验证码。
2024-03-26 20:03:17
977
1
原创 Access 注入
靶场为access数据库这里有个zip已经配好了环境提取码:9930这个vmx直接用虚拟机打开,然后确保主机和虚拟机能ping通Access是没有端口的,,只有表->->->->。exists是否存在从哪个库里面查打开之后我们试着点击可以点击的地方然后发现有注入的地方,然后试着判断是数字型还是字符型发现单引号和双引号都报错,然后我id=1/0报错,除零错误,说明计算了,是数字型然后我们就可以判断数据库类型了他竟然说我们没有读取的权限,我们试试另外一个。
2024-03-24 04:43:25
2131
1
原创 sql的bypass
Locate(str1,str2,pos)返回str1字符串在str2里pos(起始位置)出现的位置,没有返回0pos必须大于第一次出现的位置,才能显示第二次出现的位置。后面的参数3不是说,后面找的时候第一参数变成1,只是说在这个字符串中,他会从第三位往后找,返回的还是原来字符串的位置,而且返回是子字符串第一个字符的位置。Locate(str1,str2)返回str1字符串在str2里第一次出现的位置,没有返回0。参数1的长度无法满足参数二的长度时,参数3才会执行,满足就输出参数1对应参数2的长度。
2024-03-23 15:14:28
1148
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人