Rough hard plastic or similar materials with slightly irregular surface textures should obviously have some sort of displacement.
Also, even if they are rough, they still have some sort of glossiness but it's more evenly distributed.
The base material (blue box) consists of a diffuse color bsdf to control the base color, a glossy Beckmann bsdf to control the glossy color. The roughness that should be slightly below 0.5, everything above gets too evenly distributed and everything below generates too sharp glossy areas. The mix shader should have a factor that puts more stress on the gloss (0.75).
The displacement material (yellow box) also generates some variation to the diffuse color. The Voronoi Cell Texture with a high scale is always handy when it comes to nice uneven distributed surfaces. It needs a Texture Coordinate node, since it gets generated per object and a Gamma Node to control the intensity.
Both the base material and the displacement material go into a mix shader. The gamma-corrected color value of the Voronoi Texture also gets connected to the displacement value of the Material Output node.