其他分享
首页 > 其他分享> > 隐藏 Thread.sleep

隐藏 Thread.sleep

作者:互联网

隐藏 Thread.sleep

无聊随便写写不做任何用途

实现原理:

1.反射调用Thread.sleep方法

2.把 Class.forName("java.lang.Thread ") 中的字符串 java.lang.Thread 换成ascii码

3.使用int数组来装,同时把ascii码转 16进制,8进制,2进制

4.sleep方法同样如此

5.sleep时间用2<<9 = 1024 大概1秒钟 2秒就 2<<10

    private void f() {
      try {
          int[] a = {0x73, 0b11011 << 2, 0x65, 0x65, 0b111 << 4};
          int[] b = {0152, 0141, 0166, 0141, 056,
                  0154, 0141, 0156, 0147, 056,
                  0124, 0150, 0162, 0145, 0141, 0144};
          Class<?> clz = Class.forName(new String(Bytes.toArray(Arrays.stream(b).boxed().map(x -> Byte.valueOf((byte) x.intValue())).collect(Collectors.toList())), StandardCharsets.UTF_8));
          Method m = clz.getMethod(new String(Bytes.toArray(Arrays.stream(a).boxed().map(x -> Byte.valueOf((byte) x.intValue())).collect(Collectors.toList())), StandardCharsets.UTF_8), long.class);
          m.invoke(clz.newInstance(), 2 << 9);
      } catch (Exception e) {
          e.printStackTrace();
      }
  }

 

标签:Thread,int,Class,0141,sleep,clz,隐藏
来源: https://www.cnblogs.com/yexuba/p/16197708.html