Назад | Перейти на главную страницу

как блокировать / перехватывать / редактировать весь сетевой трафик, идущий на одно подключенное по кабелю устройство и сервер

Мне нужно полностью заблокировать, перехватить и изменить все пакеты, проходящие между двумя устройствами. возможно, мне нужно изолировать одно устройство и заблокировать / перехватить / отредактировать ВСЕ трафик идет к нему и от него, если я не могу найти причину в пакетах между устройствами. редактировать- не могу вспомнить термин. Мне нужно быть человеком посередине между проблемным устройством и сервером.

Как это сделать? просто базовый план был бы хорош. несколько указателей того, с чего начать.

Мне нужно иметь возможность точно контролировать, что видит одна из машин, чтобы точно диагностировать проблему с подключением. два устройства представляют собой типичный сервер Windows, на котором работает наша программа PACS, и ультразвуковой аппарат. УЗИ-аппарат не может подключиться для загрузки изображений на сервер, потому что он продолжает отправлять серверу запросы на закрытие соединения. У меня есть еще один ультразвуковой аппарат той же марки, но другой модели, который подключается без проблем, и ни у одного другого радиологического аппарата нет такой проблемы.

У меня есть wirehark, запущенный на сервере, и я могу получить к нему доступ администратора, именно так я диагностировал, что это ультразвуковой аппарат, внезапно отправляющий запрос на закрытие соединения. Ультразвуковой аппарат, который у меня почти не контролируется и функционально является черным ящиком, заблокированным GE в своего рода режиме киоска, и у нас нет с ними контракта на поддержку. Я могу изменить, куда ультразвуковой аппарат отправляет изображения, настройки IP и количество других полей, но я ограничен графическим интерфейсом пользователя Kiosked.

Из того, что я могу сказать, соединение между ними работает нормально, пока ультразвуковой аппарат внезапно не отправит запрос на закрытие DICOM-соединения сразу после получения dicom ACK от сервера. наш поставщик PACS предположил, что, возможно, это что-то в их пакете подтверждения DICOM вызывает ошибку ультразвукового аппарата, поэтому я хотел бы перехватить и отредактировать сообщения.

Если бы я мог сделать все это через wirehark, это было бы здорово. Если это не сработает, мне просто нужно будет научиться обнюхивать пакеты на ультразвуковом аппарате и каким-то образом перехватывать весь его трафик.

доступные ресурсы

для получения дополнительной информации для тех из вас, у кого нет опыта работы с «медицинскими приборами». Ультразвуковые аппараты чрезвычайно заблокированы. У меня есть права администратора в графическом интерфейсе Kiosked, но нет доступа к ОС.

отредактировал, сделал очень простую модель сети

проблемное устройство <------> сетевая розетка <-------> радиологическая подсеть <---> настенная розетка <----> радиологический сервер

сервер радиологии работает под управлением WireShark

в личной заметке это 4-й метастак, в который я отправил этот вопрос. все остальные заявили, что это выходит за рамки, не по теме, нарушает правила публикации или нарушает ограничения на рекомендации по программному / аппаратному обеспечению. стек рекомендаций по программному обеспечению затем сказал, что стек был «для рекомендации программного обеспечения, а не активов или ресурсов, таких как инструкции, руководства / учебные пособия, фрагменты кода и т. д.», я даже разместил его в сетевой инженерии после того, как меня направили туда путем переполнения стека, думая: «да, они определенно знал бы, как это сделать ". нет, не могу рекомендовать вещи. если мне нужно изменить этот вопрос, я просто скажу мне, что мне нужно изменить, чтобы он работал

раздел, который я хочу изменить, находится в DICOM, A-ASSOCIATE принимает элемент VIVIDS70-200360 <- DICOMSTORAGESCP, особенно разделы контекста презентации

    Frame 7: 372 bytes on wire (2976 bits), 372 bytes captured (2976 bits) on interface \Device\NPF_{95DCA5B3-EB26-4EA8-A80B-38B3AC886B9E}, id 0
    Interface id: 0 (\Device\NPF_{95DCA5B3-EB26-4EA8-A80B-38B3AC886B9E})
        Interface name: \Device\NPF_{95DCA5B3-EB26-4EA8-A80B-38B3AC886B9E}
    Encapsulation type: Ethernet (1)
    Arrival Time: Dec 16, 2019 12:42:47.470112000 Mountain Standard Time
    [Time shift for this packet: 0.000000000 seconds]
    Epoch Time: 1576525367.470112000 seconds
    [Time delta from previous captured frame: 0.007570000 seconds]
    [Time delta from previous displayed frame: 0.007570000 seconds]
    [Time since reference or first frame: 0.309372000 seconds]
    Frame Number: 7
    Frame Length: 372 bytes (2976 bits)
    Capture Length: 372 bytes (2976 bits)
    [Frame is marked: False]
    [Frame is ignored: False]
    [Protocols in frame: eth:ethertype:ip:tcp:dicom]
    [Coloring Rule Name: TCP]
    [Coloring Rule String: tcp]
Ethernet II, Src: Dell_dc:33:54 (b8:2a:72:dc:33:54), Dst: All-HSRP-routers_50 (00:00:0c:07:ac:50)
    Destination: All-HSRP-routers_50 (00:00:0c:07:ac:50)
        Address: All-HSRP-routers_50 (00:00:0c:07:ac:50)
        .... ..0. .... .... .... .... = LG bit: Globally unique address (factory default)
        .... ...0 .... .... .... .... = IG bit: Individual address (unicast)
    Source: Dell_dc:33:54 (b8:2a:72:dc:33:54)
        Address: Dell_dc:33:54 (b8:2a:72:dc:33:54)
        .... ..0. .... .... .... .... = LG bit: Globally unique address (factory default)
        .... ...0 .... .... .... .... = IG bit: Individual address (unicast)
    Type: IPv4 (0x0800)
Internet Protocol Version 4, Src: 10.101.50.7, Dst: 10.250.120.61
    0100 .... = Version: 4
    .... 0101 = Header Length: 20 bytes (5)
    Differentiated Services Field: 0x00 (DSCP: CS0, ECN: Not-ECT)
        0000 00.. = Differentiated Services Codepoint: Default (0)
        .... ..00 = Explicit Congestion Notification: Not ECN-Capable Transport (0)
    Total Length: 358
    Identification: 0x4a86 (19078)
    Flags: 0x4000, Don't fragment
        0... .... .... .... = Reserved bit: Not set
        .1.. .... .... .... = Don't fragment: Set
        ..0. .... .... .... = More fragments: Not set
    ...0 0000 0000 0000 = Fragment offset: 0
    Time to live: 128
    Protocol: TCP (6)
    Header checksum: 0x0000 [validation disabled]
    [Header checksum status: Unverified]
    Source: 10.101.50.7
    Destination: 10.250.120.61
Transmission Control Protocol, Src Port: 104, Dst Port: 49268, Seq: 1, Ack: 471, Len: 318
    Source Port: 104
    Destination Port: 49268
    [Stream index: 0]
    [TCP Segment Len: 318]
    Sequence number: 1    (relative sequence number)
    Sequence number (raw): 3548356980
    [Next sequence number: 319    (relative sequence number)]
    Acknowledgment number: 471    (relative ack number)
    Acknowledgment number (raw): 2364032816
    0101 .... = Header Length: 20 bytes (5)
    Flags: 0x018 (PSH, ACK)
        000. .... .... = Reserved: Not set
        ...0 .... .... = Nonce: Not set
        .... 0... .... = Congestion Window Reduced (CWR): Not set
        .... .0.. .... = ECN-Echo: Not set
        .... ..0. .... = Urgent: Not set
        .... ...1 .... = Acknowledgment: Set
        .... .... 1... = Push: Set
        .... .... .0.. = Reset: Not set
        .... .... ..0. = Syn: Not set
        .... .... ...0 = Fin: Not set
        [TCP Flags: ·······AP···]
    Window size value: 512
    [Calculated window size: 131072]
    [Window size scaling factor: 256]
    Checksum: 0xc0fb [unverified]
    [Checksum Status: Unverified]
    Urgent pointer: 0
    [SEQ/ACK analysis]
        [iRTT: 0.000194000 seconds]
        [Bytes in flight: 318]
        [Bytes sent since last PSH flag: 318]
    [Timestamps]
        [Time since first frame in this TCP stream: 0.309372000 seconds]
        [Time since previous frame in this TCP stream: 0.007570000 seconds]
    TCP payload (318 bytes)
DICOM, A-ASSOCIATE accept  VIVIDS70-200360 <-- DICOMSTORAGESCP
    PDU Type: ASSOC Accept (0x02)
    PDU Length: 312
    A-ASSOCIATE accept  VIVIDS70-200360 <-- DICOMSTORAGESCP
        Protocol Version: 1
        Called  AE Title: DICOMSTORAGESCP 
        Calling AE Title: VIVIDS70-200360 
        Application Context: DICOM Application Context Name (1.2.840.10008.3.1.1.1)
            Item Type: Application Context (0x10)
            Item Length: 21
            Application Context: DICOM Application Context Name (1.2.840.10008.3.1.1.1)
        Presentation Context: ID 0x01, Accept, JPEG Baseline (Process 1): Default Transfer Syntax for Lossy JPEG 8 Bit Image Compression, Secondary Capture Image Storage
            Item Type: Presentation Context Reply (0x21)
            Item Length: 30
            Context ID: 0x01
            Result: Accept (0x0)
            Transfer Syntax: JPEG Baseline (Process 1): Default Transfer Syntax for Lossy JPEG 8 Bit Image Compression (1.2.840.10008.1.2.4.50)
                Item Type: Transfer Syntax (0x40)
                Item Length: 22
                Transfer Syntax: JPEG Baseline (Process 1): Default Transfer Syntax for Lossy JPEG 8 Bit Image Compression (1.2.840.10008.1.2.4.50)
        Presentation Context: ID 0x03, Accept, JPEG Baseline (Process 1): Default Transfer Syntax for Lossy JPEG 8 Bit Image Compression, Ultrasound Image Storage
            Item Type: Presentation Context Reply (0x21)
            Item Length: 30
            Context ID: 0x03
            Result: Accept (0x0)
            Transfer Syntax: JPEG Baseline (Process 1): Default Transfer Syntax for Lossy JPEG 8 Bit Image Compression (1.2.840.10008.1.2.4.50)
                Item Type: Transfer Syntax (0x40)
                Item Length: 22
                Transfer Syntax: JPEG Baseline (Process 1): Default Transfer Syntax for Lossy JPEG 8 Bit Image Compression (1.2.840.10008.1.2.4.50)
        Presentation Context: ID 0x05, Accept, JPEG Baseline (Process 1): Default Transfer Syntax for Lossy JPEG 8 Bit Image Compression, Ultrasound Multi-frame Image Storage
            Item Type: Presentation Context Reply (0x21)
            Item Length: 30
            Context ID: 0x05
            Result: Accept (0x0)
            Transfer Syntax: JPEG Baseline (Process 1): Default Transfer Syntax for Lossy JPEG 8 Bit Image Compression (1.2.840.10008.1.2.4.50)
                Item Type: Transfer Syntax (0x40)
                Item Length: 22
                Transfer Syntax: JPEG Baseline (Process 1): Default Transfer Syntax for Lossy JPEG 8 Bit Image Compression (1.2.840.10008.1.2.4.50)
        Presentation Context: ID 0x07, Accept, JPEG Baseline (Process 1): Default Transfer Syntax for Lossy JPEG 8 Bit Image Compression, Ultrasound Image Storage (Retired)
            Item Type: Presentation Context Reply (0x21)
            Item Length: 30
            Context ID: 0x07
            Result: Accept (0x0)
            Transfer Syntax: JPEG Baseline (Process 1): Default Transfer Syntax for Lossy JPEG 8 Bit Image Compression (1.2.840.10008.1.2.4.50)
                Item Type: Transfer Syntax (0x40)
                Item Length: 22
                Transfer Syntax: JPEG Baseline (Process 1): Default Transfer Syntax for Lossy JPEG 8 Bit Image Compression (1.2.840.10008.1.2.4.50)
        Presentation Context: ID 0x09, Accept, JPEG Baseline (Process 1): Default Transfer Syntax for Lossy JPEG 8 Bit Image Compression, Ultrasound Multi-frame Image Storage (Retired)
            Item Type: Presentation Context Reply (0x21)
            Item Length: 30
            Context ID: 0x09
            Result: Accept (0x0)
            Transfer Syntax: JPEG Baseline (Process 1): Default Transfer Syntax for Lossy JPEG 8 Bit Image Compression (1.2.840.10008.1.2.4.50)
                Item Type: Transfer Syntax (0x40)
                Item Length: 22
                Transfer Syntax: JPEG Baseline (Process 1): Default Transfer Syntax for Lossy JPEG 8 Bit Image Compression (1.2.840.10008.1.2.4.50)
        User Info: Max PDU Length 131072, Implementation UID 1.2.840.114051.6.0, Version NovaRad 6.0
            Item Type: User Info (0x50)
            Item Length: 45
            Max PDU Length: 131072
                Item Type: Max Length (0x51)
                Item Length: 4
                Max PDU Length: 131072
            Implementation UID: 1.2.840.114051.6.0
                Item Type: Implementation Class UID (0x52)
                Item Length: 18
                Implementation Class UID: 1.2.840.114051.6.0
            Implementation Version: NovaRad 6.0
                Item Type: Implementation Version (0x55)
                Item Length: 11
                Implementation Version: NovaRad 6.0

Вы можете подделать arp и заставить машину отправлять данные на ваше устройство вместо предполагаемого места назначения и записывать все данные в pcap.

Затем вы можете переписать pcap так, как хотите, и повторно передать его с помощью tcpreplay.

Я не уверен, как работают ультразвуковые аппараты и почему они даже объединены в сеть, но таким образом вы сможете пропустить плохой пакет.

Чтобы получить более быстрое решение, рассмотрите возможность использования proxyshark или netsed. Трудно сказать, не увидев pcap, что именно нужно изменить.