- 博客(10)
- 收藏
- 关注
原创 冰河暗涌防不胜防 BIOS下实现的Telnet后门
<br />来源:51CTO<br />作者:成松林<br />【51CTO.com 独家特稿】该项目仅为实验性项目,主要目的是想隐藏一个Telnet后门在主板的BIOS内,并让其随着计算机系统及操作系统成功的运行起来。运行后能反向Telnet连接到指定的计算机接受控制。<br />项目涉及的相关知识及技术目录<br />1、 实验环境,使用bochs调试工具。<br />2、 刷新BIOS技术问题。<br />3、 代码植入BIOS问题。<br />4、 源代码相关技术问题:<br /> <br />A、
2010-07-30 03:11:00 583
原创 多obj 连接时遇到的错误 Linker Tools Warning LNK4098
Error Message defaultlib 'library' conflicts with use of other libs; use /NODEFAULTLIB:libraryYou are trying to link with incompatible libraries.Note The run-time libraries now contain directives to prevent mixing different types. You will receive this war
2010-07-29 20:34:00 590
原创 汇编调用C库函数
<br /> 1.先包含(由于radasm的爱好者做好了inc和lib文件) : include msvcrt.inc includelib msvcrt.lib 2.调用C库函数和调用api一样,但名字和C语言函数的名字有一点点不一样,如调用比较函数: Invokecrt__strcmpi, offset sz1, offset sz2 开头通常要加上crt__或crt_(可以自己到msvcrt.inc中去看声明)
2010-07-29 15:19:00 1569
原创 解决masm与GetEnvironmentString不兼容问题
<br /> <br /><br />Masm32中 kernel32.inc 中对GetEnvironmentStrings存在问题<br />所以当在私用masm编译的时候会出现如下错误提示<br />LIBCD.lib(a_env.obj) : error LNK2001: unresolved external symbol __imp__GetEnvironmentStrings@0<br />test.exe : fatal error LNK1120: 1 unresolved externa
2010-07-29 15:04:00 2398 1
原创 __declspec(naked)(裸函数)和__asm
<br />__declspec(naked) 是告诉编译器 不要对函数进行优化 函数的所有实现包括堆栈的平衡 参数的压栈 ebp的赋值 还原 都要我们来做<br />甚至是ret / ret n 都要我们来做 <br /> <br />演示代码<br />int add ( int a, int b ){ return a + b;}// 有压栈,又要有出栈,这样才能使堆栈平衡。__declspec(naked)add2( int a, int b ){
2010-07-28 22:07:00 4311
原创 汇编与VC (c or c++)之间的嵌套调用
<br /><br />第一:VC写Dll 供asm调用<br />Dll:<br />BOOL APIENTRY DllMain( HANDLE hModule, DWORD ul_reason_for_call, <br /> LPVOID lpReserved)<br />{return TRUE;}<br />extern "C"int sortBuf(char* pBuf)<br />{…函数实现}<br />DEF:<br />EXPORTS<br
2010-07-28 21:52:00 795
原创 一劳永逸---循环移位操作
<br />不带进位循环(循环过程无CF参与 但CF接收移动位的副本)<br />rol左移<br />mov ax,900A ;ax = 1001 0000 0000 1010 cf = 0<br />rol ax,1 ;ax = 0010 0000 0001 0101 cf = 1<br /> <br />0BA3:0100 mov ax,900A<br />0BA3:0103 rol ax,1<br />0BA3:0105<br /> <br />ror右移<br />mov
2010-07-16 22:53:00 1386
原创 有符号数与无符号数相乘
<br />在32为电脑中<br />已知<br />有符号整数X<br />无符号整数Y 且 Y >= 0x80000000<br /><br /><br /><br />结论:<br /><br />注:s表示<br /><br />由此可得出如下汇编代码<br />假设X = 123h<br /> Y = 8765h<br /><br />mov ax,08765h<br />mov cx,0123h<br />imul cx
2010-07-15 20:19:00 7997
转载 汇编的进位与溢出
对于无符号数来说,不存在溢出的问题,它的进位就相当于有符号数中的溢出<br />而对有符号数来说,不存在进位的问题<br /><br />一个字节(8位) 的数有256个 (2的8次方)<br />一个字(16位) 的数有65536个 (2的16次方)<br /><br /><br />8个二进制位能够表达的无符号数范围是:0 ~ 255 <br />16位表达的无符号数范围是:0 ~ 65535 <br />对于无符号数来说,不存在溢出的问题,它的进位就相当于有符号数中的溢出. <br />进位表示最
2010-07-14 16:38:00 1708
原创 【16位汇编】neg+sbb算术运算代替逻辑跳转
举例代码如下 _asm { mov ax,1 sub ax,1 neg ax -->关键点 sbb ax,ax -->关键点 mov bx,4 lea bx,[bx-4*ax] //这句伪代码 }这句代码的关键点是neg 和sbb相关知识点neg(求补指令) NEG指令除了对操作数作符号取反外 会根据操作数来修改标志位CF当操作数为0是CF修改为0 否则CF修改为1sbb( 带借位减法指令) SBB reg,imm/reg/mem
2010-07-14 14:55:00 2851
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人