终端常用的命令

日常开发中,会遇到一些终端指令,例如查看本地进程、查看dns解析、本机公网地址等

文本主要是进行记录汇总:(mac)

常见执行(mac)
  1. 查看本机公网id:curl ifconfig.cocurl -v ifconfig.co
  2. 监听本地端口: nc -l 8080
  3. 查看进程占用系统资源:top
  4. 查看本机的networkspace:ip netns list
  5. 自动多次执行:
for i in `seq 10`; do curl http://127.0.0.1:8080; done
  1. 查看dns:nslookup www.baidu.com
  2. 查看iptables规则:
    iptables -nL -t nat
    iptables -nL -t mangle
    ipvsadm -l // 查看负载均衡
  3. 查看tcp链接状态:netstat -an | grep tcp
  4. 查看dns信息:dig image.baidu.com
  5. 查看arp本地缓存:arp -nla
  6. 路由追踪:traceroute www.baidu.com
  7. 查看请求时间:time curl http://xxx
浏览器解码

浏览器解析 HTML 文档时主要有三个过程:HTML 解析、URL解析、JavaScript 解析。
每个解析器负责解码和解析文档中对应的部分,且解析是有顺序的。

&#x、\u 都可以表示Unicode 编码;
javascript 编码格式:\u
html 实体编码:&#
URL 编码:%74、%20

说明:不同浏览器的运行效果有差异。

HTML 解码示例:

<h3>HTML 编码</h3>
<p>对于 a 标签, href 属性 javascript:alert(1) 编码比较 </p>
<p>1 <a href="javascript:alert(1)">未编码</a></p>
<p>1 <a h&#x72;ef="javascript:alert(1)">href 中的 r 进行了编码</a></p>
<p>1 <a href="javasc&#x72;ipt:alert(1)">javascript 中的 r 进行了编码</a></p>
<p>1 <a href="javascript:ale&#x72;t(1)">alert 中的 r 进行了编码</a></p>

URL 解码示例:

<h3>URL 解码</h3>
<p>对于 a 标签, href 属性 javascript:alert(1) 编码比较 </p>
<p>1 <a href="javascript:alert(1)">未编码</a></p>
<p>2 <a h%72ef="javascript:alert(1)">href 中的 r 进行了编码</a></p>
<p>3 <a href="javasc%72ipt:alert(1)">javascript 中的 r 进行了编码</a></p>
<p>4 <a href="javascript:ale%72t(1)">alert 中的 r 进行了编码</a></p>

Javascript 解码示例:

<h3>JavaScript 解码</h3>
<p>对于 a 标签, href 属性 javascript:alert(1) 编码比较 </p>
<p>1 <a href="javascript:alert(1)">未编码</a></p>
<p>2 <a h\u0072ef="javascript:alert(1)">href 中的 r 进行了编码</a></p>
<p>3 <a href="javasc\u0072ipt:alert(1)">javascript 中的 r 进行了编码</a></p>
<p>4 <a href="javascript:ale\u0072t(1)">alert 中的 r 进行了编码</a></p>

注意:混合编码涉及到解码顺序,其中优先级由低到高为 JS < URL < HTML

二层混合编码:

<h3>二层混淆 解码</h3>
<!-- 
  r \u0072  %5c%75%30%30%37%32
  r \u0072  &#x5c;&#x75;&#x30;&#x30;&#x37;&#x32;
  r %72     &#x25;&#x37;&#x32;
 -->
<p>对于 a 标签, href 属性 javascript:alert(1) 编码比较 </p>
<p>1 <a href="javascript:ale%5c%75%30%30%37%32t(1)">alert(1) 中的 r 进行js编码, 后url编码</a></p>
<p>2 <a href="javascript:ale&#x5c;&#x75;&#x30;&#x30;&#x37;&#x32;t(1)">alert(1) 中的 r 进行 js 编码, 后 html 编码</a></p>
<p>3 <a href="javascript:ale\u0072t(1)">alert(1) 中的 r 进行 url 编码, 后 html 编码</a></p>

三层混合编码:

<h3>三层混淆 解码</h3>
<p>对于 a 标签, href 属性 javascript:alert(1) 编码比较 </p>
<p><a href="javascript:ale&#x25;&#x35;&#x63;&#x25;&#x37;&#x35;&#x25;&#x33;&#x30;&#x25;&#x33;&#x30;&#x25;&#x33;&#x37;&#x25;&#x33;&#x32;t(1)">alert(1) 中的 r 进行 js 编码, 后 url 编码, 再 html 编码</a></p>
工具网站
  1. html编码解码:http://monyer.com/demo/monyerjs/
  2. url编码解码:https://www.urldecoder.org/
  3. unicode编码解码:https://www.online-toolz.com/tools/text-unicode-entities-convertor.php
  4. 短链接:https://www.985.so/
  5. 常见的文件头格式解析工具:ultraEdit
  6. MIME类型查看:https://www.iana.org/assignments/media-types/media-types.xhtml
  7. SHA1 在线编码: https://emn178.github.io/online-tools/index.html
  8. 测试站点是否支持 TLS1.3:https://www.ssllabs.com/ssltest/
  9. base64编码工具:https://base64.guru/converter/decode/hex
    10.16进制异或操作:https://xor.pw/
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值