Игорь Обухов родился в Санкт-Петербурге.
С семи лет занимался в школе «Московская застава», откуда в 2006 году перешёл в «Смену» к тренеру Сергею Чижевскому. Перед сезоном 2012/13 был заявлен за «Зенит» под 83 номером, однако за основную команду питерцев так и не сыграл. Дебютировал через год в молодёжке сине-бело-голубых, где так же провёл два матча в Юношеской лиге УЕФА. В дальнейшем преимущественно выступал за «Зенит-2», с которым вышел в ФНЛ.
Проведя в сезоне 2016-2017 11 матчей за «Зенит-М», перешёл на правах аренды в «Тюмень», за которую отыграл два последующих года. В январе 2018 был отдан в аренду до конца сезона в клуб премьер-лиги «Арсенал» Тула, за который провёл 1 матч.
Сезон 2018-2019 вновь провёл в «Тюмени» на правах аренды.
27 мая 2017 дебютировал в молодёжной сборной в товарищеской игре против Узбекистана (4:3) — был заменён после перерыва при счёте 3:0. В марте 2018 провёл два матча в отборочном турнире к молодёжному чемпионату Европы 2019.