python黑帽子学习中的疑难-(一)取代netcat

1.在linux下可直接像运行.exe文件一样运行.py文件,方法是在.py文件的第一行加上下面的任意一行:
1. #!/usr/bin/python
#!/usr/bin/env python
二者的区别在于:
2. #!/usr/bin/python是告诉操作系统在调用脚本时调用/usr/bin目录下的python解释器,python解释器的路径被明确给出(在终端用whereis
python查看python解释器的路径)。
#!/usr/bin/env python是为了防止用户没有将python 装在默认的 /usr/bin 路径里。当系统看到这一行的时候,首先会到env设置里查找 python
的安装路径,再调用对应路径下的解释器程序完成操作。#!/usr/bin/env
python会去环境设置寻找python目录通常推荐第二种写法。
需要再次强调的是,上述解析路径应该放在 Python 脚本的第一行。
2.echo命令的功能是在显示器上显示一段文字,一般起到一个提示的作用。
该命令的一般格式为: echo [ -n ] 字符串
其中选项n表示输出文字后不换行;字符串能加引号,也能不加引号。用echo命令输出加引号的字符串时,将字符串原样输出;用echo命令输出不加引号的字符串时,将字符串中的各个单词作为字符串输出,各字符串之间用一个空格分割。
功能说明:显示文字。
语   法:echo [-ne][字符串]或 echo [–help][–version]
补充说明:echo会将输入的字符串送往标准输出。输出的字符串间以空白字符隔开, 并在最后加上换行号。
参   数:-n 不要在最后自动换行
-e字符串出现转义字符必须使用
echo -ne “GET / HTTP/1.1\r\nHost:www.baidu.com\r\n\r\n” | ./bhnet.py -t www.baidu.com -p 80 中echo后的字符串会被sys.stdin.read()接收
3.python服务器端socket绑定IP,别的地方只用绑定port
s.bind((‘0.0.0.0’, 9999))
我们要绑定监听的地址和端口。服务器可能有多块网卡,可以绑定到某一块网卡的IP地址上,也可以用0.0.0.0绑定到所有的网络地址,还可以用127.0.0.1绑定到本机地址。127.0.0.1是一个特殊的IP地址,表示本机地址,如果绑定到这个地址,客户端必须同时在本机运行才能连接,也就是说,外部的计算机无法连接进来。
服务器绑定IP地址,绑定的是本机使用的多个IP:
可以指定某一网卡的IP;0.0.0.0表示所有IP;127.0.0.1特殊IP,只限于本地范围的通信使用(客户端要想与之通信,发送的目标地址必须是该绑定IP)

你可能感兴趣的:(网络安全)