为什么程序员做一个简单的注册功能要写几百行代码?假如你要给一个网站写一个注册框,先写五行用于接收用户名和密码,三行用于校验,不能等于空五行进行密码加密,再用六行存入数据库,七行发送注册成功短信,最后再用五行返回结果当你以为一切都没问题的时候, 结果项目上线第二天就出现同一个 ip, 同一个设备,甚至同一个密码,用户名从 test 零零零一到 test 三零零零零,全是小人用脚本批量提交。所以你又写了四十行代码,用来防止恶意注册,还加了 ip 限流、图形验证码、空格过滤、静脉号适配以及指纹行为封控。你心想现在总不会出问题了, 没想到网站搞活动拉新,大量用户在同一时间注册,后台竟然出现了两个一样的 id 和用户名。你一咬牙给数据库加上了唯一锁瘾,但是又爆主见冲突,你再用上瑞思分布式锁才暂时解决,你以为能松口气了,谁知道用户又反馈发了验证码收不到消息,你又熬夜加上了短信的重试机制,三家供应商轮询失败,就自动重 试用户点收不到验证码,再触发一次,结果又有小人做脚本,一天给你点了几千条短信,你火急火燎的再加上单日上线, 这还只是一个注册,如果再加上网站其他功能,你受得了吗?所以现在你知道为什么央视三番五次的说网络安全这行人才集缺了吧?知道程序员为什么要天天改 bug 了吧,因为只要是人写的程序就一定会有漏洞,所以现在的互联网公司都在组建自己的网络安全团队,目的就是为了防止机密信息被窃取,以 及找出系统中的漏洞。招聘平台搜晚安工程师或者渗透测试工程师岗位薪资都是上万起步。所以如果你也想学一门技术改变现状,那我这套一百多节的网络攻防技术教程,粉丝都可以拿去看看。关键还有一点,要是一次性把功能都写好了,后面公司还要你干什么呢?
粉丝3.0万获赞11.2万

你要问我为什么一个注册功能要写几百行代码?是因为几百行代码全是在访小人,五行接收用户名、密码、账号,三行校验不能等于空。在五行密码加密存储,六行存入数据库,七行发送注册成功短信,在五行返回,结果自测的时候,一切顺利,完美交付我直到上线第二天,同一个 ip, 同一个设备,同一个密码,用户名从猜测的零零零一, 他们注册到 tax 两万七千七百八十三,你问为什么只注册到两万七千七百八十三?因为短信平台只有两万七千七百八十三条的额度,全是小人脚本批量提交,所以又写了四十行,防止恶意注册。然后还加了 ip 限流图形验证码,正则校验、空格过滤镜、外号,适配设备指纹、行为风控。还要防病发冲突。搞活动期间,几百几千个人同时注册,只 接就出现了两个用户,同时提交了相同的用户名,爬虫直接绕过了前端叫验,又要加数据库加唯一锁影,该是他们汇报主见冲突,带向 radis 分 布式锁房重复,才能说暂时能用。有时候发短信会翻车,发了验证码都收不到消息, 又得加短信的重试机制,三家供应商轮询失败,自动重试三次,状态一步回调通道动态降级,超时自动补发。用户点收不到验证码,再触发一次,结果又有小人做脚本点,一整天收不到验证码,又要加单日上线,然后就出现正常用户,其他地方验证码又收不到,这还都只是一个注册,你要上其他功能,你 受得了吗?所以你知道程序员为什么工资高了吗?知道程序员为什么天天改 bug 吗?知道许山代码是怎么对出来的吗?这就是初级走道,高级程序员的来时路。关键还有一点最重要,要是一次都写好了,后面公司还要你干什么呢?有的人卸磨杀驴知道吧?就这么着,散会。

这个网站是我们要攻击的一个目标,但是我不知道这个网站的账号和密码怎么办?这个时候呢,我们可以输入一个万能密码,点击登录就可以登录成功了, 这究竟是怎么做到的?我们今天要去讲解,内容是卡点挖漏洞,实战之手把手教你挖掘收口,输入漏洞。 特别提醒大家,接下来所有操作都在拔草环境中进行,绝对符合网络安全法规定,大家实操也必须在拔草环境或授权环境下操作,未经授权攻击他人网站是违法行为。我们先讲解实战,然后再去讲解原理。在实战的第一步中,我们的目标机与操作机,大家需要明白, 给大家准备中的这一个目标机是在左手边的这一个,然后操作机就是我们的卡点 linux, 卡点 linux 的 目的是作为操作机去攻击我们的目标机,所以说我的目标机提前已经把把伞搭建好了,大家只需要拿到我的这个目标机,一旦开机之后就可以访问了,那怎么访问呢?大家可以直接 ip config, 这就是我们目标机的 ip。 拿过来我们再切回到操作机,我们打开这个 b p, 我们在里面点一个代理的时候,可以打开一个浏览器,把那个粘过来,我们就回收,这里面显示了 hello world, 就 代表我们已经可以访问到这里的目标机的靶场环境了。 再切回到操作机,那么我们只需要在后面加一个网站,这样的话就访问到了我们的这一个目标靶场。 我们进入第二步,在访问的过程中使用万能密码去探索,注意这个是网络安全的真实面试题,之前就有面试官问过我,请你说一下万能密码是怎么玩的?我们现在就在讲我们的万能密码, 我打开我们这个操作机,在操作机这里面我确实是不知道账号和密码的,那怎么办?我们可以这样写,这样写,然后呢?我们的密码也这样写,这样的话就是我们的万能密码的形式,关于这个万能密码的原理,我们后面会专门讲解的。 好,那我就登录成功了,也就是根据第二步使用忘恩密码直接走到了第三步,我们拿到了我们登录的成果,我们不知道用户名和密码的情况下,也得知了,也进入了这个登录的首页, 有需要操作机与目标机的小伙伴们,只需要私信我发送目标机与操作机即可。接着后我们进入这个原理片的一个环节,为什么会存在社口出入的这种漏洞呢? 大家需要明白。首先我们在这个环节中,我们用这个 app 也好,电脑应用也好,浏览器也好等等,它是不是可以访问到这个服务器?这个服务器有可能是用 java 写的,有可能是 ppt 写的,有可能是构员写的,都有可能,因为它会访问到数据库, 数据库的话有很多种类型,我这就不是电脑那么这样一种服务器架构,其实无论是腾讯系、阿里系、京东系等等,全球所有网站的服务器大概就是这样设计的。 哎,这个时候我们在网站的这个这个环节中,我们输入框里面输入的东西不是正常内容,而是会输入这些受苦语句怎么办呢?这样的话就可以骗过数据库,最终可以达到骗数据库的执行,达到偷数据、删除数据、创改数据等等。 哎,我刚才所讲的这个环节中,这里面不是有个浏览器吗?这个浏览器就相当于我们在前面讲了这个环节的浏览器,这个是一样的, 大家可以去思考,以后无论是挖漏洞、打互网、各种比赛,或者是从事安全工作等等,是不是会有这样的场景,一定会有这种登录框或者是注册框,以这种形式就一定会跟数据库打交道。 如果说他跟数据库打交道,那么是不是又得从这个登录框?注册框这种输入框是可以访问到服务器,服务器再访问到数据库,那我们是不是在传递的时候不会传递一些正常数据,而是说访问一些这种受苦数据,是不是可以欺骗到他这个数据库了? 紧接着我们来看一下牲口猪肉能够带来哪些危害,包括之前的这个淘宝账号被盗,还有这个酒店预定数据库被黑客入侵等等,这种事件都是由牲口猪肉所带来的这种危害。当然还有很多很多很多事件,我们这里面这个 ppt 列不上来了,所以说这里面的话只列了这两个, 因为你要明白这种软件和我们的这个软件是一样的,我们往这个软件里面只录了一种收口语句,或者是说恶意的收口语句,那么就能干嘛?就能去绕过服务器再到达这个数据库,那么这样的话就可以欺骗这个数据库,来做各种控制数据库响应的事情,所以说才会有这件事件的诞生, 我们开始对这一个原理的分析,这个图想表达意思就是说我们想解释清楚这两句话是什么样的原理。过程 在看我们的 app 的 时候,你会发现一个点,这里面的东西,我们可能说现在还看不懂,是因为我们还没开始专门的讲解。回进来为什么说我们传出这两个玩意,它就能够把我们这个信息给推送进去呢?这是为什么呢?是不是?好?我们在这个疑惑就开始来去讲解,我要把它给它放小一点,我们这里的话是什么是用户名输入的, 哎,这里面是密码输入的,也就是把这个给它发到这里来,密码输入的也这个是用户名输入的,发到这里来 这个关系大家都是非常清楚的。 然后紧接着我们对于这个攻击者的猜测来一步一步的分析。 首先我们需要明白它这个执行过程中在数据库里面长什么样子, 还记得前面吗?因为最终这个语句也好,这个语句也好,他会一定会到达我们的数据库,也就是他一定会从我们的这个输入框浏览器开始,一直会到达我们的服务器,再到达我们的数据库,是一个这样的过程。那我们想知道在数据库大概是长什么样子,在这里面 数据库里面是什么样的方式呈现的,这个是我们想知道的。所以说我们回到这里来,我们会有个猜测,首先这边的话是数据库的语法,我们写一下, 当然这是表明,然后这边就是用户等于账号,也就是等于我们的这个账号,而密码是等于这个密码, 这个是我们数据库大概的猜测,那么我们可以衍生出这一步,那么既然我们现在知道是这种情况的话,可能它会变成这个样子,就是说这里面传的是我们账号的输入框,然后这边传的是密码的输入框, 那么是以什么样的条件来个代表他是登陆成功呢? 那么这边会有一个公式回正来,也就是在这里面的时候,只要说在这里面他满足一个真,那么这个是真,那么就代表他是登陆成功。 注意所有的网站,无论是京东系、淘宝系、阿里系,全球所有网站他都是这样设计的,在数据库这方面, 只要条件都为真,它就代表你登录成功。说回来这个是真,这个也需要是真,也就是传的这个是真的,这个也是真的,就代表登录成功。那什么情况下是登录失败呢?如果说假设这个是假, 这个也是假,这是登录失败。如果说这个是假,这个是真,也登录失败。如果说这个是真, 这个是假,他也登录失败。就是必须要用户名与密码两个都为真,才算登录成功。那如何做到这个效果呢?那么可以这样来玩这三条登录失败的我们不看,想登录成功的话可以这样做, 只要说我们写的语句是这个样子的,它就能够代表成功。这样写这个其实是表达了真的意思,咱们这个 a、 b、 c、 d、 e、 f、 g 可以 不写,就长这个样子。就这一节它其实是表达了一个真的意思, 然后这里的这个密码也可以放到这里来,然后呢这个也可以不写,也可以写,随便你过来。这句话它也表达了一个真的意思, 这个是真,那么这一条也是真,那么就代表登录成功了。也就是这句话其实是表达了等于真, 这句话是表达了等于真, 但什么时候让它等于假呢?等于假的话可以这样写,我们看一下。好,一等于二吗?那肯定是错的吧?一怎么可能等于二呢?那它就是假。 一等于九吗?那肯定是错的吧?一怎么可能等于九呢?这是错的。那么一等于一吗?肯定等于一啊,是真的,那么这就表达了真的含义。说这句话我们现在要把它给传递到这里去, 然后这句话我们把它给传递到这里去,那么所最终达到的效果就相当于这里面其实它的本质传了一个真,那么这里面的话也是表达了一个真, 那么既然是这里是真,这里是真的话,就代表登录成功。所以说我们再回到这里来,你会发现一个点,就是这里面表达的一个形式,账号的输入框与密码的输入框对应起来,只要表达的用户名与真密码也真的话,就代表登录成功。这是全球所有网站的整个逻辑,是这样走的。 那之前还有面试官问你为什么是这样写的?那时候你会觉得很奇怪,因为他想问你的点就是说,为什么前面没有开始号,后面也没有一个结束号,这是为什么呢?为什么长这么奇怪呢?为什么又长这个样子呢? 好,你看前面有一个开始号呀,后面又没有结束号呀,注意了,为什么长这样子?为什么长这样子?是因为他从这里面拷贝出来我当前所选中的这个,他怎么拷贝这个区域啊?你看我剪切掉看到了吗?我再恢复 看到区别了吗?所以说你会导致说前面有一个开始号,后面写了些东西,把它给挡住了, 因为我前面讲了吗?这里面可以写东西,这是可以写东西的,也可以不写东西的,这样他们是等价的,这个效果和这个效果和这个效果商者是等价的。那我说这样写嘞就变成这个样子了吗?那我来个空格嘞,也是等价的效果, 看区别了吗?所以说就会解释清楚为什么是这种奇奇怪怪的符号,为什么这里面有结束?是因为从这里面拷贝出来的, 我把它给剪切掉,剪切好看没有?这还留下什么?留下一个开头和结尾,到时在拷贝出来之后,我们放到这里来,是不是长这个样子了?好,这就是之前一些面试题的细节问题,我们给大家解释了一下, 我们来总结一下,我们一共有三步核心,第一步,我们去激活网络靶场。第二步,我们访问的过程中并使用万能密码去探测。第三步,验证注入好之后的成果,进行一个登录。


在介绍前先展示一下代码,因为 a p p 是纯原声开发的,所以代码量非非常多,而且实现起来也比较麻烦, 平均每个文件有四百多行代码, 下面这个是代码数据统计, 简单运行一下。 好了,下面进行 a p p 展示。 a p p 新加入了壁纸皮肤功能,可以设置自己喜欢的壁纸,同时也支持日记显示 搜索功能。 功能板块有人账界面, 可以支持 a p p 内申请 我的追翻功能。 点击观看,可以直接到 b 站内观看 赞助博主界面,可以直接保存图片。 聊天界面 切换主题功能。 软件界面 可以选择壁纸, 不过好像有点大,下次修复。 当然也可以进行透明度调整, 也可以关闭背景壁纸, 可以检查版本更新,当然有更新会自动提醒。这里可以直接访问我的 b 站空间, 有问题可以通过意见反馈发送给我。 可以直接登录注册, 登录后的界面如下, 个人中心可以直接修改头像, 下面给大家展示一下链接自动识别功能,复制文章链接后跳转到 a p p 内,可以直接访问, 有新版本会有下面这样的提示信息,大家可以直接更新。好了,这期视频就到这里。


新买的电脑或者是重装系统后,一解包系统就让联网登录微软账号,一联网就是四十分钟,特别烦人,今天给大家安排一个最简单的方法, 一串代码就可以完美跳过登录微软账号,直接登录你的电脑,就连二五 h 二的版本都能使用,台式机要先拔掉你的网线,不要让电脑联网。进入这个界面,默认选择中国,再选择输入法,跳过键盘布局,出现联网 注册微软账号的界面了。按住 shift 加 f 十唤醒命令提示符窗口,鼠标点一下窗口,输入以下代码,一定要注意这 shift 后面有个空格, 输完代码后敲回车,系统已经跳过刚才的联网步骤了,直接来到了创建本地账户的界面,输入用户名,直接点下一步,用户名尽量不要用中文。 现在电脑正在配置系统信息隐私设置,这里可以根据自己的需求自己设置。点击下一页,点击接受跨境传输,点击下一步。现在已经完成部署配置了,我们现在就是安装程序和激活系统了。