UNIX入侵(二)

/ns/hk/hacker/data/20010113063840.htm

UNIX入侵(第二章)

  1.UNIX Shell:

    命令解释程序Shell处在内核(Kernel)与外层软件之间,具有非常重要的
地位及作用,Shell的作用是逐条的解释用户输入的命令,并给出回答及提示,它用
于协调用户及系统的一致性,在用户及系统中进行交互。
当用户进入系统,就开始和Shell命令解释程序的主控程序进行通信,每引用一次解
释程序就调用一个Shell,读入并执行用户键入的指令。Shell还包括一些后台处理、
输入输出改向、管道、过滤程序和文件名生成等功能。

     Shell中提供了与程序设计语言C、Java等类似的控制结构,可以方便的数
据和文件执行一组命令或根据执行的条件而选择不同的命令来执行。
    
    1#Shell变量赋值:
    Shell的变量可以是数值也可以是字符串:
    num=1
str="hello world"
当你要使用这些变量的时候需要在变量前加上"$"符号,下边我们来输出变
量num:
echo $num
将会在屏幕上输出"1"

2#与用户交互:
Shell程序允许和用户进行交互,也就是可以接收用户键盘的输入,我用一
个简单的Java程序例子和Shell的接受用户输入做一个比较:
-----------Java Input-------------
import java.io.*;
class UserName{
public static void main(String args[]){
DataInputStream DIS=null;
String str="";
System.out.println("What's your name?");
try{
DIS=new DataInputStream(System.in);
try{
str=DIS.readLine();
System.out.println("Hello "+str);
}catch(Exception e){
System.out.println(e);
System.exit(1);
}
}catch(IOException e){
System.out.println(e);
System.exit(1);
}

}
}
//程序的运行结果:
程序输出:"What's your name?"
等待用户输入:lovehacker[enter]
程序输出:Hello lovehacker
程序结束
--------------cut here----------------

---------Input.sh---------------------
#!/bin/sh
echo What's your name?
read yourname
echo Hello $yourname
----------cut here--------------------
多么简单?

3#case结构:
Shell的case结构有几个重点需要注意:
1.case语句开始的表示方法是:case 变量 in
2.每一个开关需要使用";;"来结束:k) killall -HUP httpd
3.需要用esac来结束case语句。

---------AuthHacker.sh----------------
#!/bin/sh
#程序将严正用户名,如果是lovehacker输出欢迎词并输出/etc/passwd,如
果不是输出who are you?并退出
echo "Please Input your name"
echo "name":
read name
case $name in
lovehacker) echo "Welcome lovehacker";
more /etc/passwd;;
*) echo "who are you?";
exit;;
esac
-------------cut here-----------------

哎,我讲的是入侵教学呀,怎么快被我搞成了编程教学了,呵呵!耐心的等
待,一会儿就会进入正题的,我只是希望你多学点东西而已

4#for循环:
在Shell中使用for循环可以按指定的次数执行一组指令,它的基本格式如下

for var in word1 word2 word3 wordn
do
command
command
...
done
do和done中的命令为循环体,执行它们的次数由关键字"in"后边的单词来决
定的。
看一个比较简单的列子
--------------for.sh-------------------
for name in lovehacker bigshrimp jonak jack shellbash ...
do
echo $name
echo $name >>cnsl.txt
    done
---------------cut here----------------

  好啦,好啦!估计你们也看烦了,那就结束这章吧,编程需要自己多动手,好在
Shell编程很简单,你可以多找些好的例子看看,以后可以写自己的Exploits了。下
一章我们开始进入正题Hacking Unix System。

如果你对Shell编程有兴趣的话,可以到以下链接,系统的学习一下: http://xyqdy.533.net/shell.html (shell编程) http://www.cniti.com/%7Etwoboy/unix/unix_shell/shell1.html (介绍shell编程)

Author:lovehacker
Mail:lovehacker@263.net
Homepage: http://www.chinansl.com
     http://www.cn-nsl.com
Create Date000/12/27
允许转载,但须保证文章的完整性,如要在带有商业色彩的报刊杂志及其它地方发
表,请先征得作者同意!