How are the custom fields saved? If you use ACF – Advanced custom fields, you can use get_field() function to get the variables.
This should get you started. You can use another action hook or priority if you want the table to be displayed somewhere else.
function display_product_table(){
global $product;
?>
<table class="shop_attributes">
<tr>
<th><?php _e( 'Brand', 'woocommerce' ) ?></th>
<?php // example if you use acf - advanced custom fields?>
<td class="product_brand"><?php //echo get_field('brand'); ?></td>
</tr>
<?php if ( $product->has_weight() ) : ?>
<tr>
<th><?php _e( 'Weight', 'woocommerce' ) ?></th>
<td class="product_weight"><?php echo esc_html( wc_format_weight( $product->get_weight() ) ); ?></td>
</tr>
<?php endif; ?>
<?php if ( $product->has_dimensions() ) : ?>
<tr>
<th><?php _e( 'Dimensions', 'woocommerce' ) ?></th>
<td class="product_dimensions"><?php echo esc_html( wc_format_dimensions( $product->get_dimensions( false ) ) ); ?></td>
</tr>
<?php endif; ?>
</table>
<?php
}
add_action( 'woocommerce_single_product_summary', 'display_product_table', 45);