字符转为Unicode编码的小方法

关于软件系统漏洞的问题,其中最常见的一个是跨站脚本漏洞,网上有很多相关的资料。

突发奇想,怎么能将写好的攻击代码转为Unicode编码后,进行攻击呢?明文攻击很容易被拦截,但是转义后则成功的概率比较大。

但是网上的资料,都是介绍攻击的原理,很少有说怎么将攻击代码转为Unicode编码,以下是同事写的一个小方法,供大家写拦截功能时,测试用。

不建议使用该代码做非法勾当!后果自负。

package com;

/**
 * 字符转Unicode编码(UTF-16)
 */
public class UnicodeUtil {
	public static void main(String[] args) {
		String str = "<script>";

		char [] chars = str.toCharArray();
		String ret = "";

		for (int i = 0; i < chars.length; i++) {
			ret += "%";
			ret += transferStr2Utf16(String.valueOf(chars[i]));
		}
		System.out.println(ret);
	}

	private static String transferStr2Utf16(String args) {
		char [] chars = "0123456789ABCDEF".toCharArray();
		StringBuilder sb = new StringBuilder("");
		byte[] bs = args.getBytes();
		int bit;
		for (int i = 0; i < bs.length; i++) {
			bit = (bs[i] & 0x0f0) >> 4;
			sb.append(chars[bit]);
			bit = bs[i] & 0x0f;
			sb.append(chars[bit]);
			sb.append(' ');
		}
		return sb.toString().trim();
	}
}
时间: 2024-10-21 11:46:56

字符转为Unicode编码的小方法的相关文章

汉字转为Unicode编码

protected string GetUnicode(string text) { string result = ""; for (int i = 0; i < text.Length; i++) { if ((int)text[i] > 32 && (int)text[i] < 127) { result += text[i].ToString(); } else result += string.Format("\\u{0:x4}&q

phpstorm配置git并解决Terminal 中文乱码(Unicode 编码)的方法

前言:在使用PHPstorm的时候,需要用到terminal,主要还是用这个操作git,但是在使用这个的时候会发现,代码里所有中文都是乱码状态,不利于使用,下面就来看看怎么解决这个问题 一.先在phpstorm上配置git 1.打开 settings 设置界面,选择 Tools 中的 Terminal (File -> settings -> Tools -> Terminal) 2.修改 Shell path 为你的Git bash 安装路径,我的在 D:\developer\Git\

字符串及其操作,字符的Unicode编码

plainText=input('message:') for c in plainText: print(chr(ord(c)-3),end='') plainText=input('message:') for c in plainText: print(chr(ord(c)+3),end='') for i in range(12): print(9800+i,chr(9800+i)) 原文地址:https://www.cnblogs.com/Paris-YY/p/9071401.html

字符串及其操作字符的Unicode编码

stuNum = '201709080015' print('年级是:'+stuNum[0:4]) print('专业编号是:'+stuNum[4:9]) print('序号是:'+stuNum[-3:]) stuNum = '440681199903333628' print('所在省市:'+stuNum[0:2]) print('所在地区:'+stuNum[2:4]) print('所在县区:'+stuNum[4:6]) print('出生日期:'+stuNum[6:14]) print('

php将unicode编码转为utf-8方法

介绍 在前端开发中,为了让中文在不同的环境下都能很好的显示,一般是将中文转化为unicode格式,即\u4f60,比如:"你好啊"的 unicode编码为"\u4f60\u597d\u554a". JS里将中文转为unicode编码很简单. function convert2Unicode(str) { return str.replace(/[\u0080-\uffff]/g, function($0) { var tmp = $0.charCodeAt(0).t

解决 iOS NSDictionary 输出中文字符”乱码”(Unicode编码)问题

简单定义一个字典,输出结果: NSDictionary *dic = @{ @"我是中文字符": @"223333", @"aaa": @{ @"aaa": @"啦啦啦" } }; NSLog(@"%@", dic); 将会看到这样的"乱码",这种现象经常在调试服务端返回 JSON 结果的时候遇到: 2015-02-25 19:23:40.346 XXXX[13273

[C语言]Unicode编码(二)-中文字符刷选

Unicode编码(二)-中文字符刷选 1,UTF-8编码中三字节中文字符的刷选方法如下: int chinese_filter(unsigned char one, unsigned char two ) {     int flag = -1;     if ( one >= 0x4E && one < 0x9F )     {         flag = 1;     }     else if ( one == 0x9F && two <= 0x

C# 判断字符编码的六种方法

方法一http://blog.csdn.net/qiujiahao/archive/2007/08/09/1733169.aspx在unicode 字符串中,中文的范围是在4E00..9FFF:CJK Unified Ideographs. 通过对字符的unicode编码进行判断来确定字符是否为中文.  protected bool   IsChineseLetter(string input,int index)    {         int code = 0;        int ch

java中文乱码解决之道(三)—–编码详情:伟大的创想—Unicode编码

原文出处:http://cmsblogs.com/?p=1458 随着计算机的发展.普及,世界各国为了适应本国的语言和字符都会自己设计一套自己的编码风格,正是由于这种乱,导致存在很多种编码方式,以至于同一个二进制数字可能会被解释成不同的符号.为了解决这种不兼容的问题,伟大的创想Unicode编码应时而生!! Unicode Unicode又称为统一码.万国码.单一码,它是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言.跨平台进行文本