I saw a tutorial about it once. I think you can find it easily too.
But anyway, the easiest way to do that in my opinion is to put at the block the platformer behavior, set it speed to be less than then player's speed, disable the default commands so the player can control the main char but the block itself, then anytime the player collides with the block you simulate the block to move the same direction as the player.
The collision will be more smooth if you create invisible objects around the box to be pushed for the player to collide with.
I don't know if I'm being clear enough, but give this a though and try and play a little, and if you still don't manage to do it come back here