<?php

function imnobby_redirect_attachment_page() {
 if ( is_attachment() ) {
 global $post;
 if ( $post && $post->post_parent ) {
 wp_redirect( esc_url( get_permalink( $post->post_parent ) ), 301 );
 exit;
 } else {
 wp_redirect( esc_url( home_url( '/' ) ), 301 );
 exit;
 }
 }
}
add_action( 'template_redirect', 'imnobby_redirect_attachment_page' );