1

わかりましたので、基本的には基本的なポートスキャナーを試して構築することにしました。ここに私のコードがあります:

(この上にもっとありますが、ここに貼り付けるには多すぎると感じました)

##Print port menu
print "-"*60
print "Specify ports"
print "-"*60
print """
1)Use default list
2)Specify your own port list\n"""
print"-"*60
menu2=raw_input("Please choose an option\n")
##Define default port list
default_list="21, 22,23, 24, 25, 80, 110, 135, 139, 443, 445, 553, 3306, 3389, 8080"

##Set port list to default if option "1" is chosen
if menu2 == "1":
    port_list='default_list'

##Request user port list if option "2" is chosen
if menu2 == "2":
    port_list=raw_input("Please enter the ports you would like scanned.\neg. 22, 23\n")

print "Ok, here we go"

for i in str(port_list):
    connection = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

    results = connection.connect_ex(ip + i)

私には問題ないように見えますが、実行すると「AF_INETアドレスはstrではなくタプルでなければなりません」というエラーが表示されます。どの部分が問題なのかわかりませんか? エラーをスローするのは私のデフォルトのポート文字列ですか?それとも私のIPアドレスのフォーマットに問題がありますか?? デバイスの IP アドレスをいくつか試してみましたが、常に同じエラーが発生します。

4

2 に答える 2