https://buuoj.cn/challenges#[FlareOn1]Bob%20Doge
64 C++ exe
打开发现竟然是一个安装程序,那就安装呗
安装下来是一个 C# NET逆向
那个乱码应该就是 flag ,但是由于输出方式不对看不到,这就要我们进入程序看看这个位置到底放了什么
定位到关键函数
// XXXXXXXXXXXXXXX.Form1
// Token: 0x06000002 RID: 2 RVA: 0x00002060 File Offset: 0x00000260
private void btnDecode_Click(object sender, EventArgs e)
{
this.pbRoge.Image = Resources.bob_roge;
byte[] dat_secret = Resources.dat_secret;
string text = "";
foreach (byte b in dat_secret)
{
text += (char)((b >> 4 | ((int)b << 4 & 240)) ^ 41);
}
text += "\0";
string text2 = "";
for (int j = 0; j < text.Length; j += 2)
{
text2 += text[j + 1];
text2 += text[j];
}
string text3 = "";
for (int k = 0; k < text2.Length; k++)
{
char c = text2[k];
text3 += (char)((byte)text2[k] ^ 102);
}
this.lbl_title.Text = text3;
}
//绑定点:
private void InitializeComponent()
{
this.lbl_title = new Label();
this.pbRoge = new PictureBox();
Button button = new Button();
...
button.Click += this.btnDecode_Click; //这里
动态调试,在最后一行下端点运行,点按钮就送
flag{3rmahg3rd.b0b.d0ge@flare-on.com}