Ищу решение непонятной проблемы. По соображениям политики безопасности у нас есть рабочая станция, использующая PeerBlock со списком блокировки, который, по сути, помещает в черный список весь Интернет, а затем список разрешений для нескольких IP-адресов, которые мы считаем приемлемыми.
Эта конкретная рабочая станция имеет единое программное обеспечение, которое поддерживается внешней компанией, и их предпочтительным инструментом удаленной поддержки является Teamviewer. У нас было много «дискуссий» об использовании альтернативного пакета, и достаточно сказать, что они не сдвинутся с места, и я не в силах это изменить. Итак, теперь мне нужно найти способ внести teamviewer в белый список.
Согласно Teamviewer KB:
... мы не можем предоставить список IP-адресов наших серверов. Однако все наши IP-адреса имеют записи PTR, которые разрешаются в * .teamviewer.com.
Итак, теперь мне интересно, могу ли я использовать записи PTR, чтобы каким-то образом очистить и вытащить все используемые поддомены вместе с их связанными IP-адресами.
У меня есть рабочая станция с Windows и Ubuntu для периодического выполнения этой задачи, поэтому я предпочитаю использовать сценарии PowerShell или оболочки.
Есть ли способ добиться того, что я пытаюсь сделать? Я смотрел на dig
, но я не могу понять это.
Я не думаю, что вы действительно хотите делать полный обратный поиск по межсетям, поэтому, если возможно, взгляните на оболочки tcp.
Один из возможных путей, на который вы можете обратить внимание, зависит от поставщика, имеющего формальное назначение блока IP от ARIN или соответствующего реестра IP для их географического местоположения. Неформальное назначение IP-адресов от их интернет-провайдера также может работать, но будет немного сложнее найти границы блока, неофициально назначенного интернет-провайдером. Как только такой диапазон IP-адресов известен, вы можете ограничить парсинг обратного поиска этим блоком IP-адресов.
Учитывая, что они не сообщают вам свои IP-адреса, я могу придумать один из способов - создать образец сеанса TeamViewer и проверить входящий и исходящий сетевой трафик на целевой машине. Это даст вам, вероятно, только один IP-адрес, который может использовать TeamViewer. Вы можете выполнить поиск whois по этому IP-адресу, чтобы узнать, является ли он частью большего блока, а затем ограничить парсинг PTR этим сетевым блоком.
ИМО, это все еще не лучшее решение. Это, конечно, не очень весело, и, что еще хуже, это хрупко. Во-первых, нет гарантии, что найденный вами сетевой блок IP - единственный, который они используют. Кроме того, если TeamViewer изменяет IP-адреса на своих серверах, ВАШ материал, вероятно, сломается, поэтому вы находитесь в их власти в том смысле, что изменение, которое они могут внести в любое время, о котором они не обязаны уведомлять вас, может вызвать ваша конфигурация выйдет из строя без предварительного уведомления.
Как говорит @Jramdom, лучше найти решение, подобное оболочке tcp, которое будет выполнять обратный поиск за вас. Это будет иметь несколько преимуществ. Во-первых, ваша система должна будет искать только один IP-адрес за раз, и этот поиск не будет выполняться, пока он не понадобится. Это дает второе преимущество, заключающееся в том, что при обратном поиске всегда будут использоваться данные из самой последней информации DNS, опубликованной TeamViewer, а не из прогона парсинга, который может длиться много месяцев. Оболочка TCP будет искать PTR-запись в момент соединения и проверять, соответствует ли она * .teamviewer.com. Это делает вашу настройку более устойчивой к изменениям, которые может внести TeamViewer, при условии, что они обновляют свой обратный DNS всякий раз, когда меняют IP-адреса серверов.