汇编-寄存器及主要指令

寄存器

可以分为四类:

  • 数据寄存器

    • EAX(Accumulator)

      • 可用于乘除,输入输出等操作,他们的使用频率很高。EAX还通常用于存储函数的返回值。
    • EBX(Base Register)

      • 作为存储器指针来使用,用来访问存储器。
    • ECX (Count Register)

      • 在循环和字符串操作时,用来控制循环次数;在移多位时,要用CL来指明移位的位数。
    • EDX (Data Register)

      • 在进行乘除运算时,作为默认操作数参与运算,也可用于存放I/O的端口地址。

基本信息收集

  • Linux

    • 查看信息 操作 备注
      DNS配置 /etc/resolv.conf 是否有机会DNS篡改,劫持
      用户账号 /etc/passwd
      用户密码 /etc/shadow
      当前用户 whoami
      所有登陆用户 who -a
      网卡信息 ifconfig -a
      防火墙设置 iptables -L -n
      路由表 netstat -rn
      操作系统信息 uname -a
      当前运行的进程 ps aux
      安装的软件包 dpkg -l

Windows身份认证过程

  • 开机加载操作系统内核,windows启动之后,进入ntlogon.exe,即输入用户名和密码的界面。
  • 当点击确定后,ntlogon.exe调用lsass.exe(Local Security Assistant)的LsaLogonUser API,该API 调用MSV_1_0身份验证程序包,MSV 身份验证包将用户记录存储在 SAM 数据库(C:\Windows\System32\config)中。

缓冲区溢出

  • 当缓冲区边界限制不严格时,由于变量传入畸形数据或程序运行错误,导致缓冲区被“撑爆”,从而覆盖了相邻内存区域的数据
  • 成功修改内存数据,可造成进程劫持,执行恶意代码,获取服务器控制权等后果