I have no idea why it's not in it - rules were added back in the Outlook 2000 time frame and haven't really changed much since, save for adding more conditions and actions. They haven't edited any existing conditions.
I'm not sure if a run a script rule would be efficient but there is at least one rules replacement utility that might work -
auto-mate.
Can't pass up an interesting macro idea.

This worked for me in a simple test. If all words in the array are anywhere in the body, it popped up the dialog box. If one word was missing, it did not.
If you have a specific condition in addition to the words in the body, look for that in the rule - if there are no other conditions, put one of the words in the rule, so the script processes fewer messages.
The only actions should be in this script.
More info:
http://www.slipstick.com/outlook/rules/outlooks-rules-and-alerts-run-a-script/
Code:
Sub CheckForAll(Item As Outlook.MailItem)
Dim strID As String
Dim strTest As String
Dim arr As Variant
Dim objMail As Outlook.MailItem
strID = Item.EntryID
Set objMail = Application.Session.GetItemFromID(strID)
' Set up the array
arr = Array("outlook", "work", "key3")
' Go through the array and look for a match, then do something
For i = LBound(arr) To UBound(arr)
If InStr(1, LCase(objMail.Body), arr(i)) = 0 Then
Exit Sub
End If
Next i
' do whatever
MsgBox "All Match"
Set objMail = Nothing
End Sub