Answer :

to solve this, first you need to jump back the clock. so 18 minus 12 is 6. scince at that time joseph was 4 times older, 6 times 4 is 24. add that to 12 and you get 36. but we need to check our work. if 36 minus 18 isint 18 then we screwed up. but, we didnt. so now, Kara is 18 years old and Joseph is 36 years  old.
Let us call X Kara's age and Y Joseph's.
We know that 
X=Y-18
Y-12=4(X-12)

We can deduce from the second that
Y-12=4X-48 
Y=4X-36

So if you replace Y in the first equation you get:
X=(4X-36)-18
X=4X-54
3X=54
X=18

so we can deduce that 18=Y-18 which means that Y=36

Kara is 18
Joseph is 36