You can make the list of points a list of lists, each having a single point. ListPlot treats it as multiple plots, with each directive in a PlotStyle applying to a one-point list. The PlotStyle directives would be used cyclically for larger lists.
aList = {{1, 1}, {2, 3}, {4, 5}, {6, 7}};
colorList = {Black, Red, Blue, Yellow};
bList = {#} & /@ aList;
ListPlot[bList, PlotStyle -> colorList]

Or you can just construct your own list of points. With a color directive coming before each point in the list. You can use usual options to get the range, axes, labels as you want.
Graphics[Prepend[Riffle[colorList, Point /@ aList], PointSize[.02]],
Frame -> True]
