выдергивание части строки из текста

Discussion in 'Песочница' started by traceme, 14 Jul 2015.

  1. traceme

    traceme Member

    Joined:
    11 Jun 2015
    Messages:
    34
    Likes Received:
    11
    Reputations:
    1
    Есть список баннеров при сканировании ssh серверов через масскан
    Подскажите рецепт, чтобы средствами bash оставить только список ip столбиком при условии что оставить надо только те адреса, которые имеюt определенную версию ssh
     
    ovruchanen likes this.
  2. yarbabin

    yarbabin HACKIN YO KUT

    Joined:
    21 Nov 2007
    Messages:
    1,664
    Likes Received:
    913
    Reputations:
    363
    формат списка бы привели
     
    _________________________
  3. traceme

    traceme Member

    Joined:
    11 Jun 2015
    Messages:
    34
    Likes Received:
    11
    Reputations:
    1
    Например вывод в формате json

    { "ip": "xxx.xxx.xxx.xxx", "ports": [ {"port": 21, "proto": "tcp", "status": "open", "reason": "syn-ack", "ttl": 59} ] },
    { "ip": "xxx.xxx.xxx.xxx", "ports": [ {"port": 21, "proto": "tcp", "status": "open", "reason": "syn-ack", "ttl": 59} ] },
    { "ip": "xxx.xxx.xxx.xxx", "ports": [ {"port": 21, "proto": "tcp", "status": "open", "reason": "syn-ack", "ttl": 59} ] },
    { "ip": "xxx.xxx.xxx.xxx", "ports": [ {"port": 21, "proto": "tcp", "status": "open", "reason": "syn-ack", "ttl": 59} ] },
    { "ip": "xxx.xxx.xxx.xxx", "ports": [ {"port": 21, "proto": "tcp", "service": {"name": "ftp", "banner": "220 (vsFTPd 2.3.2)\u000a530 Please login with USER and PASS."} } ] },
    { "ip": "xxx.xxx.xxx.xxx", "ports": [ {"port": 21, "proto": "tcp", "service": {"name": "ftp", "banner": "220 (vsFTPd 2.3.2)\u000a530 Please login with USER and PASS."} } ] },
    { "ip": "xxx.xxx.xxx.xxx", "ports": [ {"port": 21, "proto": "tcp", "service": {"name": "ftp", "banner": "220 FTP Server ready.\u000a500 AUTH not understood"} } ] },
    { "ip": "xxx.xxx.xxx.xxx", "ports": [ {"port": 21, "proto": "tcp", "service": {"name": "ftp", "banner": "220 FTP Server ready.\u000a500 AUTH "} } ] },
    { "ip": "xxx.xxx.xxx.xxx", "ports": [ {"port": 21, "proto": "tcp", "service": {"name": "ftp", "banner": "220 ProFTPD 1.3.3a Server (Debian) [::ffff:xxx.xxx.xxx.xxx]\u000a500 AUTH not understood"} } ] },



    Необходимо получить список адресов где баннер содержит "220 (vsFTPd 2.3.2)"
     
  4. b3

    b3 Moderator

    Joined:
    5 Dec 2004
    Messages:
    2,041
    Likes Received:
    933
    Reputations:
    199
    Вот так
     
    _________________________
    yarbabin and traceme like this.
  5. traceme

    traceme Member

    Joined:
    11 Jun 2015
    Messages:
    34
    Likes Received:
    11
    Reputations:
    1
    Спасибо)
     
  6. traceme

    traceme Member

    Joined:
    11 Jun 2015
    Messages:
    34
    Likes Received:
    11
    Reputations:
    1
    Не хочется создавать под каждый вопрос тему, спрошу тут:cool:

    В баш скрипте необходимо получать ввод пользователя, а именно диапазона адресов
    Банальный пример
    Code:
    #!/bin/bash
    echo "Enter ip range for scan ex.10.0.0.0/8"
    read range
    Подскажите как применить маску для ввода и выдавать ошибку при некорректном вводе диапазона
     
  7. b3

    b3 Moderator

    Joined:
    5 Dec 2004
    Messages:
    2,041
    Likes Received:
    933
    Reputations:
    199
    _________________________