好友
阅读权限 25
听众
最后登录 1970-1-1
CM是什么?Crackme是什么?这是什么东西?楼主发的什么?
他们都是一些公开给别人尝试破解的小程序,制作 Crackme 的人可能是程序员,想测试一下自己的软件保护技术,也可能是一位 Cracker,想挑战一下其它 Cracker 的破解实力,也可能是一些正在学习破解的人,自己编一些小程序给自己破解,KeyGenMe是要求别人做出它的 keygen (序号产生器), ReverseMe 要求别人把它的算法做出逆向分析, UnpackMe 是要求别人把它成功脱壳,本版块禁止回复非技术无关水贴。
就两个.net的程序还能看明白,所以再贴一个。直接看代码。都是使用了原执行文件的代码。实用工具:NET Reflector v7.4.0.178
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Security.Cryptography;
using System.IO;
namespace lengyu52pojie
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
public string strsub(string nick)
{
string str;
string[] strArray = new string[5];
try
{
str = nick.Split(new char[] { ',' })[1];
}
catch
{
throw new Exception("相关信息不匹配,请重试,www.52pojie.cn 冷雨");
}
return str;
}
public static bool ifstring(string str, string str1)
{
if (str == str1)
{
return false;
}
return true;
}
public static string DESEncrypt(string EncryptString, string EncryptKey)
{
if (string.IsNullOrEmpty(EncryptString))
{
throw new Exception("引用DLL链接库出现致命错误,请将此信息反馈给程相关管理人员!");
}
if (string.IsNullOrEmpty(EncryptKey))
{
throw new Exception("引用DLL链接库出现致命错误,请将此信息反馈给程相关管理人员!");
}
if (EncryptKey.Length != 8)
{
throw new Exception("引用DLL链接库出现致命错误,请将此信息反馈给程相关管理人员!");
}
byte[] rgbIV = new byte[] { 0x12, 0x34, 0x56, 120, 0x90, 0xab, 0xcd, 0xef };
string str = "";
DESCryptoServiceProvider provider = new DESCryptoServiceProvider();
try
{
byte[] bytes = Encoding.Default.GetBytes(EncryptString);
MemoryStream stream = new MemoryStream();
CryptoStream stream2 = new CryptoStream(stream, provider.CreateEncryptor(Encoding.Default.GetBytes(EncryptKey), rgbIV), CryptoStreamMode.Write);
stream2.Write(bytes, 0, bytes.Length);
stream2.FlushFinalBlock();
str = Convert.ToBase64String(stream.ToArray());
stream.Close();
stream.Dispose();
stream2.Close();
stream2.Dispose();
}
catch (IOException exception)
{
throw exception;
}
catch (ArgumentException exception2)
{
throw exception2;
}
catch (CryptographicException exception3)
{
throw exception3;
}
catch (Exception exception4)
{
throw exception4;
}
finally
{
provider.Clear();
}
return str;
}
public static string sysclass(string int1, string gui)
{
if (ifstring(gui, "lengyu"))
{
throw new Exception("引用DLL链接库出现致命错误,请将此信息反馈给程相关管理人员!");
}
return DESEncrypt(int1 + "ac", "890806ac");
}
private void button1_Click(object sender, EventArgs e)
{
textBox2.Text = sysclass(this.strsub(this.textBox1.Text), "lengyu");
}
}
}
免费评分
查看全部评分
发帖前要善用【论坛搜索 】 功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。