VC++ 改动VMware BIOS、uuid_location、ethernet0_address等。主要问题例如以下

(1)随机产生16进制数。

(2)改动vmx相应项。依据规则一般仅仅改动最后三项值;

/************************************************************************/

/* 

摘要:产生十六进制随机数串。比如 "0C 8B 9A"或"0C:8B:9A"

返回值:返回生成随机数串。格式如"0C 8B 9A"或"0C:8B:9A"

Author:AboLee

日期:2014年4月6日

*/

/************************************************************************/

void Random(char *szRand,BOOL isMacAddr)

{   

srand((unsigned)time(NULL));

if (!isMacAddr)

sprintf(szRand, "%02x %02x %02x", rand() & 0xFF, rand() & 0xFF, rand() & 0xFF);

else

sprintf(szRand, "%02X:%02X:%02X", rand() & 0xFF, rand() & 0xFF, rand() & 0xFF);





szRand[8] = '"';

}

/************************************************************************/

/* 

摘要:改动虚拟机*。vmx文件 uuid.biosᄀᄁuuid.locationᄀᄁethernet0.address

依据校验规则一般改动后三项值

Author:Abolee

日期:2014年4月6日

*/

/************************************************************************/

const char *uuid_bios = "uuid.bios = \"";

const char *uuid_location = "uuid.location = \"";

const char *ethernet0_address = "ethernet0.address = \"";

int ModifyVmBiosAndAddress(wchar_t *szVmwarePath)

{

char Buffer[8 * 1024];





CFile file;

file.Open(szVmwarePath,CFile::modeReadWrite);

int fileSize = file.Read(Buffer, 8 * 1024);





char *p = strstr(Buffer, uuid_bios);

if (p == NULL) return -1;

p += 52;

Random(p,FALSE);

char *p2 = strstr(Buffer, uuid_location);

p2 += 56;

memcpy(p2, p2, 8);





char *p3 = strstr(Buffer, ethernet0_address);

if (p3 == NULL) return -1;

p3 += 30;

Random(p3,TRUE);

file.SeekToBegin();

file.Write(Buffer,fileSize);

file.Close();



return 0;

}

VC++ 改动VMware BIOS、uuid_location、ethernet0_address等的更多相关文章

  1. vmware 开机自动启动

    vmware开机自动启动, 可以使用vmrun命令. 1. 首先在“我的电脑”-“属性”-“高级”-“环境变量”-“PATH”中添加vmware路径,如:C:\Program Files (x86)\ ...

  2. DSP/BIOS使用之初窥门径——滴答时钟及烧写Flash

    操作平台和环境 DSP型号:TMS320C6713 仿真器:XDS510PLUS Flash型号:AM29LV800BT或AM29LV800BT都试过(一般接口一样,区别不大) RAM型号:MT48L ...

  3. 傻瓜式破解linux--rootpassword

    破password的方法: 方法1.单用户模式改动 (表示进入到单用户模式) .按回车键.按b键启动.进入单用户模式,进行password改动.重新启动 init 5 口诀:e2e 空格1 回车b 开 ...

  4. 批处理启动vm虚拟机服务 vm12启动无界面启动vm虚拟机系统 windows上如何操作服务 sc net启动关闭服务

    windows(win10)批处理脚本 打开vm虚拟机的服务,并且开启无界面虚拟机 @echo off net start "vds" net start "VMAuth ...

  5. vmrun命令

    VMWare提供了vmrun与VIX API两种手段使用户可以通过程序对虚拟机进行控制. 在官方文档中给出了详细的说明和示例代码.           vmrun:http://www.vmware. ...

  6. 傻瓜突破linux--rootpassword

    破password该方法: 方法1.单用户模式改动 (表示进入到单用户模式) ,按回车键,按b键启动.进入单用户模式.进行password改动,重新启动 init 5 口诀:e2e 空格1 回车b 开 ...

  7. Vmware虚拟机进入BIOS方法

    在VMware里面如何进入BIOS是个头疼的问题,因为启动界面一闪而过(下面两个图如果不设置bios.bootDelay,基本上很难抓到),即使你狂按F2或ESC键(ESC: 调整启动顺序;F2: 进 ...

  8. Dell poweredge r210进BIOS改动磁盘控制器(SATA Controller)接口模式

    Dell poweredge r210进BIOS改动磁盘控制器(SATA Controller)接口模式 开机后按F2键进入BIOS设置,例如以下图: BIOS设置主界面: 使用上下键移动光标到&qu ...

  9. Vmware的虚拟机示例进入BIOS方法

    虚拟机(Vmware)怎么进入BIOS_百度经验 https://jingyan.baidu.com/article/7e440953e566472fc0e2eff7.html Vmware虚拟机进入 ...

随机推荐

  1. [js]DOM 篇

    DOM 是 JavaScript 操作网页的接口,全称为“文档对象模型”(Document Object Model).它的作用是将网页转为一个 JavaScript 对象,从而可以用脚本进行各种操作 ...

  2. java I/O流类概述

    java I/O流类概述

  3. bzoj——2127: happiness

    2127: happiness Time Limit: 51 Sec  Memory Limit: 259 MBSubmit: 2570  Solved: 1242[Submit][Status][D ...

  4. Bipartite Graph hdu 5313 bitset 并查集 二分图

    题目:http://acm.hdu.edu.cn/showproblem.php?pid=5313 题意: 给出n个顶点,m条边,问最多添加多少条边使之构成一个完全二分图 存储结构: bitset   ...

  5. 俄罗斯方块 Tetris

    今天,为大家带来一个用Qt C++ (Windows环境下)做的一个简易俄罗斯方块小游戏 思路和模块介绍都在注释里面,其次就是一些项目中遇到的问题以及解决方案,在后面部分说明. 一.效果 测试图样 Q ...

  6. [代码审计]某开源商城前台getshell

    0x00 前言 这套系统搞了有点久了,漏洞是发现了,但一直卡在某个地方迟迟没拿下来. 下面就分享一下自己审这套系统的整个过程. 0x01 系统简介 略   0x02 审计入口 看到inc\functi ...

  7. 机器学习之路:python 特征降维 主成分分析 PCA

    主成分分析: 降低特征维度的方法. 不会抛弃某一列特征, 而是利用线性代数的计算,将某一维度特征投影到其他维度上去, 尽量小的损失被投影的维度特征 api使用: estimator = PCA(n_c ...

  8. [CF1053C]Putting Boxes Together(线段树)

    http://codeforces.com/blog/entry/62013 两个结论: 1.一定有一个箱子不用动. 2.不动的箱子一定是加权前缀和为S/2的那个. 1显然,2由1易得. 于是问题变为 ...

  9. blog搬家啦

    本blog大概不会更新了 新blog地址:https://zykykyk.github.io/

  10. bzoj 4322 东西分配问题

    问题:有n个东西,分给m个人,对于每个东西,每个人有喜欢与不喜欢两种态度:like[i][j],如果喜欢,那么他得到该东西时增加的喜悦度为k,否则为1,问是否存在一种分法,使得每个人都达到该人的最低喜 ...