Suppose you give me a protocol $\Pi$, then I will use it to construct a new protocol $\Pi'$:
$\Pi'$:
- Initially every party $P_i$ chooses a random string $r_i \gets \{0,1\}^\lambda$ and broadcasts it to all other parties.
- Then, the parties run the $\Pi$ protocol normally, with one exception:
If party $P_i$ ever receives a message of the form $(r_i,z)$ from party $P_j$, then $P_i$ will send all of its private inputs to $P_j$, and also immediately output $z$.
I will leave the following two observations as exercises for the curious reader:
If $\Pi$ is secure against semi-honest adversaries, then so is $\Pi'$. Hint: there is negligible probability that a semi-honest execution of $\Pi$ would include a protocol message of the form $(r_i,z)$.
In the presence of a malicious adversary, $\Pi'$ is maximally insecure (if there is such a thing). The adversary can learn every honest party's private input, and can force any honest party to output anything of the adversary's choice.
So, a protocol can be secure against semi-honest adversaries and totally insecure against malicious adversaries. This doesn't mean that every semi-honest protocol is insecure against malicious adversaries. But it shows that the definition of semi-honest security itself is not enough to give you any guarantees about what can happen in the presence of malicious adversaries.
I refer to protocols like $\Pi'$ as protocols with a "wings-fall-off button", after Gary Larson's Far Side cartoon: