- 博客(6)
- 收藏
- 关注
原创 gdb调试
在使用这些变量时,编译出来的机器码(汇编),多数情况会用寄存器来操作这些变量,很少会放进进程的虚拟内存中,因为慢(涉及到分页过程,从cpu到内存,再从内存到寄存器)。其中,cmp al,0x61 让al 与 0x61相减,结果保留在 ZF 位(是否相等)、CF位(看谁大谁小);不可见字符:shell 中输入的字符都是可见字符,但是程序中的(cmp al,0x10 ) :0x10 是不可见字符,怎么办?ptr : 指针 ,意味着要去 [rbp-0x10]这个地址取内容,放入eax中。
2023-12-03 16:13:22
236
1
原创 sqlilabs(1-20)
可以看见,在第二条update语句中,$row1是从$row中的['username']来对,且$row是数据库中用户名的查询结果。可以看到:$id 不再被 ' ' 号闭合,故自己构造的sql语句是不会在数据库执行的,即使源代码有回显,但是源代码中回显的数据来源是执行了sql语句的结果。虽然也是存在sql注入,但是我们构造的sql语句要考虑()号包裹的问题。可以看到,页面延时了5s,故执行了sleep(5)语句,利用时可以把sleep(5)替换成盲注时的判断语句:if、substring等等一些爆破语句。
2023-12-02 14:01:08
76
1
原创 tai-e (log4shell demo检测) 及 web注入学习
利用github上的log4j demo:sources:sinks:transfers:反射配置:136;136;591;82;;scope: APPanalyses:pta: cs:ci;测试结果:web注入:
2023-11-26 17:22:50
228
1
原创 一个简单的登录框实现和预防sql注入
添加了addcslashes()函数过滤的情况,用以下playload:原理是目标系统利用“”号来拼接输入变量,但是“”号可以解析$str这个变量。如图:目标源码使用addcslashes()函数过滤$_str ,再用“”号闭合赋值给$str,最终再传入eval()函数。对比可以看到:只要是’‘ 或者“”包裹的正常php代码,无论添加多少层{ }号闭合php代码语句,都可以顺利执行。注:这段php测试代码说明了利用addcslashes()去过滤eval()函数的输入,可以利用${}来进行绕过。
2023-10-28 16:10:23
261
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人