Ghost objects are intangible objects. They do collide with other objects, but they won’t create any collision response (forces etc.) from such collisions. Ghost objects keep track of all objects they collide with, and it is possible to query them for all objects they currently overlap with.
Ghost objects therefore can be used to implement a sensor, which detects the presence of any (or a particular) object within the sensor’s shape. For example an automatic door which should open if the player is in front of the door, or an area which triggers some event if the player moves through the area.