The \d+ is uneccesary in this line if you are just trying to skip numbers that contains zeroes. /0/ is adequate and infact, this regex misses numbers that end in zero such as 1120, 1130, etc.
next if $n =~ /0\d+/;
The logic on this line is backwards, it should last if the result of % is non-zero, that way you will not have to check through all the number combinations if the first div fails.
$count++ if $num % $divider == 0;
Finally, if you are looking for the highest common divisor, you should turn this loop around and start with 9, I would also move it inside the foreach (qw(01 02 13 23)) and do a last if you find a valid divisor for all 4 numbers again stopping you from checking too many combinations.
foreach my $divider (2..9)