Хорошо, так что я хочу создать фоновый агент, который отслеживает трафик http в/из определенного приложения и выполняет действия, когда есть запросы и ответы на определенный сайт. Есть ли хороший способ сделать это в какао? Я бы хотел избежать использования на самом деле низкоуровневого нюхания и/или потребовать доступа root для этого (доступ администратора - это нормально).Как перехватить HTTP-трафик в приложении Cocoa?
ответ
Если приложение, которое вы пытаетесь контролировать, поддерживает прокси-серверы, вы можете написать его и использовать в своем приложении. Вероятно, это самое простое решение.
Если это не работает, вы можете использовать что-то вроде mach_inject
и mach_override
перезаписать некоторые системные вызовы сокета (socket
и write
, вероятно, являются достаточно) в программе вы собираетесь контролировать. Это что-то вроде темного искусства, так что вам, вероятно, лучше использовать пакетный сниффер, например tcpdump
, и управлять этим использованием трубы.
Для всего этого необходимы права администратора (которые почти совпадают с правами root), за исключением прокси-решения.
Вот tcpdump и это библиотека Libpcap:
http://www.tcpdump.org/tcpdump_man.html
и
http://www.tcpdump.org/pcap3_man.html
Там в учебник здесь:
http://www.tcpdump.org/pcap.htm
Как и Свен, вам понадобятся привилегии администратора, чтобы сделать что-нибудь захватывающее.
- 1. fork в приложении Cocoa
- 2. Захват событий клавиатуры в приложении Cocoa WebView
- 3. Перехватить Thead в веб-приложении
- 4. Как перехватить исключение NotImplementedException в приложении WPF?
- 5. Cocoa - получение привилегий в приложении
- 6. Отладка исключения в приложении Cocoa
- 7. Использование Cairo в приложении Cocoa
- 8. Использование MongoDB в приложении Cocoa
- 9. Шифровать ресурсы в приложении Cocoa?
- 10. Как отобразить список файлов в приложении Cocoa?
- 11. Как реализовать окно сообщения в приложении Cocoa?
- 12. Как показать чат-поток в приложении Cocoa?
- 13. Как скрыть панель меню в приложении Cocoa?
- 14. Как создать контроллер в приложении Cocoa MVC?
- 15. Как отключить Views в приложении Cocoa?
- 16. Где разместить «Core Data Stack» в приложении Cocoa/Cocoa Touch
- 17. Где делегат приложения зарегистрирован в нашем приложении Cocoa/Cocoa-touch
- 18. Swift: как перехватить сетевые запросы, сделанные в браузере в приложении?
- 19. Воспроизвести видео на приложении Cocoa
- 20. Ссылка на библиотеку boost в приложении Cocoa
- 21. Возможно использование рамки iPhoneSimulators в приложении Cocoa?
- 22. Информация о iPhone/iTouch в приложении Cocoa?
- 23. Текст форматирования текста в приложении Cocoa
- 24. Использовать определенную локализацию в приложении Cocoa
- 25. Обработка **** OSType в приложении NSQocument Cocoa
- 26. Доступ к контроллеру в приложении Cocoa
- 27. Как перехватить все вызовы контроллера в приложении MVC?
- 28. Как я могу «перехватить» Ctrl + C в приложении CLI?
- 29. Как перехватить вызов API OS X в приложении
Мне нужно отслеживать входящий исходящий HTTP/https запрос. будет ли это делать? Я делаю свой проект на obj-c какао –