TGViewer
Android Guards Android Guards @android_guards_today · 3.86K subscribers
Post #242 3.83K
Умение обходить фильтры - очень важный навык. Обычно он складывается из двух компонентов: развитого аналитического мышления и знания трюков. Сегодня будут трюки. Представим себе такой синтетический фильтр:
val input = "http://evil.com"

val filter = """^(https?)://.*@?evil\..+""".toRegex()

if (filter.matches(input)) {
throw MalformedURLException("Banned URL!")
}

val okhttp = OkHttpClient()
val req = Request.Builder().url(URL(input)).build()


Есть мысли как его обойти? Подумайте 30 секунд.

Один из способов - модифицировать input любым из этих способов:
- url:http://evil.com
- http://evil.com (первый символ - пробел)

Но проверка по черному списку встречается все реже. Кажется, что разработчики начинают что-то подозревать 😰
#aht
  • 👍 13
  • 👎 1
  • 😱 1
More from @android_guards_today
  1. Aug 25, 2026Сегодня исполнилось 35 лет ядру Linux. Ну "исполнилось и исполнилось, чего бухтеть то?", к…
  2. Jul 29, 2026Написал небольшую заметку про один не слишком очевидный способ выполнения кода до фактичес…
  3. Jun 8, 2026Собрал тут себе игрушку для решения разных интересных задач. Может и вам пригодится 🌚 Дем…
  4. May 30, 2026Идёт шумная деревенская свадьба. Под утро пьяный вдрызг тамада, громко спрашивает: — Кто е…
  5. May 25, 2026В дополнение к предыдущему посту. Если вы получаете инвайт от бота и видите, ошибку, что с…
  6. May 24, 2026Вот и настал момент перевернуть еще одну страницу в жизни этого замечательного сообщества.…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →