所有话题标签: |
0x01 前言
Meterpreter会话进入shell执行DOS命令时会出现中文乱码的情况,是因为Windows命令终端默认活动代码页为:936(ANSI/OEM-简体中文GBK),与Linux命令终端默认(Unicode-UTF-8)编码不一致,所以返回的中文字符会显示乱码。
MS-DOS为以下国家和语言提供字符集:
0x02 chcp命令解决中文乱码
C:Users*******Desktop>chcp 65001
注:但不知为何Windows版的Metasploit中文字符也会乱码,按理说当前Windows命令终端与反弹回来的Windows命令终端活动代码页都是936,不应该再出现乱码的啊,搞不懂了!只能先用chcp 60001临时解决了,唯一的好处就是↑↓←→等特殊按键不会出现乱码。
0x03 修改编码解决中文乱码
注:Delete、Backspace按键乱码情况也可以在这里设置,不过像Ctrl、Shift组合键和Esc、Home、End、PgUp、PgDn、F1-F12(除F11),以及↑↓←→这类特殊按键的乱码到目前为止还没能找到更好的解决办法,这类乱码属于ANSI Escape控制码。
0x04 rlwrap解决特殊按键乱码
以前也尝试过很多方法都没能解决这个问题,最近了解到rlwrap这个工具后才发现能够完美解决,直接执行以下命令安装即可,最后用rlwrap来启动metasploit就可以了。
-
下载地址:https://pkgs.org/download/rlwrap
root@kali:~# apt-get install rlwrap
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中文乱码的解决
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论