用DOS命令破除UNIX管理员口令
2006-07-04 20:27:52 来源:WEB开发网----0200H表示文件组ID为2;
----80020000H表示文件字节数为640个;
----DA0500H表示第一个数据块地址。由于其它12个数据块地址均为0,所以可断定根目录在硬盘上只占了一个数据块。现在我们必须依据DA0500H计算出这个数据块存放在硬盘的第几柱面、第几磁头、第几扇区。计算公式如下:
C=TRUNC(P/(H*S))
C1=C0+C
H1=TRUNC((P-C*H*S)/S)
S1=P-C*H*S-H1*S+1
----其中:
----C1、H1、S1分别为数据块物理地址柱面号、磁头号、扇区号
----P等于数据块地址翻译成十进制数后再乘以2
----H为硬盘磁头数
----S为每磁头扇区数
----C0为根文件系统起始柱面
----C只是一个中间量
----将DA0500H代入上述公式,并根据H=64,S=32,C0=2,可算出C1=3,H1=29,S1=21。因此根目录在硬盘上的物理地址为:3柱面29头21扇。
----用app把它读出来(CX和DX的赋值应分别改为"0315"和"1D80")。
----读出后用"dump"命令查看,可以发现偏移1050H至105FH是/etc目录的i-node号和文件名,其中i-node号为22H,即34D。因为每个扇区有8个i-node,所以34号
i-node必定在2柱面0头9扇。
----用app读出它(CX和DX的赋值分别改为"0209"和"0080")。
----用"dump"命令可看出偏移1040H至107FH正是/etc目录的i-node。我们把它的数据块也读出来。先计算第一个数据块的物理地址。将2D0700H代入公式,算出/etc第
一个数据块物理地址是3柱面50头27扇。
----用app读出它(CX和DX的赋值分别改为"031B"和"3280")。
----用"dump"命令可看出偏移11A0H至11AFH是/etc目录下的passwd文件名。我们用"enter"命令把它改成zls,然后再运行app(AX的赋值应改为0301)。
更多精彩
赞助商链接