Meterpreter中文乱码的解决

  • A+
所属分类:安全闲碎
声明:该公众号大部分文章来自作者日常学习笔记,也有少部分文章是经过原作者授权和其他公众号白名单转载,未经授权,严禁转载,如需转载,联系开白。
请勿利用文章内的相关技术从事非法测试,如因此产生的一切不良后果与文章作者和本公众号无关。

所有话题标签:

#Web安全   #漏洞复现   #工具使用   #权限提升

#权限维持   #防护绕过   #内网安全   #实战案例

#其他笔记   #资源分享


0x01 前言

Meterpreter会话进入shell执行DOS命令时会出现中文乱码的情况,是因为Windows命令终端默认活动代码页为:936(ANSI/OEM-简体中文GBK),与Linux命令终端默认(Unicode-UTF-8)编码不一致,所以返回的中文字符会显示乱码。

Meterpreter中文乱码的解决

MS-DOS为以下国家和语言提供字符集:

Meterpreter中文乱码的解决


0x02 chcp命令解决中文乱码

使用chcp命令将当前Windows命令终端的活动代码页设置为“65001 - Unicode(UTF-8)”即可,这种方式只能用来临时解决部分中文乱码问题,可以正常显示英文,但不能显示中文。
C:Users*******Desktop>chcp 65001

Meterpreter中文乱码的解决


注:不知为何Windows版的Metasploit中文字符也会乱码,按理说当前Windows命令终端与反弹回来的Windows命令终端活动代码页都是936,不应该再出现乱码的啊,搞不懂了!只能先用chcp 60001临时解决了,唯一的好处就是↑↓←→等特殊按键不会出现乱码。


0x03 修改编码解决中文乱码

将本地Linux命令终端或SSH客户端的编码改为“简体中文-GBK、GB2312、GB18030”即可,或者在Kali命令终端菜单栏中的“终端”->“设定字符编码”处设置,这种方式可以完全解决反弹回来的Windows命令终端中文乱码问题。
Meterpreter中文乱码的解决
Meterpreter中文乱码的解决

注:Delete、Backspace按键乱码情况也可以在这里设置,不过像Ctrl、Shift组合键和Esc、Home、End、PgUp、PgDn、F1-F12(除F11),以及↑↓←→这类特殊按键的乱码到目前为止还没能找到更好的解决办法,这类乱码属于ANSI Escape控制码。


0x04 rlwrap解决特殊按键乱码

进入Meterpreter shell或者用netcat得到的shell后都不能直接使用上下左右等特殊按键,会显示乱码^[[A^[[B^[[D^[[C,想象一下在渗透测试过程中不能在shell下使用“上下键”查看历史命令,“左右键”来移动光标修改命令得有多难受,而且极其影响效率,有过这样经历的人肯定都知道!


以前也尝试过很多方法都没能解决这个问题,最近了解到rlwrap这个工具后才发现能够完美解决,直接执行以下命令安装即可,最后用rlwrap来启动metasploit就可以了。

  • 下载地址:https://pkgs.org/download/rlwrap

[email protected]:~# apt-get install rlwrap
Meterpreter中文乱码的解决
Meterpreter中文乱码的解决


0x05 参考链接

  • https://en.wikipedia.org/wiki/Code_page
  • https://en.wikipedia.org/wiki/ANSI_escape_code

  • https://zh.wikipedia.org/wiki/%E5%AD%97%E7%AC%A6%E7%BC%96%E7%A0%81



Meterpreter中文乱码的解决
Meterpreter中文乱码的解决  如果对你有所帮助,点个分享、赞、在看呗!Meterpreter中文乱码的解决

本文始发于微信公众号(潇湘信安):Meterpreter中文乱码的解决

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: